[FlareOn1]Shellolololol

文章详细描述了使用IDA分析32位无壳程序的过程,从忽略系统函数,到在sub_401000函数中发现程序崩溃的原因,通过动态调试追踪到异或操作并找到关键字符串andsoitbegins。最终在代码段中找到flag,揭示了程序可能包含嵌入的汇编代码。
摘要由CSDN通过智能技术生成

32位无壳程序,ida分析这个文件

 sub_4025D1没有重要的东西

cintrolfp里面是 粉红色的,系统函数,不用看

 

_set_app_type 以下划线开头的函数,也是系统函数,不用看

跟进sub_401000函数,发现报错,无法跟进

 

动态调试找原因

 

F8一直步过,到call sub_401000函数发现程序崩溃

 

 

来到sub_401000函数汇编处,一直往下翻,看到call eax

就是这个原因造成了程序崩溃,在这打断点进行动态调试

 F7步入,疯狂F8,发现下面数据一直在进行异或改变

 打断点,直接跳到下一个操作,F9跟

发现下面都异或循环完了,当然了你写脚本进行异或也行

 可以看到 and so it begins 当字符串出现在代码段里面,说明不是高级语言编译出来的,是在高级语言中嵌入了汇编代码

.text段 是代码段
.data段 是数据段
.rdata段 是常量段

接着到下面

 

 

跳过循环,get ready to get nop,ed so damn hard

右键A

 

 一直F8 F4来到程序末尾

 往上翻看到flag

 

 

 

such.5h311010101@flare-on.comhnt
flag{such.5h311010101@flare-on.com}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值