通过打开的端口,分析是那一个应用程序建立的(100分)

  • 主题发起人 主题发起人 mogao
  • 开始时间 开始时间
Windows9x系列,内存管理采用段页式。代码段选择子(CS)和数据段选择子(DS等)指
向不同的起点。整个4G地址空间被分为两部分,一部分是系统区,一部分是应用程序区。
应用程序的代码,数据等都在应用程序地址区内。而应用程序使用的API的DLL都映射到
系统区。在Windows 9x中,系统区的虚地址--物理地址映像对每一个应用都是一样的,
因此在Windows 9x中,可以通过在这片地址中分配内存,在各个程序中共享。

针对这样的情况,API Hook可以这样实现:
1。为了读写代码段的内存,必须给代码段的选择子分配一个指向同一个地方但是有写权
限的数据段选择子。代码看起来像这样:
selCS = FP_SEG((void FAR *)ExtTextOut);//取ExtTextOut在得段的选择子
selDS = AllocCStoDSAlias(selCS ) ; //分配可写的选择子
2。保存原来的数据(就是API的代码)
3。在开始的地方写上一个长跳转指令,跳到自己的代码。释放选择子。
(自己的代码必须是在DLL中的)
4。在发生调用时,恢复原来的代码,进行实际调用。
5。重新安装上钩子。
lpCode = MK_FP ( selDS , FP_OFF( (void FAR * ) ExtTextOut ) ) ;
_fmemcpy( OldCode , lpCode , 5 );
lpCode[0] = 0xEA ;
lpJmp = (char FAR * )&Jmp2Me;
lpCode[1]=lpJmp[0];
lpCode[2]=lpJmp[1];
lpCode[3]=lpJmp[2];
lpCode[4]=lpJmp[3];
FreeSelector(selDS );

完整例子在:ftp://ftp.cs.pku.edu.cn/ProgramSource/DelphiCom/GUIhook95.zip
(注:我也正在研究,代码只是将就能看懂,还有很多问题,如多进程/线程同时操作
怎么办等,希望大家能跟我探讨。)
 
对于Windows NT,内存采用的是分页式管理。地址空间的映射对各个程序是各不相同的,
所以处理起来比较麻烦。
(Sign,累了,还是先看看例子吧。我希望能有个高手出来说一说。因为我也没做过,
而且已经有很长时间没去关心Windows的地址空间等这些问题了,现在只能凭记忆。
哎,Delphi几乎让我忘掉所有的烦恼。)
 
不好意思,忘了!!
ftp://ftp.cs.pku.edu.cn/ProgramSource/DelphiCom/GUIhookNT.zip
 
另外,思路不只一条,象NetXRay这样的软件都是利用安装设备驱动来完成的。这方面我
是新手,谁来说说??
具体例子也有:

http://www.gislab.ecnu.edu.cn/delphibbs/DispQ.asp?LID=346542

来自:aimingoo 时间:00-9-25 13:35:01 ID:348389
下载这个。FreeCap for WinNT4 Release1 AND Source。
http://www.geocities.com/SiliconValley/8979/arc/FreeCapEng.zip
安装版,注意install.txt。
http://www.geocities.com/SiliconValley/8979/arc/MacCapSamples.zip
一个它的NCP文件示范和帮助。
http://www.geocities.com/SiliconValley/8979/src/FreeCapV2Src.zip
源代码。

有可能你无法下载。不知道你的http://www.geocities.com/是否被电信禁止了。
如果这样,给我mail吧。

有两个东东是重要的,一个是NCapDD.sys,另一个是MacCapv2.ocx。
OCX是VC++6SP2写的,SYS是VC并用WinNT DDK写的。界面是用BCB写的。
由于是OCX控件,所以在Delphi里面可以很好的使用。

没有用Delphi写的Socket监视类的程序范例,我很久以前就关注这个东东了,上面这
套是比较成熟的,而且OpenSource.


来自:aimingoo 时间:00-9-28 7:18:46 ID:351530
传到服务器上去了。去当吧。

http://202.102.249.244/aiming/Files/FreeCapEng.zip
安装版,注意install.txt。
http://202.102.249.244/aiming/Files/MacCapSamples.zip
一个它的NCP文件示范和帮助。
http://202.102.249.244/aiming/Files/FreeCapV2Src.zip
源代码。

 
再鼓励鼓励,还有没有继续的?
 
接受答案了.
 
后退
顶部