吾爱破解培训的学习笔记

第一次课

知识点:

  • l是日志,e是模块信息(可以看基地址),包含程序加载的完整模块和路径,m是内存和地址,t是线程,w是窗口,h是句柄信息,c是反汇编窗口,p记录管理员修改信息,k是调用的堆栈,b断点。
  • OEP:未加壳的程序 oep表示程序的入口点  加壳的程序会隐藏oep 找到真正的oep可以脱壳 并且反向调试程序
  • ImportREC使用详解
  • https://www.52pojie.cn/thread-234739-1-1.html

检查Import REC的OEP,RVA,Size是否获取正确:

  • 点击e查看基地址A

 

  •  点击c到达程序入口点B,OEP = B - A

 

  •  找到一些系统的API调用的call,右键跟随到内存地址

 

  •  向上翻找到第一个系统地址C。RVA = C -  A

 

  •  一直往下翻,得到结束位置D。Size= D - C

  •  这只是一个提示,如果知道没壳,可以点“是”

程序崩溃了如何排查:

  • skip some Exceptions勾勾去掉

  •  debugging options也是

 

 

  • 运行起来后在堆栈窗口选择崩溃点,右击选择“反汇编窗口中跟随”

 

 

  •  然后把这段地址粘到有壳的程序,看看有壳时是怎么样的

 

 

 

第二次课

用Scylla脱upx壳:

  • ctrl+B输入特征符,找到入口点

  •  F4运行到oep,F7进入,然后用Scylla加载,修改一下oep,然后dump出来

  • 最后选择修复dump后的文件

用od去广告:

  • 加载后右击选择”智能搜索“,得到http地址的字符串,记录一下调用地址

 

 

  •  在数据窗口右击转到
  •  格式不对"右击"选择"文本"选择"ascii"

 

 

  •  选中http

 

 

  •  数据框右键,复制到可执行文件,在新的窗口中,右键,保存文件

定位弹窗的进程归属:

  • 所用工具Process Explorer

 笔记:

  • 文本字符串=SOFTWARE\microsoft\Internet Explorer\Main,代表修改注册表
1.MessageBoxA/W
消息框

弹网页的三种方式
1.ShellExecuteA/W :open一个xxx的url
2.WinExec:控制台执行 explorer.exe+一个xxx的url
3.CreateProcessA/W :Windows 执行某一个浏览器的PATH(全路径)+xxx的url
创建进程


5.CreateThread
创建线程

6.RegCreateKeyExA/W
注册表 创建 键值
7.RegOpenKeyExA/W
注册表 打开 键值
8.RegDeleteKeyExA/W
注册表 删除 键值


Ansi(Ascii)
WideChar(Unicode)

F12大法
RET大法
nop大法
View Code

 

posted @ 2020-02-28 20:24  东坡肉肉君  阅读(468)  评论(0)    收藏  举报