
逆向
文章平均质量分 76
网络小工
这个作者很懒,什么都没留下…
展开
-
VM分析初探
------------------------------------------------------ mov ecx,[da3c0c] //通过基址取得虚函数地址 mov edx,[ecx] push 3 push 0 call [edx+3c0] [49cca0] //开始调用被VM保护的虚函数 -----------------------转载 2013-05-04 09:20:23 · 847 阅读 · 0 评论 -
对call堆栈平衡的一点心得,希望对新手有所帮助
俺也是新手,通过广海,bpsend 一些论坛学习,最近才对call 的堆栈平衡有点小小领悟,别笑话俺 当你对游戏某项功能实现的时候需要调用call ,call 前面往往有一些入栈操作 例如 push a push b push c push d转载 2013-05-08 15:36:23 · 3451 阅读 · 0 评论 -
Jim's游戏外挂学习笔记1——动态分配内存的游戏怎么样找内存地址
游戏:天龙八部 版本:0.13.0402 系统:windows xp 工具:CE5.2+OD1.10 目标:搜索人物基地址 第一步,用CE搜索人物HP,得到一堆地址,掉血后继续搜索,得到唯一地址0ABDC360(HP地址) 第二步,切换地图后发现该地址里的值已经不是HP,是动态地址,重复第一步搜索出新的HP地址(地址省略) 第三转载 2013-05-06 11:28:01 · 1173 阅读 · 0 评论 -
汇编语言的准备知识一二三四
教程: 汇编语言的准备知识--给初次接触汇编者(1) 汇编语言和CPU以及内存,端口等硬件知识是连在一起的. 这也是为什么汇编语言没有通用性的原因. 下面简单讲讲基本知识(针对INTEL x86及其兼容机) ============================ x86汇编语言的指令,其操作对象是CPU上的寄存器,系统内存,或者立即数. 有些指令表面上没转载 2013-05-06 14:10:56 · 1316 阅读 · 0 评论 -
堆栈平衡的说明
跟一个朋友谈堆栈的时候 就写下了这段文字,顺便发到这里给需要的看看吧 汇编初学者比较头痛的一个问题 //////////////////////////////////////////////////////////////////// 比如 我们有这样一个C函数 1#include 2long test(int a,int b) 3{ 4 a =转载 2013-05-05 08:10:49 · 990 阅读 · 0 评论 -
C++反汇编代码分析——函数调用
代码如下:#include "stdlib.h" int sum(int a,int b,int m,int n) { return a+b; } void main() { int result = sum(1,2,3,4); system("pause"); } 有四个参数的sum函数,接着在main方法中调用sum函数。在debu转载 2013-05-05 15:56:42 · 714 阅读 · 0 评论 -
CALL是如何炼成的 之一:理论篇
遇到一个CALL应该如何写? 这个是写一个内挂不可避免的问题.刚初学的朋友可能会不知道如何入手.想起刚学这方面的时候,绕过很多弯路,现在把一些经验写出来给大家参考参考吧,不是很高深的东西,但我觉得对某些人很有帮助. CALL是什么? CALL是汇编中的一个指令,CPU执行这条指令会执行2个动作 一:压入EIP入栈 二:跳转到后面的地址. 跟RET转载 2013-05-04 13:17:43 · 1311 阅读 · 0 评论 -
加解密算法定位,还原,密钥寻找
以封神榜为例,(适合金山绝大部分游戏,原理相同) 先脱壳(由于脱很简单,不介绍了) 用IDA看下这游戏从ws2_32导入了哪些函数..网络游戏通迅一般用到的是send,recv,WSASend,WSARecv这四个API函数.发现用到了recv,WSASend,WSARecv,游戏中时发现并未用recv,所以有可能登陆用到了,初步分析是游戏过程中用WSASend转载 2013-05-04 12:47:42 · 1410 阅读 · 0 评论 -
网游找call通杀方法之另辟蹊径
以下为教程1----国产游戏----涉及到的相关数据仅作交流请勿作其他商业用途,所带来的一切后果,概不负责---------------------------2010年3月6日1:25:57 【游戏名字就不说了,自己看图片就知道了】【2010年3月6日1:40:32】 1、打开游戏后,OD附加游戏进程。 2、点OD工具栏的字母“E”,然后选中系统库 ws32_32.dll转载 2013-05-04 12:40:56 · 2289 阅读 · 0 评论 -
CALL是如何炼成的 之二:实践篇
前言:遇到一个CALL应该如何写? 这个是写一个内挂不可避免的问题.刚初学的朋友可能会不知道如何入手.想起刚学这方面的时候,绕过很多弯路,现在把一些经验写出来给大家参考参考吧,不是很高深的东西,但我觉得对某些人很有帮助. 写CALL的步骤! 我之前说过写一个程序的CALL其实就2个步骤,第一:找到相关地址,第二:传入适当参数.只要这2点你做到了 这转载 2013-05-04 13:23:52 · 966 阅读 · 0 评论 -
esp跟ebp跟踪记录
发现文字描述还是太没有快感。上几幅图,来说明这个调试过程更好。此文对于深刻理解ebp,esp是具有长远意义的可以看到,初始情况下,ebp此时值为0012FEDC,也就是栈帧的地址,而栈顶地址esp值为0012FDFC。可以看到两个值有一定的关系。而帧指针的地址较高。 然后我们让它执行前两句,push ebp,mov ebp,esp可以看到前两句已经执行了,那转载 2013-05-08 16:43:08 · 906 阅读 · 0 评论