


Eine kurze Diskussion über Methoden zum Hochladen von Dateien zum Erhalten von Berechtigungen
Übersicht
Sicherheitslücken beim Datei-Upload treten in Anwendungen mit Upload-Funktionen auf. Wenn die Anwendung keine Kontrolle über die hochgeladenen Dateien des Benutzers hat oder Fehler aufweist, können Angreifer die Fehler in der Anwendungs-Upload-Funktion ausnutzen, um Trojaner, Viren und andere schädliche Dateien hochzuladen an den Server senden und den Server steuern.
Ursache und Schaden der Sicherheitslücke
Der Hauptgrund für die Sicherheitslücke beim Hochladen von Dateien besteht darin, dass die Anwendung über eine Upload-Funktion verfügt, die hochgeladenen Dateien jedoch keine strenge Legalitätsprüfung bestanden haben oder die Prüffunktion fehlerhaft ist, wodurch Trojaner-Dateien zugelassen werden auf den Server hochgeladen werden. Sicherheitslücken beim Hochladen von Dateien sind äußerst schädlich, da bösartiger Code direkt auf den Server hochgeladen werden kann, was schwerwiegende Folgen haben kann, z. B. Manipulation der Webseite des Servers, Hängenbleiben der Website, Fernsteuerung des Servers und Installation von Hintertüren.
Hier besprechen wir verschiedene Verifizierungs- und Umgehungsmethoden für das Hochladen von Dateien:
1. Lokale Verifizierung (Front-End-Verifizierung)
Die Schwachstelle bei der Umgehung des Front-End-JS-Filters liegt darin, dass die Anwendung durch JS-Code im Front-End verifiziert wird , und Die Überprüfung wird nicht im Backend des Programms durchgeführt, sodass Sie die Upload-Filterung umgehen und Trojaner hochladen können, indem Sie den Front-End-JS-Code ändern.
Wie kann man also beurteilen, ob es sich um eine Front-End-Verifizierung handelt? Ich persönlich denke, wir können beim Hochladen und Erfassen des Pakets überprüfen, ob wir das Datenpaket erhalten können, ob Daten durchfließen, oder wir können überprüfen, ob auf der hochgeladenen Bildseite die hochgeladene Bildadresse usw. angezeigt wird.
Bypass: Entfernen Sie den Filtercode, ändern oder deaktivieren Sie Javascript.
2. Backend-Überprüfung und -Umgehung
Gemeinsame Überprüfungen für den Datei-Upload: Suffixname (direkte Überprüfung), Datei, Dateikopf (indirekte Überprüfung). 2.1 Suffixname Es gibt keine vollständige Filterung, sodass Angreifer Dateien hochladen können, die nicht auf der schwarzen Liste stehen.
Blacklist-Beurteilungsmethode: Dateien hochladen. Das System weist darauf hin, dass das Hochladen von Dateien im xxx-Format nicht zulässig ist.
Umgehung: Verwenden Sie andere Formate (php5, Phtml, php3) oder Dateiformate, und Sie können auch einige Interferenzsymbole hinzufügen, um eine Umgehung zu erreichen.
2.1.2 .htaccess (pseudostatisches Protokoll) – Analyse neu schreiben (nur in Apache verfügbar und Aktivierung des pseudostatischen Moduls).htaccess-Datei-Upload ist eine Funktion, die auf dem Webserver mit konfiguriert werden kann. htaccess-Dateien zum Erreichen von JPG-, PNG- und anderen Suffixen werden als PHP-Dateianalyseprozess verwendet.
.htaccess-Dateien (verteilte Konfigurationsdateien) bieten eine Möglichkeit, Konfigurationsänderungen pro Verzeichnis vorzunehmen. Eine Datei, die eine oder mehrere Konfigurationsanweisungen enthält, wird in einem bestimmten Dokumentverzeichnis abgelegt, und die Anweisungen in der Datei gelten für dieses Verzeichnis und alle seine Unterverzeichnisse. .htaccess ist eine Konfigurationsdatei des Webservers. Mit der .htaccess-Datei können Sie Konfigurationen wie die Parsing-Methode und die Umleitung von Definitionsdateien im Webserver implementieren.
Bypass-Methode: Laden Sie zunächst die 1.htaccess-Datei hoch. 2. Laden Sie das Bild erneut hoch.
2.1.3 LeerzeichenumgehungBypass-Methode: Fügen Sie nach dem Dateisuffixnamen im Datenpaket ein Leerzeichen hinzu, um eine Umgehung zu erreichen.
2.1.4. BypassBypass-Methode: Fügen Sie ähnlich wie bei der Space-Bypass-Methode ein . nach dem Dateisuffixnamen im Datenpaket hinzu, um eine Umgehung zu erreichen.
2.1.5::$DatenumgehungDies ist ein für Windows einzigartiges Protokoll. Wenn in Windows der Dateiname + „::$DATA“ verwendet wird, werden die Daten nach ::$DATA behandelt Bei der Verarbeitung eines Dateistreams wird der Suffixname nicht erkannt und der Dateiname vor ::$DATA wird beibehalten. Der Zweck besteht nicht darin, den Suffixnamen zu überprüfen.
2.1.6 SchleifenfilterungBypass: Der Code ersetzt PHP in der Zeichenfolge durch nichts.
Zum Beispiel: a.pphphp wird zu ->a.
2.1.7 Whitelist: Löschen Sie das Formatsuffix, das hochgeladen werden kann (sicherer)
%00-Trunkierung, 0x00-Trunkierung (basierend auf dem Prinzip der Adresse, Daten hinter der Datei abschneiden) 00 Kürzungsumgehung kann nur die Front-End-Überprüfung umgehen.
Der Hauptgrund für die Kürzung ist die Existenz des Zeichens %00, wenn PHP
Bypass-Methode (Pfad%00-Kürzung):
Ändern Sie test in test.php%00aaa, 1.php in 1.jpg, damit die Überprüfungsfunktion übergeben werden kann.- Der %00 in test.php%00aaa ist URL-codiert. Wählen Sie %00 und wählen Sie den Befehl [Convertselection], wählen Sie den Befehl [URL] und dann den Befehl [URL-decode] zur Codierung.
3. Dateitypüberprüfung
3.1 Datei-Header-Erkennung: Datei-Header-Inhaltsinformationen (z. B. gif89a)
Verschiedene Dateien haben spezifische Datei-Header-Formate, Entwicklung Der Autor Erkennt den Dateityp durch Überprüfen des Dateiheaders der hochgeladenen Datei. Diese Erkennungsmethode kann jedoch auch umgangen werden. Solange der entsprechende Dateiheader zum Header der Trojaner-Datei hinzugefügt wird, kann die Erkennung umgangen werden, ohne den normalen Betrieb zu beeinträchtigen der Trojaner-Datei.
Gemeinsame Dateiheader sind wie folgt:
JPEG 0xFFD8FF
PNG0 x89504E470D0A1A0A
GIF. 4 7 49 4638 39 61 ( GIF89a )
Bypass-Methode:
- Ändern Sie die Header-Informationen, um eine Täuschung zu erreichen, z. B. das Hinzufügen des Datei-Headers der Bilddatei zur Header-Datei des Trojaners um die Erkennung zu umgehen.
GIF89a
?>
#🎜🎜 #- Machen Sie ein Bildpferd
5. Andere Schwachstellen
Skriptfunktionsschwachstelle-cve
CVE-2017-12615
CVE- 2015-5254# 🎜🎜#
CVE-2019-2618......Es gibt Online-Tutorials zum Ausnutzen dieser Schwachstellen Meister können sich das Material ansehen. 6. Schwachstelle beim Parsen von Middleware 6.1 Schwachstelle beim Parsen von IIS 6.0+ Beurteilen Sie schnell die Schwachstelle beim Parsen, /.php, um zu sehen, ob sie verstümmelt ist Code, wenn er vorhanden ist, existiert er nicht, wenn er nicht existiert. 6.1.1 Als Ordner ausführen Normaler Dateiname: image/aa.jpg. Bypass: image.asp/aa.jpg aa.jpg wird als asp analysiert. 6.1.2 Als Datei ausführen Normaler Dateiname: image.jpg. Bypass: image.asp;.jpg oder xxx.asp;xxx.jpg Diese Datei wird als ASP ausgeführt. asp kann in PHP geändert werden. Wenn Sie PHP ändern, kann es als PHP ausgeführt werden. 7.WAF-BypassUm WAF zu umgehen, müssen wir wissen, welche Parameter geändert werden können, wie zum Beispiel:Inhalt -Disposition: grundsätzlich veränderbar.
- Name: Formularparameterwert, kann nicht geändert werden.
- Dateiname: Dateiname, kann geändert werden.
- Content-Type (eigener Dateityp): Datei-MIME, entsprechend ändern.
- Der Kern der WAF-Umgehung besteht darin, den Test nach dem Parameternamen ständig zu ändern, der geändert werden kann, um zu versuchen, ihn zu umgehen.
- Gemeinsame Umgehungsmethoden:
Zum Beispiel x.jpg;.php Das Semikolon stellt das Ende eines Datenelements dar.
7.3 Datenkürzung (%00; Zeilenumbruch)
Fügen Sie nach dem Dateisuffixnamen x.php%00.jpg eine %00-Kürzung (Leerzeichen) hinzu.
Zeilenumbruch (ähnlich n im Programm) ähnelt der Datenblockübertragung, wie zum Beispiel:
- x
- p# 🎜🎜# h
- p
- Bereitstellen von Sicherheitsprodukten wie Pagode und WAF.
- Führen Sie strenge Mehrfachüberprüfungen für hochgeladene Inhalte durch.
- Führen Sie eine Integritätsprüfung des Dateiinhalts durch.
Das obige ist der detaillierte Inhalt vonEine kurze Diskussion über Methoden zum Hochladen von Dateien zum Erhalten von Berechtigungen. 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



Es ermöglicht Benutzern, detailliertere Vorgänge und Anpassungen des Systems durchzuführen. Die Root-Berechtigung ist eine Administratorberechtigung im Android-System. Das Erhalten von Root-Rechten erfordert normalerweise eine Reihe langwieriger Schritte, die für normale Benutzer jedoch möglicherweise nicht sehr benutzerfreundlich sind. Durch die Aktivierung von Root-Berechtigungen mit einem Klick wird in diesem Artikel eine einfache und effektive Methode vorgestellt, mit der Benutzer problemlos Systemberechtigungen erhalten können. Verstehen Sie die Bedeutung und Risiken von Root-Berechtigungen und genießen Sie größere Freiheiten, damit Benutzer das Mobiltelefonsystem vollständig kontrollieren können. Verstärken Sie die Sicherheitskontrollen, passen Sie Designs an und Benutzer können vorinstallierte Anwendungen löschen. Allerdings sind beispielsweise das versehentliche Löschen von Systemdateien, das zu Systemabstürzen führt, die übermäßige Nutzung von Root-Rechten und die versehentliche Installation von Malware ebenfalls riskant. Bevor Sie Root-Rechte verwenden

Websites zum Erlernen der C-Sprache: 2. C-Sprach-Forum 5. Tianji.com; 51 Selbststudiennetzwerk; 10. C-Programmierung. Detaillierte Einführung: 1. C-Sprach-Chinesisch-Website, die sich der Bereitstellung von C-Sprach-Lernmaterialien für Anfänger widmet. Sie ist reich an Inhalten, einschließlich grundlegender Grammatik, Zeiger, Arrays, Funktionen, Strukturen und anderen Modulen. Dies ist eine umfassende Website zum Programmieren und mehr.

Wie stelle ich den Berechtigungszugriff im QQ-Bereich ein? Sie können den Berechtigungszugriff im QQ-Bereich festlegen, aber die meisten Freunde wissen nicht, wie der Berechtigungszugriff im QQ-Bereich festgelegt wird Editor für Benutzer. Interessierte Benutzer kommen vorbei und schauen sich um! Tutorial zur QQ-Nutzung QQ-Bereich So legen Sie den Berechtigungszugriff fest 1. Öffnen Sie zunächst die QQ-Anwendung, klicken Sie auf [Avatar] in der oberen linken Ecke der Hauptseite 2. Erweitern Sie dann den Bereich für persönliche Informationen auf der linken Seite und klicken Sie auf die Funktion [Einstellungen]. in der unteren linken Ecke; 3. Rufen Sie die Einstellungsseite auf. Wischen Sie, um die Option [Datenschutz] zu finden. 4. Wählen Sie als nächstes den Dienst [Berechtigungseinstellungen] aus. Wählen Sie dann die neueste Seite aus ]; 6. Neu im QQ Space einrichten

Wie implementiert man den Datei-Upload mit gRPC? Erstellen Sie unterstützende Servicedefinitionen, einschließlich Anforderungs- und Antwortnachrichten. Auf dem Client wird die hochzuladende Datei geöffnet, in Blöcke aufgeteilt und dann über einen gRPC-Stream an den Server gestreamt. Auf der Serverseite werden Dateiblöcke empfangen und in einer Datei gespeichert. Der Server sendet nach Abschluss des Datei-Uploads eine Antwort, um anzugeben, ob der Upload erfolgreich war.

Berechtigungsverwaltung für Discuz-Foren: Lesen Sie die Anleitung zur Berechtigungseinstellung. Bei der Berechtigungsverwaltung für Discuz-Foren ist die Berechtigungseinstellung ein entscheidender Teil. Dabei kommt der Einstellung der Leserechte eine besondere Bedeutung zu, da sie den Umfang der Inhalte bestimmt, die verschiedene Nutzer im Forum sehen können. In diesem Artikel werden die Leseberechtigungseinstellungen des Discuz-Forums und die flexible Konfiguration für unterschiedliche Anforderungen ausführlich vorgestellt. 1. Grundlegende Konzepte von Leseberechtigungen Im Discuz-Forum umfassen Leseberechtigungen hauptsächlich die folgenden Konzepte, die verstanden werden müssen: Standard-Leseberechtigungen: Standard nach der Registrierung eines neuen Benutzers

Antwort: Ja, Golang bietet Funktionen, die das Hochladen von Dateien vereinfachen. Details: Der MultipartFile-Typ bietet Zugriff auf Dateimetadaten und -inhalte. Die FormFile-Funktion ruft eine bestimmte Datei aus der Formularanforderung ab. Die Funktionen ParseForm und ParseMultipartForm werden zum Parsen von Formulardaten und mehrteiligen Formulardaten verwendet. Die Verwendung dieser Funktionen vereinfacht den Dateiverarbeitungsprozess und ermöglicht Entwicklern, sich auf die Geschäftslogik zu konzentrieren.

Wie implementiert man das Hochladen von Dateien per Drag & Drop in Golang? Aktivieren Sie Middleware; verarbeiten Sie Datei-Upload-Anfragen; erstellen Sie HTML-Code für den Drag-and-Drop-Bereich; fügen Sie JavaScript-Code für die Verarbeitung von Drag-and-Drop-Ereignissen hinzu.

In diesem Artikel lernen Sie das Wesen von TI kennen und erfahren weiter, wie Sie mithilfe von Powershell- und NtObjectManager-Modulen TI-Berechtigungen erhalten, um jeden gewünschten Vorgang im Betriebssystem abzuschließen. Wenn Sie jemals ein Windows-System verwaltet haben, sollten Sie mit dem Konzept der Gruppe „TrustedInstaller“ (TI) vertraut sein. Die TI-Gruppe verfügt über wichtige Berechtigungen für den Betrieb von Systemdateien und der Registrierung. Sie können beispielsweise die Eigenschaften von Dateien im Ordner System32 anzeigen. In den Sicherheitsoptionen haben die TI-Gruppe und der Dateieigentümer die Berechtigung, Dateien zu löschen und zu ändern. Daher ist es für den Betrieb von Systemdateien und Registrierung erforderlich
