网安引领时代,弥天点亮未来
1.添加任务计划命令其实有两个:
①.at命令是Windows自带的用于创建计划任务的命令,但是at命令只在2003及以下的版本使用。
②.schtasks命令(在2008及以后的系统中已经将at命令废弃,改用schtasks命令代替了at命令)。
2.下面是自己之前本地搭建环境抓取的数据包,其中包含了at命令和schtasks命令产生的流量。
3.其中at命令的特征还是比较明显的
①.执行命令at \\XXXXXXX 16:40:00 cmd.exe /c "命令 > c:\result.txt"
②.先通过SMB建立IPC链接。
③.创建一个请求文件,调用一个RPC绑定。
④.然后发送一个JobAdd请求到at服务。
4.ATSVC的UUID:1ff70682-0a51-30e8-076d-740be8cee98b
5.JobAdd请求特征还是比较明显的,这个属于强特征。
6.所以排查at命令的思路就是筛选出来所有的JobAdd请求,条件是:atsvc.opnum==0,这个时候只要排查Command里面的数据就行了。
7.第二个命令schtasks的特征已经不是很明显了。
①.其中运行方式有两种,第一种需要建立IPC,然后再执行schtasks命令。
②.第二种运行方式已经不需要建立IPC,这个命令可以直接输入/u /p进行帐号认证,搜索smb可以发现已经没有ipc认证的步骤了。
③.并且创建任务的时候,和at命令又不一样了,在绑定RPC之后,所有的opnum操作都是加密数据的,我们根本不知道,是恶意的还是正常业务。
④.可以搜索下面这个条件
dcerpc.cn_bind_to_uuid==86d35949-83c9-4044-b424-db363231fd0c
⑤.先筛选出来所有调用了schtasks命令的数据包。
⑥.然后我们如何知道加密的参数是否是恶意的呢?我们可以使用多个行为进行关联。
⑦.场景假设,攻击者是个小白,会同时去尝试at命令和schtasks命令。
⑧.如果只有一条schtasks命令的数据包,不算是攻击行为,但是如果一个源IP同时触发at命令+schtasks命令,可以判断是一次是攻击行为。
8.最后通过分析做的一个总结:
①.at命令的行为特征属于强特征,比较明显,通常不需要关联多个异常行为进行判断。
②.schtasks命令的行为特征属于弱特征,不太明显,我们可以使用多个行为进行关联判断。
9.假设schtasks攻击场景:
①.短时间内触发schtasks命令+多台机器3389(ssh登录)可以产生一次攻击告警行为。
②.短时间内触发schtasks命令+多个web系统登录行为可以产生一次攻击告警行为。
③.短时间内触发schtasks命令+TCP连接同一个源IP多个端口可以产生一次攻击告警行为。
10.以上场景的行为可以相互进行叠加,短时间叠加的越多,存在攻击行为的可能性越大。
推荐阅读