type
status
date
slug
summary
tags
category
icon
password
😀
REVERSE
  • snack
  • HardSignin
  • BEDTEA
附件在此,师傅们自取

📝 REVERSE

Snake

python逆向
notion image
python3.8 直接选择在线pyc编译网站
很明显是RC4加密,只需要找到key就行,key.pyc在PYZ-00.pyz_extracted里面也拖到在线编译网站
exp

HardSignin

notion image
改特征值,UPX脱壳
notion image
TlsCallback_0
notion image
TlsCallback0是SMC自修改
notion image
TlsCallback_1
notion image
顺便教大家一下这个花指令怎么恢复的最好
首先先不要去掉jz 和 jnz
我们先在下面标红的call指令那里按d
notion image
然后在我光标的那里按c恢复
notion image
然后恢复成这样,之后再把 hlt指令上面的全部nop掉,jz上面的不用
notion image
然后我们就可以按p生成函数了
把base64的table表魔改了
notion image
TlsCallback_2
notion image
byte_4045B0,byte_4045A0这两个变量,后面会查到
idapython脚本
还原main函数
notion image
notion image
换表base64解密之后得到flag
flag{C0ngr@tulat1on!Y0u_Re_suCces3fu1Ly_Signln!}

BEDTEA

notion image
notion image
notion image
这个题里面没有反调试,但是有一个检测是否被调试
这是一个三元运算符
notion image
一开始我们并不知道这个作用是什么,那么我们就看一下哪里引用了它发现它在tea加密里面有被用到,经过调试可知明文为24个字节,已经三次tea加密里面的密钥都不相等
notion image
但是这个密钥生成的过程看着很繁琐,为了节约时间,我们要下断点得到密钥
notion image
每次断在这里,然后查看byte_408040的内存
这个其实就是算误差的但是程序运行和我们调试的时候误差是不一样的,在调试的时候我们走的是else,但是正常程序运行应该是走if那里,
然后我们回到一开始检测调试器那里,调试的时候那里的值是1,在里面改为3,然后就会生成不同的密钥exp
💡
有关复现上的问题,欢迎您在底部评论区留言,一起交流~
DownUnderCTF2024复现学习及思考C/C++逆向学习(一)
Loading...
5m10v3
5m10v3
目前主攻方向为Re
Announcement
🎉5m10v3のBlog已经上线啦🎉
-- 感谢各位师傅的支持 ---
👏欢迎师傅们前来交流👏