一、题目背景
对抗静态分析的利器:栈字符串。程序中不存在全局字符串区(.rdata),所有敏感信息(如成功提示、对比密钥)都在运行时通过 MOV 指令逐字节压入栈中临时拼凑。
-
难度: ⭐⭐⭐(中级)
-
适合人群: 习惯按
Shift+F12找字符串一招鲜吃遍天的学员。 -
训练重点:
-
栈字符串构建过程的反汇编识别。
-
学会在关键点下内存访问断点。
-
利用脚本或动态分析提取动态数据。
-
二、程序说明
-
平台: Win32 x86
-
类型: 控制台程序
-
是否加壳: 无壳(字符串栈混淆)
-
目标: 在内存中截获拼凑出的真实密码(长度是4位)。
- 正确提示为:Success!
三、解题提示
-
静态分析完全看不到 “Success” 或真正的密码。
-
在汇编中看到连续的往
[EBP-xx]或[ESP+xx]赋值常数的操作,这就是在拼字符串。 -
直接在比较函数(如代码里的
memcmp替代逻辑)下断,观察内存窗口。
下载
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END









暂无评论内容