查看原文
其他

LadonGO免杀Win10 Defender

k8gege K8实验室 2023-02-18

简介

LadonGo一款开源内网渗透扫描器框架,使用它可轻松一键探测C段、B段、A段存活主机、指纹识别、端口扫描、密码爆破、远程执行、高危漏洞检测等。3.8版本包含32个功能,高危漏洞检测MS17010、SmbGhost,远程执行SshCmd、WinrmCmd、PhpShell,12种协议密码爆破Smb/Ssh/Ftp/Mysql/Mssql/Oracle/Sqlplus/Winrm/HttpBasic/Redis/MongoDB/RouterOS,存活探测/信息收集/指纹识别NbtInfo、OnlinePC、Ping、Icmp、SnmpScan,HttpBanner、HttpTitle、TcpBanner、WeblogicScan、OxidScan,端口扫描/服务探测PortScan。


前言

有同学问我有些机器代理有问题,丢很多包,很多信息无法探测,所以只能把工具传到目标,上传前本地更新WIN10 Defender测试,发现被杀了,怎么办?这种问题也要问,肚子饿了怎么办?当然是做免杀啊,源码都有了,还要我免好给你?这么简单都不会吗?真不会啊,没关系,本文教大家注释法定位特征码、BASE64加密被杀特征免杀,同理其它程序也是一样,像几年前我发过的python版的shellcode加载器,也是使用base64、hex、base32等算法加密shellcode达到免杀的效果。加密永不过时,至少静态或查杀能力不强的杀软都能过,如CS免杀是可以上线,但是使用到mimikatz导内存密码时,可能就被defender杀了,defender说它强嘛,特征库又不全很多简单的静态的它都杀不了,说它不强嘛,它又能动态杀一些东西,关键时刻让你浪费些时间。


LadonGo被杀位置

1.MS17010
2.2021-26855
3.UPX



注释法免杀

1.注释ms17010
2.注释2021-26855
3.exe不要upx加壳


注释MS17010

Ladon.go

//} else if ScanType == "MS17010" {
//smb.MS17010(Target,3)


注释Exchange

//vul.GetExFQND(Target)
//} else if ScanType == "CVE-2021-26855" {
//vul.CheckCVE_2021_26855(Target)


注释MS17010后发现,提示杀CVE-2021-26855,所以它也注释掉,注释后再丢进去发现可以正常执行Ladon了


加密免杀

通过注释掉被杀代码,Ladon立马免杀了,但是我们也丢失了功能,对于很多工具免杀也是一样,急用的话可通过删除功能来解决。但是我们需要那个功能怎么办?那必须得做真正的免杀,而不是单纯的删除功能免杀。

} else if ScanType == "MS17010" {
//smb.MS17010(Target,3)


看以上代码只注释smb.MS17010发现还是被defender杀,但是同时注释掉两行它不杀, } else if ScanType == 在注释两行时也存在很多行,说明这个字符串没被杀,很明显是MS17010这个字符串出现在这位置被杀。我们尝试把它改成其它字符串如MS17888,再编译,发现不提示17010被杀了。说明什么问题,显然Defender查杀能力并不是很强,指定位置特征发生改变即免杀,前提你得知道哪被杀,在不确定的情况下,可以一行一行注释,或者用特征码定位EXE被杀位置。等你免杀多了有一定经验了,基本上可以直接确定哪些模块会被杀,大家可以自己看源码,其它探测信息都是正常协议包过去,没有特征定义为恶意,它怎么杀?就算是恶意的,要杀也要先杀高危嘛,所以基本上可一下确定可能被杀的POC模块MS17010、SMBghost、Exchange漏洞等。好了继续改代码

} else if ScanType == "MS17888" {
smb.MS17888(Target,3)


ms17010.go里对应函数也要修改成MS17888,再测试发现此时免杀也可使用MS17010漏洞探测功能。但这样改不好,我们的命令变成Ladon 192.168.1.1/24 MS17888了,时间久了或工具很多谁会记得是对应哪个洞。所以我们应该把字符串MS17010加密,代码如下XXENCODE为自己的加密函数如公开的BASE64或其它加密均可,DFKKJL82为MS17010加密后的密文,这样我们在命令行输入MS17010时,内部对应的还是MS17010探测。

} else if XXENCODE(ScanType) == "DFKKJL82" {
smb.MS17888(Target,3)


加密模块名称免杀后,就可以使用MS17010模块扫描内网了,大功告成。


由于只是简单改几个位置,大家自行修改源码编译一下。


推荐文章

巨龙拉冬: 让你的Cobalt Strike变成超级武器

Cobalt Strike 3.12 3.13 4.3 4.4 K8破解版

LadonGo开源全平台内网渗透扫描器框架

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存