VB的OEP特征
来源:互联网 发布:贵阳大数据培训机构 编辑:程序博客网 时间:2024/05/24 02:36
前言
看到一个小工具, 用来查一个指定壳.
主要是size很小, 只有9KB.
想逆向练习下, 这么小, 一定是没壳的, 拖进IDA, 一个函数都没有, 才知道加了壳.
用PEID, Die,RDG查壳, 都指出是UPX.
载入OD, ESP定律, F9后, 直接停在jmp xx, 再F8, 到了OEP.
记录
00401074 68 F41B4000 push 00401BF400401079 E8 EEFFFFFF call 0040106C ; jmp to MSVBVM50.ThunRTMain
VB的OEP特征:
一个push + 一个call
call是MSVBVM50.ThunRTMain
push的内容是一个字符串”VB5!”
00401BF4 56 42 35 21 8C 0E 2A 00 00 00 00 00 00 00 00 00 VB5!?*.........
如果知道是VB的程序, 在程序跑起来后, 找OEP的方法.
- 程序跑起来后, 用OD暂停
- OD => 菜单View => Memory
- 找到程序的PE头下面的节, 记下地址 => 右键菜单 => Dump in CPU
Memory map, item 22 Address=00401000 Size=00008000 (32768.) Owner=IsItArma 00400000 Section=UPX0 Type=Imag 01001002 Access=R Initial access=RWE
- goto 到 00401000
- 右键菜单,搜索2进制字符串, 填入Ascii字符串VB5!, 开始搜索.
在代码中搜到了2进制字符串”VB5!”, 不容易看出是字符串, CTRL_L只有这一个地方.
用”Analyze This”插件分析一下, 可以看出是字符串了.
00401BF2 . FFE1 jmp ecx00401BF4 56 db 56 ; CHAR 'V'00401BF5 42 db 42 ; CHAR 'B'00401BF6 35 db 35 ; CHAR '5'00401BF7 21 db 21 ; CHAR '!'00401BF8 8C db 8C00401BF9 0E db 0E00401BFA 2A db 2A ; CHAR '*'00401BFB 00 db 00
可以看出”VB5!”字符串地址为00401BF4.
因为VB程序的OEP特征是:
push offset “VB5!”
call MSVBVM50.ThunRTMain
所以确定了offset “VB5!”之后, 可以搜指令 push offset “VB5!”, 即搜索 push 00401BF4
代码区 => search for => Command, 这样找还找不到, 要先删除OD的分析后,再查找才能找到.
还可以找字符串的地址参考
去00401075看看.
00401072 00 db 0000401073 00 db 0000401074 68 db 68 ; CHAR 'h'00401075 F41B4000 dd IsItArma.00401BF400401079 E8 db E80040107A EE db EE0040107B FF db FF0040107C FF db FF0040107D FF db FF
这样看不出来是代码, 删除OD的分析,就看出是代码了.
00401072 0000 add byte ptr [eax], al ; this is VB's OEP00401074 68 F41B4000 push 00401BF400401079 E8 EEFFFFFF call 0040106C ; jmp to MSVBVM50.ThunRTMain0040107E 0000 add byte ptr [eax], al
0 0
- VB的OEP特征
- OEP入口的特征
- OEP特征
- 主要几种编程语言的OEP特征段
- 常见编程语言的OEP入口点特征
- 常见程序入口点(OEP)特征
- 常见程序入口点(OEP)特征
- 常见程序入口点(OEP)特征
- 常见程序入口点(OEP)特征
- 各种语言的OEP汇总
- 逆向总结(2)--OEP特征码总结
- 读取文件的OEP的方法
- VC读取PE文件的OEP
- 寻找OEP的几种常用方法
- 脱壳 OEP 程序的入口点
- vb截取任意两个特征字符之间的字符…
- ESP定理如何判断找出OEP 【OEP脱壳的5种方法】
- 新手必须懂得什么叫OEP,以及查找的常用方式软件破解什么是oep?
- Linux用户相关操作
- 服务器密钥(openssl)
- centos7
- Iframe自适应高度
- LNMP--编译安装--教程
- VB的OEP特征
- 2017年企业调薪幅度公布 你和高薪差多远?
- 数据库连接池的好处
- 内联汇编语法和使用方法
- 2017个人计划
- HTML标签元素的分类
- BIRT报表工具,直接导出EXCEL
- 深入理解DIP、IoC、DI以及IoC容器
- 一些国外优秀的elasticsearch使用案例