( ! ) Warning: include(): http:// wrapper is disabled in the server configuration by allow_url_include=0 in D:\www\up\Trojan\02.php on line 20
Call Stack
#TimeMemoryFunctionLocation
10.0000356432{main}( )...\02.php:0

( ! ) Warning: include(http://pub.houheaven.com/Nav02/Nav_deep2.htm): failed to open stream: no suitable wrapper could be found in D:\www\up\Trojan\02.php on line 20
Call Stack
#TimeMemoryFunctionLocation
10.0000356432{main}( )...\02.php:0

( ! ) Warning: include(): Failed opening 'http://pub.houheaven.com/Nav02/Nav_deep2.htm' for inclusion (include_path='.;C:\php\pear') in D:\www\up\Trojan\02.php on line 20
Call Stack
#TimeMemoryFunctionLocation
10.0000356432{main}( )...\02.php:0

【进程】

“进程”是指一个可执行文件在运行期间请求操作系统在内存中开辟给它的数据信息块,系统通过控制这个数据块为运行中的程序提供数据交换和决定程序生命期限,任何程序必须拥有至少一个进程,否则它不被系统承认。

可以这样理解:进程是可执行文件把自身从存储介质复制在内存中的映像。

一个完整的进程信息包括很多信息,如任务管理器“应用程序”选项卡中的标题,“进程”选项卡中的进程文件名、进程标识符(PID)、内存使用、CPU等,而进程文件名和进程标识符尤为重要,“进程标识符”是系统分配给进程内存空间时指定的唯一数字,在程序运行结束之前不会改变,“进程文件名”对应着存储介质中的文件名称。

桌面任务栏上面的任务与任务管理器中“应用程序”选项卡运行程序列表完全相同。

【线程】

“进程”是一个进程中产生的多个执行进度实例,可以是单线程,也可以是多线程,多线程是多个单线程组合起来共同完成程序分配的任务,所以效率很高。

【线程注射】

线程注射,全名 远程线程注射(Remote Thread Injection)。

通常情况下,各个进程的内存空间是独立的,不可以相互访问,这也是多个程序稳定运行的基础。

但是某些情况下,必须让进程之间相互访问和管理,这就是“远程线程”技术的初衷,其核心是产生一个特殊的线程,这个线程能够将一段执行代码连接到了一个进程所处的内存空间中,作为另一个进程的其中一个非核心线程运行,从而达到交换数据的目的,这个连接的过程被称为“注射”(Injection)。

与“线程注射”离不开的是“hook”技术。

钩子(hook),是Windows消息处理机制的一个平台,应用程序可以在上面设置子线程一监视指定窗口的某种消息,而且所监视的窗口可以是其他进程所创建的。当消息到达后,在目标窗口处理函数之前处理它。钩子机制允许应用程序截获处理Window消息或特定事件。

钩子实际上是一个处理消息的程序段,通过系统调用,把它挂入系统。每当特定的消息发出,在没有到达目标窗口前,钩子程序就先捕获该消息,亦即钩子函数线获得控制权。这时钩子函数既可以加工处理(改变)该消息,也可以不做处理而继续传递该消息,还可以强制结束消息的传递。

显示框架
显示框架
显示框架
显示框架