文中详细介绍本人学习培训pwn全过程中的一些小结,包含常见方式,在网上众多实例教程尽管有出示详细的exp,但仍未表述exp为什么是那样的,例如shellcode写到哪里来到(这关联到自动跳转详细地址),ROP链怎么选择的。针对pwn,自己也是初学者,在其中有小结不正确的,热烈欢迎诸位巨头纠正。
原文中采用的测试代码都是在:
0×02 PWN常见的基础知识
更先取得一个PWN程序流程,能够先应用file指令,分辨是32位系统還是64位。
能够应用objdump载入plt和got表,plt和got在网上都是有详尽的详细介绍,在此不会再过多阐释。
这里要提一下数据信息在存储器中的储放次序,这一在恢复出厂设置字符串数组系统漏洞时要分外留意,尤其是64位,32位系统的顺序是eax->edx->ecx->ebx,64位的顺序是rdi->rsi->rdx->rcx->r8->r9。
刚开始学习的情况下,本人常常把pop和push常常搞反,因而在这里把这两个命令的详细介绍说一下:push[reg]/[num]是将reg存储器中的值或者数据num压进堆栈中,而pop[reg]是将堆栈栈顶的值弹出来到reg存储器中,并将这一值从堆栈中删除。
有时要查询存储器中的值,能够采用以下指令:
print $esp:复印esp的值
x/10x $esp:复印出10个从esp逐渐的值
x/10x $esp-4:复印出10个从偏位8开始的值
x/10gx $esp:以64位文件格式复印
下边先应用hello试一试,更先应用IDA的F5秘笈能够见到內部有一个getshell函数,能够立即自动跳转到该函数getshell。
应用专用工具pade能够很便捷的测算出偏移,pattern create 100。
pattern offset 0×41284141,测算出偏移为22。
查询汇编代码,获得getshell的详细地址,也就是要自动跳转的详细地址。
最终获得详细的exp以下。
0×03 shellcode
生成方式
1、在shellcode数据库查询网址找一个shellcode,
2、应用kali的msfvenon形成shellcode,如指令msfvenon -p linux/x86/exec CMD=/bin/sh -f python
3、应用pwntools内置的函数如a *** (shellcraft.sh())
但有时不清楚shellcode写到哪里来到,在回应这个问题前,要提一下bss段、data段、text段、堆(heap)、栈(stack)的一些差别。
1、bss段(bss segment)一般就是指用于存放程序中未复位的静态变量的一块内存地区,bss段归属于静态数据内存分派。
2、data段:数据信息段(data segment)一般就是指用于存放程序中已复位的静态变量的一块内存地区,数据信息段归属于静态数据内存分派。
3、text段:代码段(code segment/text segment)一般就是指用于存放程序实行编码的一块内存地区。这些地区的尺寸在程序执行前就早已明确,而且内存地区一般归属于写保护(一些构架也容许代码段为可写,即容许改动程序流程)。在代码段中,也是有很有可能包括一些写保护的参量自变量,比如字符串常量等。
4、堆(heap):堆是用以储放过程运作中被动态分配的内存段,它的尺寸并不固定不动,可动态性扩大或减缩。当过程调用malloc等函数分派内存时,新分派的内存就被动态加上到堆上(堆被扩大);当运用free等函数释放出来内存时,被释放出来的内存从堆中被去除(堆被减缩)。
5、栈(stack):栈又被称为堆栈,是客户存放程序临时性建立的局部变量,换句话说大家函数括弧“{}”中界定的自变量(但不包括static申明的自变量,static代表着在数据信息段中储放自变量)。除此之外,在函数被调用时,其主要参数也会被压进进行调用的过程栈中,而且待到调用完毕后,函数的返回值也会被储放回栈中。因为栈的先进先出法(FIFO)特性,因此栈尤其便捷用于储存/修复调用当场。
下边以ret2shellcode,一样应用IDA看下编码,很显著,shellcode载入到bss段。
应用指令readelf -S ret2shellcode查询获得bss段详细地址为0x0804a040。
一、电脑上会出現屏幕闪烁很普遍的一个缘故就還是驱动器出了难题,当显卡驱动程序或是驱动器文档被破环后都是会出現屏幕闪烁的状况,这时候你能先检查一下显卡驱动程序,重新安装一个官网认证的驱动器。...
ps污渍修补画笔工具是用于修补素材图片上较为小的污渍,坐落于左边菜单栏第八个,键盘快捷键为J。开启ps,导进素材图片,应用键盘快捷键J,选定污渍修补画笔工具,在上边特性栏挑选污渍修补画笔工具的尺寸,点...
中新网东京12月3日电 据日本媒体报道,日本大阪府政府3日召开新冠病毒对策总部会议,会议决定在大阪府内发出新冠疫情红色预警,提醒民众当前疫情已达非常严峻状态。 大阪府知事吉村洋文在会议上表示...
8、sunshine (新呈现)咱们能够经过地舆区域,来对这一年中重出江湖的歹意安排进行区分,排名榜首的是东南亚区域,其次是中东。 日志类型 cd aflsmart有哪些黑客接单交易,找黑客帮忙找人要...
之前育碧正式公布了《刺客信条》新作《刺客信条:英灵殿》,该作故事发生在英格兰土地上,那神秘遗迹“巨石阵”是否会在游戏中出现呢?对此有玩家专门询问了《刺客信条:英灵殿》创意总监Ashraf Ismail...
??现在;SPA已经不是女性们的垄断;也越来越多的高端SPA中心为男性开展了各种SPA项目;甚至连绅士馆都开展了;越来越多的时尚男性在各种SPA项目中放松、自我调节、时尚生活方式 添加客服微...