首页
社区
课程
招聘
[原创]第二题
2018-12-4 08:37 2152

[原创]第二题

2018-12-4 08:37
2152
逻辑比较清楚,静态链接了,需要重命名下库函数,主逻辑如下:


对于输入进行了变化,异或0x1f,,如下:

此处检查输入的是通过钩子来进行了,没有找到直接的引用,通过对全局变量input_buff进行xref,可以定位到检查的逻辑如下。

与结果进行对比,如下:

其中结果是invalid argument进行了变换,如下:

最终解密脚本如下:
a_string = "invalid argument"
a_string = a_string[:7] + "#" + a_string[8:]

def crypto(str_info, v):
	str_info_v = [chr(ord(c)^v) for c in str_info]
	return "".join(str_info_v)

final_str = "invalid argument"
mid_str = crypto(final_str, 0x1c)

orign_str = crypto(mid_str, 0x1f)
print orign_str

orign_str = orign_str[:7] + "A" + orign_str[8:]
print orign_str

结果:


[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
点赞1
打赏
分享
最新回复 (0)
游客
登录 | 注册 方可回帖
返回