吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 9159|回复: 17
收起左侧

[原创] 简述:ServiceMain主函数的动态调试

[复制链接]
x51zqq 发表于 2017-3-24 16:31
本帖最后由 x51zqq 于 2017-3-24 16:37 编辑

引言:      
     1.之前在分析一个PC病毒样本的时候,需要对服务的主函数进行动态调试(恶意行为都在主函数中体现),网上找了很多资料也没找到调试方法,所以现在对调试方法进行简单的总结,希望对遇到同样问题的人能有所帮助.               
              2.该方法只是调试服务的众多方法之一,这里写出只是个人觉得该方法相对简单一些.               
              3.这里假设读者对服务均有基础的理解,所以就不做基础铺垫了,直接上调试方法,之后在简单说下原理.
              4.病毒链接:一款"骷髅"病毒的分析日常


流程:      
               1.找到启动服务StartServiceA 函数所在的地址  2.将3个参数修改为2个  3.修改StartServiceA函数地址为服务主函数地址               
                   4.在服务主函数头部下断      5.F8运行

StartServiceA函数:
1.png
2.png


服务主函数:
3.png


开始修改:
4.png


修改后:
5.png


服务主函数头部下断:
6.png


F8运行:
7.jpg


原理:        
             因为startSevice函数的原型和ServiceMain的原型类似,所以在call startSevice函数的时候修改下参数,模拟系统调用ServiceMain,就可以对其进行调试了.
StartService函数原型:
[Asm] 纯文本查看 复制代码
BOOL WINAPI StartService(
  _In_       SC_HANDLE hService,
  _In_       DWORD      dwNumServiceArgs,
  _In_opt_ LPCTSTR    *lpServiceArgVectors
);

ServiceMain函数原型:
[Asm] 纯文本查看 复制代码
void WINAPI ServiceMain(
                       DWORD dwArgc,
                       LPTSTR *lpArgv
);

修改:
[Asm] 纯文本查看 复制代码
Push lpServiceArgVectors
Push dwNumServiceArgs
Push hService               // 代码nop掉
Call StartService           // 修改为ServiceMain

免费评分

参与人数 10威望 +1 吾爱币 +18 热心值 +10 收起 理由
duoqingpangzi + 1 + 1 已答复!
Hyabcd + 2 + 1 我很赞同!
所幸丶 + 1 + 1 谢谢@Thanks!
noalieri + 1 + 1 谢谢@Thanks!
yue2363311 + 1 热心回复!
Let_go + 1 + 1 用心讨论,共获提升!
arryboom + 1 + 1 为你转身
失色的美 + 1 + 1 虽然看不懂,评分还是要有的,我看好楼下沙发哪位小哥。我为你转身
soyiC + 1 第一次距离H大这么近
Hmily + 1 + 10 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

Hmily 发表于 2017-3-24 16:49
之前也遇到过很多服务启动的进程需要调试,提供几个用过的思路:
1、映象劫持(Image File Execution Options):把进程名劫持成调试器,服务启动的时候会自动用调试器启动。
2、入口点劫持:把要调试的文件入口点代码直接改成jmp oep地址,让程序死循环,等服务启动后附加进程再把代码恢复。
 楼主| x51zqq 发表于 2017-3-24 17:24
Hmily 发表于 2017-3-24 16:49
之前也遇到过很多服务启动的进程需要调试,提供几个用过的思路:
1、映象劫持(Image File Execution Opti ...

一会儿都试试,感谢H大
ankaonimu 发表于 2017-3-24 17:30
拾光野 发表于 2017-3-24 17:35
谢谢大神讲解!!
soyiC 发表于 2017-3-24 17:48
感谢发布原创作品
JuiceY 发表于 2017-3-24 17:59 来自手机
好厉害,多谢大神分享技术
失色的美 发表于 2017-3-24 18:02
占个楼,在前排,支持楼主
yujj105 发表于 2017-3-25 07:16 来自手机
膜拜楼主
梨花开 发表于 2017-3-25 12:21
谢谢楼主和Hmily提供的方法
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-24 11:39

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表