闭关学pwn第四天——掌握pwn中需要了解的汇编指令(对第一天栈做相应补充)

本文深入探讨PWN技术中关键的汇编指令,包括子程序、算术指令、通用数据传送指令和比较指令,解析栈的结构与工作原理,通过实例讲解push、pop、call等操作,适合PWN初学者快速掌握基础知识。
补充

这篇最后编辑时间是19年12月。。我居然鸽子了这么久没发!!!
看了下自己大致讲的很详细了,文章后面应该想着自己手绘图然后再多来几个函数调试,不过既然鸽子了就炖汤吧,这篇就不补上了。
准备在闭关学pwn第五天把第三天和第四天两篇文章的内容结合起来,搞一道题来练手什么的[滑稽]

前言

pwn现在卡死在ret2libc,知道是返回,却不懂怎么返回,也不知道怎么搞到shellcode,估计是没有相应基础,所以这回补一波pwn中需要掌握的汇编指令。

———————————————————————————————————

一 、开天辟地

没错我就是来开天辟地的。
首先……
move push add 这些基础指令肯定要看看的吖
不过pwn里好像需要用到的是这些指令:

子程序
算术指令
通用数据传送指令
比较指令

只用看这四个,剩下的好像pwn用不上

栈的结构在闭关学pwn第一天了解过
pwn里最常见的ebp和esp肯定要了解
当时只是学到了栈由高地址向低地址生长,却从没想过为什么要这样
这篇文章里有讲到
https://www.jianshu.com/p/899f34722d57

———————————————————————————————————

二 、女娲补天

开天辟地完了就该女娲补天了
刚才都是理论,这里实际操作一下
gcc编译配合gdb调试还不大熟练
所以就花点功夫找了个在线查看汇编代码的网站
先简单练练手来验证之前的汇编指令

写一段最最最最最简单的代码吧

int main()
{
   
   
    int a,b
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值