实验吧 此处无声 writeup

无聊又刷了一下实验吧,把很久之前没做出来的此处无声做出来了

首先用ida打开,明显是有壳的,用侦壳工具查了一波,没查出什么壳。

于是尝试手动脱一波,但是能力不足,还是没脱成功,但是用GetWindowText等函数断点断了一波,断在了一个比较明显的处理函数上面,于是直接把这个函数开始当oep直接dump下来。

dump下来之后,用ida打开,看了下

实验吧 此处无声 writeup_第1张图片

比较重要的就是那个memcmp那里,看起来就是比较结果的

动态调试看了下,发现v21是随着输入的用户名而改变的,看了下别人的wp,这里v21应该是md5(name)

但是其实这里不知道也能做出来, 然后看下sub_4012f0 ,发现是把输入的注册码用rc6加密了一波,这里rc6的参数中的r=20 ,这里是看密钥的长度算的 (这里顺便吐槽一波ida,f5有些地方没反编译出来,要看汇编才看出来

sub_4011f0 看了下应该是生成密钥的,但是太复杂懒得看,直接动态调试把生成的key扒下来就行

sub_4018C0是检测输入的字符是否符合格式,sub_4018c0是将输入的字符由32位字符转换为16位的hex

现在我们有了key和加密后的data,到github上面clone一个rc6的项目,魔改下代码就能解出flag

flag : F6ADDD6C46EBB644BDA265366E8CA675

你可能感兴趣的:(二进制-逆向工程)