恶意代码分析 -服务的调试
关键就两个点
1.从众多svchost中找到挂载目标服务的进程,获取进程ID
2.让svchost执行到serverMain函数处能中断,不要继续往下运行
病毒案例:
1.释放服务文件到目标文件夹
2.宿主程序中对 startService 函数下断点
3.将目标dll文件进行修改,满足关键点2
将dll文件入口点位置的opcode码修改为 EB FE ,也就是不断的跳转到自身汇编代码位置
4.执行步骤2中的 startService 函数,让程序创建服务成功,同时获取对应的PID,由于步骤3中的汇编代码修改,会造成程序的循环运行,所以系统运行会比较慢。。。
5.启动调试器附加对应的PID,之后将原始的opcode码修改回去即可完成服务的调试