好友
阅读权限10
听众
最后登录1970-1-1
|
最新很闲,每天在学习学习学习,看到学习群里管理员踢了一位人,就问他发生神魔事了,便有了这次的逆向博文
这些是受害者所属
然后我决定帮他一把,因为之前有同样的经历,很是同情
什么!!没有壳,当时我觉得这件事就已经解决了
打开IDA PRO 7.6SP1就开始捣鼓
因为没加壳决定先从字符串入手(更简单就是在dllmain直接进入线程函数)
[C] 纯文本查看 复制代码 BOOL __stdcall DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved)
{
if ( fdwReason == 1 )
CreateThread(0i64, 0i64, StartAddress, hinstDLL, 0, 0i64);
return 1;
}
哦......发现了不少东西
一些很长串的字符串,可能是用于连接服务器的识别码吧,比如软件id什么的
下面就有username和password,果然使用X交叉引用至函数内,这个菜单使用sudobase开发,dllmain进入后就创建线程,这个验证就在线程函数内
经测试,第一道验证就是hwd_loadLoginWindow,它是一个外部函数,来自于同时注入进GTA5的hwd.dll,可能是这个网络验证的特色
它会以GTA5的进程弹出一个窗口让用户登录账户,如果登录不上就会卡在这里,果断nop掉
继续向下,发现调用了hwd_getUserInfo去获取token
这里进行了token的判断并把bool存储在了v31
继续向下,发现了exit(1);应该是token匹配不上就直接退出进程,果断jmp
本以为这样就没了,但是向下一看,哇奥,心跳
[C] 纯文本查看 复制代码 while ( byte_180094D50 )
{
time64(Time);
if ( Time[0] - v58[0] > 180 )
{
hwd_heartbeat(180i64, &unk_180032A20);
time64(v58);
}
}
也就是每过180毫秒调用一次,具体做了什么不知道,在另一个dll里
直接jmp
注入游戏,需要同时注入两个,一个是网络验证提供的内容,一个是菜单的内容
好的,轻松秒杀~~
|
免费评分
-
查看全部评分
|
发帖前要善用【论坛搜索】功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。 |
|
|
|
|