上次发过一个主题铁。链接懒得找了,大意就是这个广告过滤软件的启动弹出啥的,懒得每次都点击,一个一个的全都超干掉净爽了~~
后来发现这款软件每次 生成一个 update文件夹,校验你的文件是否被改动过。
高手们给我出过主意要设成只读啥的属性,感觉好像效果不太好,再有我还是打算跟到那个 生成 XXXXX.zip时的写入的CALL 提高下水平。
经过再一次的蛋痛式的折腾和尝试吧,终于找到了下面的地方
===============================
生成update文件夹,因此搜索下面的东东
0138C0CE . BF 58294901 mov edi, 888.01492958 ;update 应该是这里,得到此处地址,然后用创建文件函数拦截,生成
01392078 FFD0 call eax ; 最后得到这个地方生成了 update文件夹!!!(但这样状态就成了离线,过滤广告功能失去)也就是说得F7
02FC51F4 E8 CF000000 call adsData.02FC52C8 ; F7后跟到此处发现是这里生成的update
====================================================
02F152EE |. E8 79720000 call adsData.02F1C56C ; 同样也是生成update 继续F7 F9
02F1CA98 |. E8 8395FFFF call adsData.02F16020 ; 好像最后是这里啦 继续F7 F9
02F1605F |. B9 AC60F102 mov ecx, adsData.02F160AC ; update\
02F752FE |. E8 6D22F2FF call <jmp.&kernel32.CreateEventA> ; \CreateEventA
02F77E8A |. 50 push eax ; |FileName = "D:\网络相关\ADSafe3\最新ADSafe\update\"
02F77E8B |. E8 E8F6F1FF call <jmp.&kernel32.CreateFileA> ; \CreateFileA
0118A934 |. 50 push eax ; |Path = "D:\网络相关\ADSafe3\最新ADSafe\update" 同样NOP掉,状态变为离线!
0118A935 |. E8 2ECCFFFF call <jmp.&kernel32.CreateDirectoryA> ; \CreateDirectoryA
====================================
Breakpoints
地址 模块 激活 反汇编 注释
001F1F79 adsLog 已禁止 call <jmp.&kernel32.OutputDebugSt
001F2077 adsLog 已禁止 call adsLog.001EFDD0
001F207E adsLog 已禁止 je XadsLog.001F20CA
001F20B4 adsLog 已禁止 call <jmp.&kernel32.WriteFile>
001F20B9 adsLog 已禁止 mov edx, ebx
001F20BE adsLog 已禁止 call adsLog.001EFDD0
012BC0CE 888 已禁止 mov edi, 888.013C2958 update 应该是这里
012C2078 888 已禁止 call eax F7 生成update
02E9A283 adsData 始终 jnz XadsData.02E9A2AE
02E9A2AE adsData 始终 xor eax, eax
02EADEB1 adsData 始终 call adsData.02E94E38
02EADEBE adsData 始终 mov eax, esi
02F751F4 adsData 已禁止 call adsData.02F752C8 这句里,生成的update
02F752EE adsData 始终 call adsData.02F7C56C 同样也是生成update 继续F7
02F752FE adsData 始终 call <jmp.&kernel32.CreateEventA>
02F7537E adsData 始终 call adsData.02F79B2C
02F7605F adsData 始终 mov ecx, adsData.02F760AC update\
02F76076 adsData 始终 call adsData.02E9A1E0 好像最后 就是这里压入的
02F77D96 adsData 始终 push ebx
02F77E8B adsData 始终 call <jmp.&kernel32.CreateFileA>
02F7CA98 adsData 始终 call adsData.02F76020 好像最后是这里啦
02FD533B |. 6A FF push -0x1 ; /Timeout = INFINITE
02FD533D |. 8B45 FC mov eax, [local.1] ; |
02FD5340 |. 50 push eax ; |hObject = 000001EC (window)
02FD5341 |. E8 EA24F2FF call <jmp.&kernel32.WaitForSingleObje>; \WaitForSingleObject
adsData.dll.zip 生成的还是0字节的
0015B08C |> \68 B8282600 push 888.002628B8 ; /PostDataToServer
0015B091 |. 50 push eax ; |hModule = NULL
0015B092 |. FF15 6CA62500 call dword ptr ds:[<&KERNEL32.GetProc>; \GetProcAddress
0015B098 |. A3 9C992A00 mov dword ptr ds:[0x2A999C], eax
0015B09D |. 3BC3 cmp eax, ebx
0015B09F |. 74 29 je X888.0015B0CA
0015B0A1 |. 8B8C24 800000>mov ecx, dword ptr ss:[esp+0x80]
0015B0A8 |. 51 push ecx
0015B0A9 |. 55 push ebp
0015B0AA |. 68 12010200 push 0x20112
0015B0AF |. FFD0 call eax
=======================================
Breakpoints
地址 模块 激活 反汇编 注释
00281F79 adsLog 始终 call <jmp.&kernel32.OutputDebugSt
00282077 adsLog 始终 call adsLog.0027FDD0
0028207E adsLog 始终 je XadsLog.002820CA
002820B4 adsLog 始终 call <jmp.&kernel32.WriteFile>
002820B9 adsLog 始终 mov edx, ebx
002820BE adsLog 始终 call adsLog.0027FDD0
00A9B003 888 始终 mov edi, 888.00BA28AC adsData.dll
00A9BE1C 888 始终 mov edi, 888.00BA28AC adsData.dll
00A9BF93 888 始终 mov edi, 888.00BA28AC adsData.dll
00A9C0CE 888 始终 mov edi, 888.00BA2958 update
00AA202A 888 始终 push 888.00BA28AC adsData.dll
00AA2078 888 始终 call eax F7 生成update
02DA9FA8 adsData 始终 push ebx
02DAA29F adsData 始终 call adsData.02DAA928 =====这里有情况!
02DBDEAA adsData 始终 call adsData.02DA3ECC
02DBDEB1 adsData 始终 call adsData.02DA4E38
02DBDEBE adsData 始终 mov eax, esi
02E851F4 adsData 始终 call adsData.02E852C8 这句里,生成的update
02E852EE adsData 始终 call adsData.02E8C56C 同样也是生成update 继续F7
02E852FE adsData 始终 call <jmp.&kernel32.CreateEventA>
02E8537E adsData 始终 call adsData.02E89B2C
02E86076 adsData 始终 call adsData.02DAA1E0 好像最后 就是这里压入的
02E87D96 adsData 始终 push ebx
02E87E8B adsData 始终 call <jmp.&kernel32.CreateFileA>
02E8CA98 adsData 始终 call adsData.02E86020 好像最后是这里啦
生成update的那些地方,可以NOP掉,但右下的状态栏上 就出显{离线状态},并且更新规则失败! 所以,只能在生成的文件上入手,而不能在生成文件夹上入手!
上边的修改版,只会生成一个
\ADSafe\update\adsData.dll.zip 0字节文件[貌似同级目录下的其他文件再也不会繁殖了]虽然不太完美,但总算又提高了点水平,俺是菜鸟选手,就放到水区吧,给各位折腾帝们玩玩
=======================
下载压缩包的同学,最好先下载一个原版的,因为以下目录中存在规则文件
C:\Users\Administrator\AppData\Roaming\ADSafe3
没有使用就会没效果~~~~
(我在WIN7 折腾出来的~~)
↓↓↓点击此处,送给大家回去玩玩↓↓↓←←←
[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)