摘要: 对于绝大多数人逆向人员而言,平日一般都抓浏览器的包,网上各种抓包教程早就烂大街了;抓包原理也不复杂:先配置浏览器的代理为抓包工具,所有的数据包都通过抓包工具中转一次。如果是https这些加密的包,还要装抓包工具的证书,做“中间人攻击”,即:骗客户端的浏览器自己的服务器,骗服务器自己是客户端的浏览器, 阅读全文
posted @ 2021-01-31 21:27 第七子007 阅读(2479) 评论(0) 推荐(0)
摘要: 今天来分析一下xxxx接受消息的call;测试的账号在虚拟机,发消息的账号在物理机; 1、老规矩:逆向分析的起点都从CE开始;给测试账号发送辨识度高的消息,这时暂时不要在测试账号打开消息。因为此时的消息刚经过网络传输,还是ASCII格式,所以千万不要勾选UTF-16,只能找ASCII码找(下面详细解 阅读全文
posted @ 2021-01-24 18:02 第七子007 阅读(1153) 评论(0) 推荐(1)
摘要: 1、所谓挂外,本质上是改变原有软件的执行流程。方式有两种: 通过改函数的参数来函数的执行流程 直接改代码,尤其是JCC、 call等跳转指令。 外挂的形式大致也有两种: dll注入 直接改原软件的exe、dll等PE文件 shellcode 破解别人的外挂,本质上就是找到这个外挂更改了原软件的哪些点 阅读全文
posted @ 2021-01-23 17:35 第七子007 阅读(8355) 评论(1) 推荐(0)
摘要: 1、众所周知,现在主流网络用的还是IPV4协议,理论上一共有2^32=43亿个地址,除去私有网段、网络ID、广播ID、保留网段、本地环回127.0.0.0网段、组播224.0.0.0网段、实际可用就是36.47亿个;全球的服务器、PC机、手机、物联网设备等需要通信的设备加起来远不止36.47亿,怎么 阅读全文
posted @ 2021-01-21 12:18 第七子007 阅读(11665) 评论(0) 推荐(0)
摘要: 这次爆破的是某编辑类软件,版本是32位绿色版本:V4.3.1 1、OD打开后发现了VMP0段,这里下个内存访问断点: 又来到这里了,非常明显的VMP入口特征: 一大堆push指令又开始保存物理寄存器;同时让esi指向虚拟指令集;和上面一篇文章分析的混淆手法一模一样,个人猜测用的VMP也是3.5.0版 阅读全文
posted @ 2021-01-16 23:04 第七子007 阅读(9264) 评论(0) 推荐(0)
摘要: 介绍VMP虚拟化原理之前,先简单介绍一下计算机运行的原理。总所周知,现代计算机的核心部件是CPU、内存、磁盘、键盘、显示器等;最最最核心的就属CPU、内存和磁盘了。用户按开机键,CPU会把OS从磁盘加载到内存运行。由于CPU只能识别并执行二进制文件,所以代码、数据等都是以二进制存放在磁盘和内存的。 阅读全文
posted @ 2021-01-09 17:33 第七子007 阅读(19595) 评论(0) 推荐(1)
摘要: 1、软件的逆向、外挂、破解等,本质上是想办法改变原有代码的执行路径,主要的方式有两种: 改变某些关键数据,比如函数参数(android下有xpose、frida等现成的hook框架,逆向人员只需要找准hook的点就完成了90%的逆向工作)、某些全局变量(比如VX防止多开的mutex);改变这些数据后 阅读全文
posted @ 2021-01-03 19:59 第七子007 阅读(8320) 评论(0) 推荐(0)
摘要: 要想改变目标进程执行流程的办法有很多,最常见的就是hook。为了让目标进程执行特定的代码,可以注入shellcode或dll;shellcode的优点是体积小,不容易被检测到,但功能也相对单一;dll注入优点是可以包含的功能较多,但容易被检测到。本次拿xxxx软件举例做个dll注入; 要做注入,否先 阅读全文
posted @ 2020-12-27 16:30 第七子007 阅读(655) 评论(0) 推荐(0)
摘要: 防止多开的方法又很多种,比如: 遍历进程,如果目标进程已经存在就认为正在运行,现在的进程退出 互斥体,也就是mutex,本质是生成一个全局变量。如果检测到这个变量已经存在,现在进程就退出 xxxx PC端用的是mutex。可以用OD打开xxxx的exe,然后CTRL+G查找CreateMutex函数 阅读全文
posted @ 2020-12-27 10:22 第七子007 阅读(1538) 评论(0) 推荐(0)
摘要: 上个月做了一个栈溢出执行cmd shell的例子(https://www.cnblogs.com/theseventhson/p/13933230.html),当时在代码中通过数组显式调用了shell函数(a[x] = (int)shell),即把shell函数的地址放在了数组中,只需要通过超(溢) 阅读全文
posted @ 2020-12-24 17:06 第七子007 阅读(543) 评论(0) 推荐(0)