curl命令行工具的用法
curl命令行工具的用法curl简介curl是一个开源的用于数据传输的命令行工具与库,主要用来发出网络请求,然和得到和提取数据,最后显示在“标准输出”上。它使用URL语法格式,支持很多种协议,如 DICT, FILE, FTP, FTPS, GOPHER, HTTP, HTTPS 等等。curl库提供了很多功能,可以用来进行HTTP/HTTPS请求,上传/下载文件等,并且它还支持Cookie、认证、代理、限速等。
curl的使用访问URLcurl命令后面直接加上要访问的网址,就可以看到网页的源码 ,它不加任何参数时发出的请求是GET请求。
如果想将这个网页保存下来,可以使用’-o’参数,指定
2020-03-13
tool
HTTP学习笔记
最近开始学习了,为了找回学习状态,复习下计网,准备将几个常用的重要的协议都复习一遍。
HTTP学习笔记HTTP简介HTTP是 Hypertext Transfer Protocol 的缩写,也就是超文本传输协议,根据RFC定义,HTTP是分布式协作超媒体信息系统的应用级协议。简单的说就是位于应用层的协议,用于从www服务器传输超文本到本地浏览器。它是一种通用的,无状态的协议。
HTTP的特点
HTTP是无连接的
它每次连接只能处理一个请求,服务端处理完客户端的请求,并受到客户端的回应后,就会断开连接
HTTP是媒体独立的
只要服务器和客户端知道如何处理数据内容,任何类型的数据都可以通过HTT
2020-03-11
HTTP
CVE-2018-8372
跟着大佬博客学习Chakra
JIT优化eliminate duplicate checktest1.js
var arr = [1.1,2.2];
function jit()
{
arr[1] = 2.2;
arr[2] = 1.1;
}
run:
.\ch.exe .\test1.js -bgjit- -mic -dump:Globopt -OutputFile:output.txt
在第一次对arr数组操作时,会检查arr的类型,而在第二次对arr数组操作时,就不需要BailOnNotArray的检查了,这是JS引擎对冗余检查的优化,但是当其中可能存在带回调的操
ChakraCore基础知识笔记
ChakraCore简介结构:
基本执行流程:当一个函数第一次执行时,ChakraCore 的语法解析器(parser)产生一个抽象语法树(AST)来代表这个函数的源码,随后AST 会被翻译为字节码(bytecode),这些字节码将由ChakraCore 解释器直接执行。在解释执行期间解释器会收集一些程序信息,如类型信息、调用次数,这些信息会被用来帮助JIT 编译器生成高度优化的机器码。当ChakraCore 在解释器中发现一个函数或者循环体(loop-body)被多次执行时,会将其送入后台JIT 编译队列为这个函数生成优化的代码。一旦这些优化代码准备就绪,ChakraCore 就会替换函数和
2019-05-28
JS-Engine
ChakraCore
JavaScriptCore的基础知识
最近在学习JSC的相关知识,这里写篇博客简单记录一下。
JavaScriptCore简介JavaScriptCore是一个JS 引擎,是专门负责处理javascript代码的虚拟机,简写为JSC,一般会附在浏览器中。
它是一个C++实现的开源项目,使用Apple提供的JavaScriptCore框架。我们可以在Objective-C或者基于C的程序中执行Javascript代码,也可以向JavaScript环境中插入一些自定义的对象。
JavaScript 引擎在解析源码后将其转换为抽象语法树(AST),基于 AST,解释器便可以开始工作并产生字节码,此时引擎正在执行 JavaScript 代
2019-05-13
JS-Engine
js_exploit
CVE-2016-4622复现
基本环境搭建编译JSC历时差不多两天的失败,网上的编译教程基本都是很久以前的,跟着他们做会报很多错,最后编译成功的jsc也运行不了,一运行就会crash….. 但是,我在github上找到了一个大佬写的教程,是可以成功的,并且他提供了编译好的 jsc以及 对应的动态链接库。
大佬github地址
环境: Ubuntu18.10
JSC编译
# sudo apt install libicu-dev python ruby bison flex cmake build-essential ninja-build git gperf
$ git clone git://git.webkit.org
2019-05-11
CVE
js_exploit
堆利用的一些总结
最近闲来无事,就把学过的堆的利用总结一下。这里只是总结一下利用的思路,基础知识就不讲了,可能会贴上些glibc的源码。
一些学习网站CTF-WIKI入门网站
CTF-ALL-IN-ONE对堆的利用的原理讲的很清楚
Heap Exploitation国外作者写的,感觉还行
source code of malloc.c在线阅读glibc的源码,很方便
UAFUAF也就是use after free,这种情况的产生是因为free掉了chunk后没有将它的指针置为空。所以在被free掉后还可以被使用。
用处:
泄露信息,比如说泄露libc的地址
与fastbins attack结合,分配到包含想