马的原理主要是:
接下来给一段代码给你,你不要管这段代码什么意思,要是能看得懂最好:(64位)
里面的shellcdoe变量就是cs生成的
生成之后的shellcode长这样
然后把这一大坨玩意放在上面的那段代码shellcdoe变量里(记住shellcode字符串前的一个b不要去掉,python基础扎实的网友应该知道这是个二进制型字符串,如果不知道之后再说)
然后运行该段代码,cs正常上线(如果没有正常上线的估计是cs配置出错了)
接下来,用你电脑里仅有的扫毒软件来扫一下这个python脚本
由于我电脑只有火绒,所以拿火绒来做实验
回到代码编辑器,开始写绕过方法,这里我使用一个排除法进行关键词过滤
对每段代码进行删掉,然后查杀一次,删掉,查杀...这样一行一行检测,很快就定位到了这行代码:
然后对里面进行划分,删掉ctyprs,检测一次,删掉windll,检测一次...
最后定位在"RtlMoveMemory"这个关键词
接下来就是想办法修改RtlMoveMemory字符串,但改了就实现不了对应的方法,这里有两种办法
第一
,用同样功能的函数来代替该函数,但是点进这个文章的估计是小白,没有认识太多winAPI函数,所以这里就不作细讲
第二
,简单粗暴的方法,前提先讲两个python两个小技巧
这里细看的话可以发现,我把这行被检测到的代码提到上面去了,交给了a变量,然后在下面原本的位置调用了a,也就相当于在这调用了被被检测的函数
到这还没完,火绒还是会检测到的,再换个方式赋值
这里我去掉了后面长长的一串,只截到危险函数而已,这样的作用是干嘛的呢,待会就知道了
下面再介绍个函数,"
exec()
"
这个函数的作用就是执行python代码,填入的参数是
str
然后再把我说的这两个知识点结合,写出以下代码
最后用火绒扫描一下
绕过成功!
有些人说,必须生成exe绕过才算数,脚本算什么
ok,生成exe
这里我是用pyinstaller来打包的,正常上线
按照这个思路,可以利用奇奇怪怪的方法进行绕过,这就要看你的思路了,什么shellcode进行base64加密,防止被检测啦,什么shellcode藏在图片里,然后读取出来运行,思路多种多样,如果决定匿了,可以去学一下winAPI函数,那里有更多的骚操作
如果学会了,帮忙分享一下,如果学不会,评论区说一下,作者会定时查看留言哦!
顺便帮我的学习群打一下广告:905118602
上面的免杀链接放在了github上:https://github.com/soryecker/Bypass2