设为首页 加入收藏

TOP

一种网络劫持分析、调试与编程实现(ws2_32.dll)/VC/MFC
2014-11-23 21:30:21 】 浏览:508
Tags:网络 劫持 分析 调试 编程 实现 ws2_32.dll /VC/MFC

1.网络劫持的应用:

有时候,最好的破解方法,只要劫持软件的网络通信返回结果或者指向的服务器就可以了。那么这个时候,跳过复杂的脱壳与繁琐的逆向分析,直接进行网络劫持,可是一种简单、快捷、有效的

方法。

2.网络劫持的分析:

首先找到一个通用的劫持模板代码,PEDIY看雪上有。然后在你要劫持的函数地方加入代码,能够停下来。(比如connect函数)

简单的就是直接加:

MessageBox(NULL,"xxx","connect",MB_OK);

然后,可以通过两种方式分析:

1)OLLYDBG(OD)调试方式:直接加载侯,f5,直到下面窗口:

\

不要点确定哟。在od中按f12暂停。然后打开堆栈窗口,找调用地址:

\

下一步就是按这个地址设定断点分析了(有了这个地址上下文,自然好分析要劫持的ip了)

\

再到PsockAddr所指的地方,那就是原来的ip,修改那里,就是你的劫持ip了(不过是16进制的数字ip,高低byte颠倒的,就是NETWORK ADDR).

2)使用vc调试分析:

按如下,一样可以定位(先f9设好断点)

\

3.编程实现:

ALCDECL hajack_connect(void)
{

unsigned long *p_ip;
unsigned long *p_ip2;
_asm{
//push eax;
mov p_ip, esp;
add p_ip,8
}
//p_ip+=2;
p_ip2 = (unsigned long *)* p_ip;
p_ip2+=1;
*p_ip2=0x8a047e63; ////ip=99.126.4.138
GetAddress("connect");

}

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇在VC中如何进行远程调试 下一篇从面向对象到面向切面

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目