关于执行命令时被拦截的那档子事

因为电脑就安装了火绒,所以就用火绒实验了,360之类的应该同理。

绕过拦截

虽然这个思路我早就有,但是一直没实验;今天恰巧下载文件太慢我试试用certutil命令下载,然后执行命令的时候被火绒弹窗拦截了。

算了,无效打码,懒得弄了,我就为了下载一个ssh连接用的客户端软件而已。

那既然都走到这了,还是就试试吧。

总体来说非常简单。

首先将certutil文件复制一份到其他目录。

然后再执行的时候火绒没有任何反应。

思路

通过上面这种操作,发现简单的绕过了火绒的命令拦截行为,那么我们可以利用这种思路,实现其他的想法。

例如:

无文件落地通过powershell方式上线目标到cs服务器,我们可以将powershell.exe复制一份新文件到其他目录,然后再通过新文件名去尝试能否成功上线;但是需要注意,powerhsell.exe文件不在system32根目录下,具体现在忘了,自己找找就行。

还有就是,执行某些高危操作时,比如创建用户等行为,直接使用命令:

net user test test /add

这样的话火绒会直接拦截,

然后我们结合这个思路,将net.exe复制一个新文件然后测试。

这时候我们发现还是被拦截了,但是请注意,火绒拦截的时候提示了一个操作目标,操作目标程序为net1.exe,所以说我们复制net.exe是不行的,这里的原理大概是,net.exe 不光是用来执行net user等命令,net还能用来执行许多其他操作,但是net user命令执行所需的接口net.exe本身不拥有,所以需要调用net1.exe来完成net user这个命令的操作。

所以理清楚后,我们再把net1.exe复制一份,再进行测试。

这时候再执行添加用户的命令,火绒就没有任何反应了。

总结

这种方法其实挺好使的,而且出现时间也比较早,且国内外很多杀软都是识别原生程序调用的命令进行拦截,比如使用原生的cmd.exe执行某些命令会拦截,或者被edr增加风险等级;但是将cmd.exe复制为一个新exe程序,然后再使用这个新exe程序去执行命令时,可以成功绕过某些限制。

虽然杀毒软件对于危险命令的拦截具体原理未去研究,但是,基于这种复制新文件从而去调用执行命令的时候总是非常好使,但是也相对来说耗时;

还有使用这种方式的话,有时候命令执行完或者需要的工作完成后,新复制的文件忘记删除,可能会打草惊蛇,导致后续权限丢失或者其他情况等。