本人PWN入行普遍方式小结

访客3年前黑客资讯573

文中详细介绍本人学习培训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。

相关文章

自主创业成功的关键是什么?天时地利人和!

愈来愈多的人挑选了自己创业这条道路,也许是由于理想,也许是由于生活。可是自己创业是有风险性的,大家怎样尽量的防范风险,获得成功呢?这要从天时地利谈起。众所众所周知,天时地利基本上是全部事儿取得成功的重...

推荐几个外国直播APP,有岛国nv忧直播

谢谢论坛网友“Shallow**” 分享内容,更多精彩接见本站论坛 这次推荐的直播app对照有全球性子,不全是海内主播。 内容并不一定就是黄播,主要是提供一个多国家全球直播旁观。 1.全球直播平...

找老伴游戏-【鲜于访琴】

“找老伴游戏-【鲜于访琴】” 微博地址:2914邮箱:v21**e*g@*.com全国高端空姐资源预约信息所在地:南京赫连岩个人写真及生活照:愿意前往的地区范围:周边城市 /9344联系...

支付宝45元充50元话费!

这个流动本来是OPPO钱包APP里的,只不过有人把链接提出来了,每个人都可以免费领取5米代金券(满49米可用),我们可以用来充值话费,刚开抵扣5米现金!横竖话费总要充的,这个跟赚5米现金一样,照样挺划...

肖杰齐舞黑客帝国(肖杰齐舞黑客帝国在线观看)

肖杰齐舞黑客帝国(肖杰齐舞黑客帝国在线观看)

苏恋雅齐舞环节遭抢镜,这是被淘汰的原因吗? 我觉得弦子被淘汰的真正原因是因为人气不高,而且资源不太好也是一个非常重要的原因,其实娱乐圈本身就是一个非常现实的地方,如果你也有人气、有资源和后台那么就可以...

黑客如何找取手机相册(网络黑客怎么找取别人的手机信息)

一、黑客如何盗取手机相册(网络黑客怎么盗取别人的手机信息)方法总结 1、黑客如何盗取手机相册想要这样的话,必须要有像你们申请手机号的那样,用链接器将新的手机卡与电脑链接好,并且你还要入侵到它们的服务...