结构有点复杂,是http请求程序,分析了下,核心是检查请求头中是否有useragent和back,useragent中存放的是密码,sub_400FAF是将本地存放的字符串加密,实际密码是加密后的字符串与分别异或,back中是执行语句。
学到了一点:本地运行http,由于未开启pie,并且加密算法未用到我们的输入,直接在该处下断点,然后fillder编辑http请求也即头中添加back属性,发送后会在断点处断下,就可查看加密后的字符串。
得到后异或:
for i in range(0,len(q)):
s+=chr(i^ord(q[i]))
得到密码。直接编辑http请求: