logo

K8哥哥

没有绝对安全的系统

〖教程〗LadonGO免杀Win10 Defender

本文于 887 天之前发表

Wiki

http://k8gege.org/Ladon/LadonGo.html

简介

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测试,发现被杀了,怎么办?这种问题也要问,肚子饿了怎么办?

被杀位置

1.MS17010
2.2021-26855
3.UPX

注释免杀

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

注释MS17010

Ladon.go

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

注释Exchange

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

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

加密免杀

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

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

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

1
2
} 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探测。

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

加密模块名称免杀后,依旧可使用MS17010模块扫描内网

Ladon下载

PowerLadon: https://github.com/k8gege/PowerLadon
历史版本: http://github.com/k8gege/Ladon/releases
7.0版本:http://k8gege.org/Download
8.6版本:K8小密圈

扫码加入K8小密圈