


Beispielanalyse von per Webshell hochgeladenen Rückverfolgbarkeitsereignissen
Inspektion und Inspektion
Zuallererst verstehe ich, dass ich nicht herausfinden muss, wo der hochgeladene Speicherort angezeigt wird. Ich muss mich beim Server anmelden, um eine WebShel-Inspektion durchzuführen und festzustellen, ob er angegriffen wurde von anderen. Es gibt Hintertüren und so weiter. Obwohl es sich bei der gemeldeten IP-Adresse um die IP-Adresse unseres Unternehmens handelt, was können wir tun, wenn der Server angegriffen wird, wenn einige Webshells übersehen und von anderen erfolgreich hochgeladen, aber nicht erkannt werden? Also ging ich hoch, um den Server zu inspizieren, lud dieses Webshell-Kill-Tool zum Töten hoch, benutzte netstat -anpt und iptables -L, um festzustellen, ob eine Hintertür eingerichtet war, überprüfte, ob ein Mining-Programm die CPU belegte usw., das werde ich tun Gehen Sie hier nicht auf Details ein. Glücklicherweise wurde der Server nicht kompromittiert und ich begann darüber nachzudenken, was mit diesem Upload-Punkt passiert ist.
Überprüfung der Sicherheitslücke beim Hochladen von Dateien
Zuerst fragte ich den Entwickler, der mich kontaktiert hatte, nach der Adresse dieses öffentlich zugänglichen Servers. Nachdem ich die Adresse erhalten hatte, stellte ich fest, dass die Adresse bekannt vorkam das, das ich vor nicht allzu langer Zeit getestet habe. Zu diesem Zeitpunkt war ich etwas verwirrt und konfrontierte den Entwickler mit den Berichtigungsinformationen. Nach dem letzten Test stellte ich fest, dass der Upload-Ort eine Whitelist-Einschränkung verwendet, die nur das Hochladen von JPEG, PNG und anderen Bildformaten erlaubt. Zu diesem Zeitpunkt stellte ich auch fest, dass der Upload-Pfad und der Dateiname zwar durch eine Whitelist eingeschränkt waren, dem hochgeladenen Dateinamen eine Zufallszahl hinzugefügt wurde und die Zeitregeln übereinstimmten war anders als andere. Es wurde vorgeschlagen, eine Berichtigung durchzuführen, da dies sonst dazu führen würde, dass die Datei Schwachstellen enthält. Er teilte mir mit, dass die Berichtigung tatsächlich durchgeführt wurde und der Pfad nicht mehr zurückgegeben wurde.
Umgehung der Dateisuffixkodierung
Nachdem ich die letzten behobenen Probleme besprochen und überprüft hatte, habe ich meine Meinung klargestellt. Dann habe ich mich auf der Website angemeldet, um den Grund zu überprüfen. Da es auf der Website nur einen Ort zum Hochladen von Bildern gibt, habe ich versucht, das Paket zu erfassen. Nachdem ich das Paket mit dem Repeater wiedergegeben hatte, stellte ich fest, dass das zurückgegebene Paket den Datei-Upload nicht zurückgab Dann habe ich verschiedene Umwege ausprobiert, aber das Ergebnis ist nicht gut. Am Ende konnte ich nach langem Überlegen keine Ergebnisse erzielen und fragte dann die Cloud-Plattform, was der Grund für den Alarm sei, der ihnen übermittelt wurde. Nachdem ich die Feedback-Ergebnisse der Cloud-Plattform gelesen hatte, stellte ich fest, dass dies kein großes Problem darstellt. Die hochgeladene Datei hat keine Ausführungsberechtigung und der Dateiname wurde nicht zufällig geändert. Aber warum wurde dieses JSP erfolgreich hochgeladen? Okay, das verwirrt mich.
Als ich mir die von der Cloud-Plattform bereitgestellten Webshel-Daten genau ansah, stellte ich fest, dass der Dateiname Base64-Codierung verwendet. Ich war sehr verwirrt darüber, warum ich ihn bereits codieren muss Funktion? Als ich es das letzte Mal getestet habe, war es keine Codierung. Plötzlich fiel mir der Schlüssel zum Problem ein, und dann verwendete ich das Decoder-Modul von burpsuite, um den Dateinamen „1.jsp“ mit Base64 in „MS5Kc1A=" zu kodieren, und sendete dann anstelle dieses Uploads einen erfolgreichen Feedback-Statuscode von 200 Fehler-Feedback-Statuscode von 500 Fehler.
Das Problem besteht also darin, dass die Forschungs- und Entwicklungsmitarbeiter während des Korrekturvorgangs die Base64-Kodierung für den Dateinamen verwendeten, was dazu führte, dass der Dateiname während des Speichervorgangs mit Base64 dekodiert wurde, und als ich die Datei hochlud, änderte ich auch die Suffix .jsp Mit dieser Base64-Kodierung wurde .jsp auch während des Speichervorgangs erfolgreich dekodiert. Die Forschung und Entwicklung hat nach der Dekodierung keine Whitelist-Einschränkungen eingeführt. Tatsächlich ist diese Art der Codierungsänderung unnötig. Schließlich wurde die Zufallszahl zum Ändern des Dateinamens verwendet, und das Codieren ist etwas überflüssig. Aus diesem Grund verursacht das Ändern eines Programmfehlers mehr Fehler.
Das obige ist der detaillierte Inhalt vonBeispielanalyse von per Webshell hochgeladenen Rückverfolgbarkeitsereignissen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



Bei der Beschreibung des Szenarios wird davon ausgegangen, dass in einer realen Produktionsumgebung eine RCE-Schwachstelle vorliegt, die es uns ermöglicht, die Installation der WebShell-Umgebung zu erhalten. Bevor wir das anfällige Image auf GetHub abrufen, müssen wir zunächst Nginx und Tomcat auf Centos installieren Konfigurieren Sie die Konfigurationsdatei von Nginx und Tomcat, laden Sie das Image mit Docker herunter und reproduzieren Sie die Sicherheitslücke. 1. Richten Sie zuerst die Docker-Umgebung ein. 2. Testen Sie, ob auf Tomcat zugegriffen werden kann. 3. Überprüfen Sie den Lastausgleich von Nginx Reverse Proxy. Überprüfen Sie die Ameise in lbsnode1 im Docker-.jsp-Text

1. Nach dem Öffnen der URL wurde festgestellt, dass es sich um eine Upload-Seite handelte. 2. Die Datei mit dem Suffix php wurde direkt hochgeladen, es wurde jedoch festgestellt, dass sie nicht hochgeladen werden konnte. 3. Verwenden Sie BurpSuite, um das Paket zu erfassen und das Suffix zu ändern der hochgeladenen Datei mit dem Suffix php zu php5, um sie zu umgehen. Im Verzeichnis var/www/html wird eine Datei mit KEY5 gefunden eine andere URL, die auch eine Upload-Seite ist, aber die Upload-Liste ist nur auf das Hochladen von Dateien mit dem Suffix .gif.jpg.png eingestellt. 6. Wir schreiben einen TXT-Trojaner mit einem Satz und ändern sein Suffix in jpg7. Verwenden Sie beim Hochladen BurpSiuit, um das Paket zu erfassen und das anzuzeigende Dateisuffix zu ändern

Da Fragen der Internetsicherheit immer wichtiger werden, ist die Sicherheit wichtiger Websites und Anwendungen zu einem immer wichtigeren Thema geworden. Insbesondere im Website-Betrieb und Wartungsmanagement werden häufig Tools wie WebShell für Wartung und Reparatur benötigt. WebShell wird jedoch auch häufig von Hackern verwendet und wird zum Einstiegspunkt für Angreifer. In diesem Artikel werden die WebShell-Sicherheitseinstellungen des Pagoda-Panels vorgestellt, um Website-Administratoren dabei zu helfen, die Sicherheit der Website zu verbessern. 1. Das Konzept und die allgemeine Verwendung von WebShell 1. Konzept WebShell ist

SINE Security führte eine Website-Schwachstellenerkennung und -behebung auf der Website eines Kunden durch und stellte fest, dass die Website schwerwiegende SQL-Injection-Schwachstellen und Schwachstellen in hochgeladenen Webshell-Website-Trojanern aufwies. Die Website verwendete ein CMS-System, das mit der PHP-Sprache und der MySQL-Datenbankarchitektur entwickelt wurde Der Quellcode dieser Website ist derzeit Open Source. Ein bestimmtes CMS ist ein soziales CMS-System, das sich auf die Bereitstellung von kostenpflichtigem Wissen konzentriert. Dieses System kann Dokumente teilen und gegen eine Gebühr herunterladen. Die von Benutzern veröffentlichten Wissensinhalte können ausgeblendet und bereitgestellt werden an zahlende Kunden lesen. Der Code ist relativ schlank und gefällt den meisten Webmastern. Die Schwachstelle dieser Website tritt hauptsächlich beim Hochladen des komprimierten Pakets und beim Erstellen böswilligen Dekomprimierungscodes auf, der auf das w im ZIP-Paket verweist.

Einrichten der lokalen Umgebung Den gespeicherten Screenshots nach zu urteilen, ist die PHP-Version der anderen Partei 5.6.40, daher möchte ich eine Testumgebung von Apache+php5.6.40 einrichten. Öffnen Sie Virtualbox, kopieren Sie den Link zum Centos-Image-System und konfigurieren Sie ihn gemäß dem folgenden Prozess. 1.Installieren Sie apacheyuminstall-yhttpdhttpd-vServerversion:Apache/2.4.6(CentOS)Serverbuilt:Aug8201911:41:182.Installieren Sie php5.6yum-yinstallepel-releaserpm-Uvhhttps://mi

Dieser Artikel stellt Ihnen die Webshell des Empire CMS-Frameworks vor. Es hat einen gewissen Referenzwert. Freunde in Not können sich darauf beziehen. Ich hoffe, es wird für alle hilfreich sein.

Was ist WebShell? Anfangs wurde Webshell häufig als Abkürzung für einen Skripttyp verwendet, mit dem Webserveradministratoren den Server aus der Ferne verwalten. Später, mit der Einführung einiger Webshell-Verwaltungstools, wurde der Prozess zum Erhalten von Webberechtigungen erheblich vereinfacht, sodass er nach und nach als Web-Intrusion-Tool-Skript bezeichnet wurde. Webshell unterscheidet sich von Schwachstellen, nutzt jedoch Anwendungsschwachstellen oder Serverschwachstellen (Schwachstellen beim Hochladen von Dateien, Schwachstellen bei der Dateieinbindung usw.), um Skriptdateien zur späteren Ausnutzung auf den Server hochzuladen. Es gehört zur anschließenden Ausnutzung von Penetrationstests und der Ausführung (Ausführung). ) Phase von ATT&CK. Abbildung 1TA0002 Referenzquelle: https

Zunächst einmal verstehe ich, dass ich nicht herausfinden muss, wo der hochgeladene Speicherort angezeigt wird. Ich sollte mich beim Server anmelden, um eine WebShel-Inspektion durchzuführen und festzustellen, ob er von anderen angegriffen wurde eine Hintertür usw. usw. Obwohl es sich bei der gemeldeten IP-Adresse um die IP-Adresse unseres Unternehmens handelt, was können wir tun, wenn der Server angegriffen wird, wenn einige Webshells übersehen und von anderen erfolgreich hochgeladen, aber nicht erkannt werden? Also ging ich hoch, um den Server zu inspizieren, lud dieses Webshell-Kill-Tool zum Töten hoch, benutzte netstat-anpt und iptables-L, um festzustellen, ob eine Hintertür eingerichtet war, überprüfte, ob ein Mining-Programm die CPU belegte usw., das werde ich tun Gehen Sie hier nicht auf Details ein. Glücklicherweise wurde der Server nicht kompromittiert, und dann
