吾爱破解 - LCG - LSG |安卓破解|病毒分析|www.52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

搜索
查看: 1925|回复: 8
上一主题 下一主题

[CTF] 2020网鼎杯白虎组re 恶龙 wp

  [复制链接]
跳转到指定楼层
楼主
hackcat 发表于 2020-5-18 15:22 回帖奖励
本帖最后由 hackcat 于 2020-5-18 15:30 编辑

此次参加网鼎杯白虎组,虽然被虐的很惨,但仍然收获颇多,对于恶龙一题,作为逆向入门题目,还是非常不错的,记录一下。

题目链接: https://pan.baidu.com/s/1Qsgyu1dUzJTymm5yTKQ9SQ 提取码: 1djs

首先在linux子系统中使用file hero 命令查看文件信息
[Bash shell] 纯文本查看 复制代码
hero: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.32, BuildID[sha1]=5d43a21f3afe482b78a41a29648a070d01c0c2d9, not stripped


确定是一个64位的执行程序。那么先使用IDA简单分析下。





通过执行程序和分析逆向伪代码,基本上确定程序是一个小游戏,给出三个选项。1是打小怪赚取金币,2是打boss,3是去商店使用金币兑换战斗力。





从打BOSS的逻辑看出来,有3个BOSS,每一个的战斗力分别有1000000,3000000,5000000 ,题目提示不能patch,也就是不能修改怪的战斗力值,估计跟最后的flag有关。那么只能通过修改elf来完成。





[url=]MD[/url]





切换到汇编,分别在0x4015f9、0x40165c、0x4016bc处下断点。程序运行到那里修改eax的值即可。



祭出gdb  

[Bash shell] 纯文本查看 复制代码
gdb hero

b *0x4015f9
b *0x40165c
b *0x4016bc


按r执行程序。





选择2









断点生效后,输入

set $eax=0xf4244<br>c
为什么是0xf4244?反正比0xf4240要大就可以了。





第一头恶龙被打败了,那么继续打第二头。





第二头打败了,提示解密另一部分flag,打第三头





flag出来啦!

免费评分

参与人数 4威望 +1 吾爱币 +22 热心值 +4 收起 理由
Hmily + 1 + 20 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
qws1855 + 1 谢谢@Thanks!
xu15219367909 + 1 + 1 用心讨论,共获提升!
smile5 + 1 + 1 谢谢@Thanks!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

沙发
bingbinggo 发表于 2020-5-18 15:36
学习了,感谢楼主
3#
狂狼 发表于 2020-5-18 15:56
4#
zsbot 发表于 2020-5-18 16:01
5#
haol666 发表于 2020-5-18 17:34
膜拜大神,学习一下
6#
从那以后的你 发表于 2020-5-18 20:41
学习了学习了
7#
cptw 发表于 2020-5-19 13:07

学习了,感谢楼主
8#
幼儿园小班 发表于 2020-5-19 21:13
学习了 感谢楼主
9#
15135094220 发表于 2020-5-19 23:56
大神呀!学习共勉
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则 警告:本版块禁止灌水或回复与主题无关内容,违者重罚!