16
6.2 恶意代码的关键技术
一个例子
17
6.2 恶意代码的关键技术
typedef struct SystemServiceDescriptorTable {
UINT *ServiceTableBase; //address of the SSDT UINT *ServiceCounterTableBase; //not used UINT NumberOfService; //number of system calls UCHAR *ParameterTableBase; //byte array }SystemServiceDescriptorTable,*PSystemServiceDescriptorTable;
6.2 恶意代码的关键技术
进程隐藏
• 使用隐蔽性、欺骗性强的进程名称 • 使用动态链接库 • 在其它进程空间中插入代码 • 过滤进程信息
6.2 恶意代码的关键技术
DLL木马 • 硬性-替换系统DLL • 软性-DLL注入
– 安装系统钩子 – 远程线程插入 – 借壳-svchost服务
6.2 恶意代码的关键技术
6.2 恶意代码的关键技术
修改系统配置文件
SYSTEM.INI——Windows目录下 语法 [boot] Shell=Explorer.exe trojan.exe
6.2 恶意代码的关键技术
修改系统配置文件
WIN.INI——Windows目录下 语法 [windows] load=trojan.exe run=trojan.exe
如果木马把自己注册成系统服务,并设置成自动启 用模式,那么它将随系统开机而启动
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSe t\Services\] [HKEY_LOCAL_MACHINE\SYSTEM\ControlSet01\Ser vices\] [HKEY_LOCAL_MACHINE\SYSTEM\ControlSet02\Ser vices\]