a1ra1rhthm

Ollydbg解决SMC--scu401ctf2021-re2-pixpix

Airhthm·2024-03-25 15:58·28 次阅读

Ollydbg解决SMC--scu401ctf2021-re2-pixpix

OllyDbg的简单使用-SMC#

以scu×401ctf2021-re2-pixpix为例

1.先查壳,无壳,进入IDA进行分析

2.进入main函数,并没有特殊的字符串进行提示,exe文件也没有提示需要进行输入。

继续分析,GetPixel函数提取了对应坐标的像素值,然后在if-dowhile循环中进行了异或操作,跟进字节查看,大概猜测是对某个函数进行了smc操作

3.使用od进行分析可以更清楚查看数据的变化(二编:博主进行了两次OD的运行,题目存在段首地址偏移,所以0xA83384认准0x3384即可

​ a.进入od界面,使用中文搜索引擎定位到函数入口

​ b.F9启动调试,这里有个关键地址0xA83384-A83386,存放了在ida分析中的三个字节{0x34, 0x30, 0x31}

​ c.但是汇编指令 mov ds[0xA83385],c1将地址存放的值修改为0了

​ d.先动态调试找到if判断(如果对汇编不熟悉的话。。

定位到关键操作异或,汇编指令mov a1,ds[ecx+0xA83384]给a1进行赋值,并且可以猜测0xA81050存放的就是待异或的flag

但是0xA83384-0xA83386的值都被修改过

​ e.重新启动程序进行调试,在地址内的值被修改之后再把值修改回去,这里三次地址都需要修改

​ f.然后直接在循环之后F2下断点,就可以看到smc被解码了,flag被打印出来

posted @   天街如水  阅读(28)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
· 零经验选手,Compose 一天开发一款小游戏!
点击右上角即可分享
微信分享提示
目录