-
-
[原创]TTP106Demo最小保护UnPaCk
-
发表于:
2009-2-16 01:15
9104
-
【文章标题】: TTP106Demo最小保护UnPaCk
【文章作者】: eASYTt
【作者主页】: http://blog.sina.com.cn/77muyulong
【软件名称】: NOTEPAD.EXE
【下载地址】: 系统自带
【保护方式】: TTP106Demo最小保护
【编写语言】: Microsoft Visual C++ 7.0 Method2 [调试]
【使用工具】: OD LoadPE ImportREC
【作者声明】: 仅兴趣 无他...
--------------------------------------------------------------------------------
【详细过程】
于近日偶得TTP106Demo版 兴起 加NOTEPAD以脱之 因初涉此壳 故以最小保护为基 循序渐进...望有朝一日能一探TTP之内在...
TTP正式版与试用版之保护不可同日而语 撰写此文 仅作为抛砖引玉 ...
首先加壳我们需要的NOTEPAD 因为初次 力求最小难度 所以加之最小保护
曾听作者大侠一言曰
Memory map, 条目 38
地址=01000000
大小=00001000 (4096.)
属主=NOTEPAD_ 01000000 (自身)
区段=
包含=PE 文件头
类型=Imag 01001040
访问=RWE
初始访问=RWE
Memory map, 条目 39
地址=01001000
大小=000EA000 (958464.)
属主=NOTEPAD_ 01000000
区段=.TTP
包含=代码,资源
类型=Imag 01001040
访问=RWE
初始访问=RWE
Memory map, 条目 40
地址=010EB000
大小=00001000 (4096.)
属主=NOTEPAD_ 01000000
区段=.TTP
类型=Imag 01001040
访问=RWE
初始访问=RWE
Memory map, 条目 41
地址=010EC000
大小=00001000 (4096.)
属主=NOTEPAD_ 01000000
区段=.TTP
类型=Imag 01001040
访问=RWE
初始访问=RWE
Memory map, 条目 42
地址=010ED000
大小=00001000 (4096.)
属主=NOTEPAD_ 01000000
区段=.TTP
包含=输入表
类型=Imag 01001040
访问=RWE
初始访问=RWE
Memory map, 条目 43
地址=010EE000
大小=00013000 (77824.)
属主=NOTEPAD_ 01000000
区段=.TTP
包含=SFX
类型=Imag 01001040
访问=RWE
初始访问=RWE
01001000 . C86FDA77 dd ADVAPI32.RegQueryValueExW
01001004 . F06BDA77 dd ADVAPI32.RegCloseKey
01001008 . 7D8FDC77 dd ADVAPI32.RegCreateKeyW
0100100C . FDD5DC77 dd ADVAPI32.IsTextUnicode
01001010 . 8378DA77 dd ADVAPI32.RegQueryValueExA
01001014 . 1B76DA77 dd ADVAPI32.RegOpenKeyExA
01001018 . CCD7DA77 dd ADVAPI32.RegSetValueExW
IAT
RVA==01001000-01000000==1000
SIZE==01001344-01001000==344
0100337E /$ 8BFF mov edi, edi
01003380 |. 56 push esi
01003381 |. 57 push edi
01003382 |. 8B3D 80A40001 mov edi, dword ptr [100A480]
01003388 |. 33F6 xor esi, esi
0100338A |. 56 push esi ; /Arg1 => 00000000
0100338B |. E8 7FF3FFFF call 0100270F ; \NOTEPAD_.0100270F
01003390 |. 85C0 test eax, eax
01003392 |. 74 40 je short 010033D4
01003394 |. 56 push esi ; /hTemplateFile
01003395 |. 68 80000000 push 80 ; |Attributes = NORMAL
0100339A |. 6A 03 push 3 ; |Mode = OPEN_EXISTING
0100339C |. 56 push esi ; |pSecurity
0100339D |. 6A 03 push 3 ; |ShareMode = FILE_SHARE_READ|FILE_SHARE_WRITE
0100339F |. 68 00000080 push 80000000 ; |Access = GENERIC_READ
010033A4 |. BE 28960001 mov esi, 01009628 ; |
010033A9 |. 56 push esi ; |FileName => ""
010033AA |. FF15 04110001 call dword ptr [1001104] ; \CreateFileW
010033B0 |. 83F8 FF cmp eax, -1
010033B3 |. A3 80A40001 mov dword ptr [100A480], eax
010033B8 |. 75 08 jnz short 010033C2
010033BA |. 56 push esi ; /Arg1 => 01009628
010033BB |. E8 601A0000 call 01004E20 ; \NOTEPAD_.01004E20
010033C0 |. EB 0C jmp short 010033CE
010033C2 |> 6A FF push -1
010033C4 |. 56 push esi
010033C5 |. E8 AF1D0000 call 01005179
010033CA |. 85C0 test eax, eax
010033CC |. 75 06 jnz short 010033D4
010033CE |> 893D 80A40001 mov dword ptr [100A480], edi
010033D4 |> 5F pop edi
010033D5 |. 5E pop esi
010033D6 \. C3 retn
010011E0 . 25FCD177 dd USER32.CreateWindowExW
010011E4 . D5EED177 dd USER32.GetDesktopWindow
[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!