关键词:schtasks, 逆向,沙盒
schtasks命令可以用用户权限,也可以用系统权限。权限控制比较好。 stchtasks命令在不同语言系统中日期格式不相同,稍不注意计划任务就建立不成功。如果路径中带有空格,需要特别处理。schtasks命令是一个功能强大的超级命令行计划工具。
使用实例
创建一个每天8点运行记事本的计划任务
schtasks /create /tn "notepad_start" /tr C:\Windows\System32\notepad.exe /sc daily /st 08:00:00
运行notepad_start计划任务
schtasks /run /tn "notepad_start"
删除notepad_start计划任务
schtasks /delete /tn "notepad_start"
字符串
Linux命令strings, 提取schtasks.exe文件里面所有字符串
VirtualBox:~/sbox$strings ./schtasks.exe >schtasks.txt
APIs
查看一个DLL或EXE中的包含的函数或依赖的函数之类的信息,可以使用VS自带的工具dumpbin
首先安装visualstudio 2010旗舰版(或者其他vs版本也可以)
VC>dumpbin-imports e:\shares\schtasks.exe >e:\shares\schtasks.txt
.. .. ..
api-ms-win-service-management-l1-1-0.dll
0041FDDC 0 OpenServiceW
0041FDEB 0 CloseServiceHandle
0041FDFA 0 StartServiceW
api-ms-win-service-winsvc-l1-2-0.dll
0041FE09 0 QueryServiceStatus
0041FF23 0 NetServerGetInfo
.. .. ..
代码执行法(sandbox)
The data wecollect using Cuckoo comes from the User Space monitor and includes:
- API日志
- 网络日志
- 二进制文件静态分析
- 截屏
- 系统被修改项: 文件/注册表/资源锁/服务
- 子进程,父进程关系。
Cuckoo Sandbox is Open Source: http://cuckoosandbox.org/
Cuckoo提供了python命令行工具。
1.使用cuckoo.py启动引擎。
2.使用submit.py像cuckoo提交待分析应用。
3.引擎会和虚拟机中的Agent通信,运行应用。
4.分析结束后,结果输出到特定目录。
Cuckoo Sandbox安装比较复杂。这里使用systeminternal工具Procmon.exe监控schtasks执行
包括注册表,文件,网络,进程相关操作的日志。
命令终端执行schtasks启动记事本
C:\Users\chao>schtasks /run /tn "notepad_start"
进程cmd.exe启动schtasks, 进程svchost查询C:\Windows\System32\Tasks目录启动notepad.exe.
计划任务保存的路径C:\Windows\System32\Tasks\ notepad_start , 这是一个xml文件,有计划任务的详细设置。
TaskScheduler服务。进程名svchost.exe。依赖Remote Procedure Call(RPC)服务。默认启动类型为自动。它能使程序在预定的时间自动运行,如定期进行磁盘碎片整理、病毒扫描、更新等,可根据自己的需要选择是否开启。
参考
《逆向工程核心原理》李承远
Cuckoo的配置与使用Ubuntu http://blog.csdn.net/hanchaoqi/article/details/41851935
http://blog.idf.cn/2013/06/malware-analysis-environment-with-cuckoo-and-maswasm/