Heim  >  Artikel  >  PHP-Framework  >  Wie Laravel Website-Schwachstellen behebt

Wie Laravel Website-Schwachstellen behebt

藏色散人
藏色散人nach vorne
2020-06-12 15:11:503803Durchsuche

Die folgende von Laravel entwickelte Tutorial-Kolumne stellt Ihnen die Methode von Laravel zur Behebung von Website-Schwachstellen vor. Ich hoffe, dass sie Freunden, die sie benötigen, hilfreich sein wird.

Wie Laravel Website-Schwachstellen behebt

Das Laravel-Framework ist ein Entwicklungsframework, das derzeit von vielen Websites und APP-Betreibern verwendet wird. Da so viele Websites verwendet werden, greifen viele Angreifer ständig an. Wir haben Schwachstellentests durchgeführt Als wir Schwachstellentests auf dem System durchführten, stellten wir fest, dass es sich hauptsächlich um eine XSRF-Schwachstelle handelte, wie man sie ausnutzt und wie man sie behebt

Die Ausnutzung dieser Laravel REC-Schwachstelle erfordert, dass der APP_KEY durchgesickert ist, bevor er erfolgreich ausgenutzt und ausgelöst werden kann. Es gibt zwei Stellen, an denen Website-Schwachstellen auftreten können Feld im Post-Paket, und das andere ist das HTTP-Header-Feld, das bösartigen Code in das Website-Backend einfügen kann.

Lassen Sie uns einen Blick auf die Umgebung für Website-Schwachstellentests werfen. Wir verwenden das Linux-Centos-System , PHP5.5-Version, die Datenbank ist MySQL und wird in der Apache-Umgebung erstellt. Zuerst gehen wir zur offiziellen Website, um die Version herunterzuladen und in das Apache-Einstellungsverzeichnis zu entpacken Zunächst können wir in unseren Beitragsdaten sehen, dass wir in unserem Code mehr als ein Dutzend Klassen aufrufen, Objekte in den Klassen aufrufen und Parameter zuweisen. Wir haben festgestellt, dass app_key dies kann zur Ausnutzung von Sicherheitslücken verwendet werden:

Wie Laravel Website-Schwachstellen behebt

Der Code lautet wie folgt:

POST / HTTP/1.2
Host: 127.0.0.2:80
Cookie: safe_SESSION=PHPSTORM; 5LqG5L+d6K+B5omA6L6T5Ye655qE57yW56CB5L2N5Y+v6K+75a2X56ym77yMQmFzZTY05Yi25a6a5LqG5LiA5Liq57yW56CB6KGo77yM5Lul5L6/6L+b6KGM57uf5LiA6L2s5o2i44CC57yW56CB6KGo55qE5aSn5bCP5Li6Ml42PTY077yM6L+Z5Lmf5pivQmFzZTY05ZCN56ew55qE55Sx5p2l44CCDQoNCkJhc2U2NOe8lueggeihqA==;
Content-Type: application/x-www-form-
Connection: open
Content-Length: 1

Im obigen Code ist er in Der verschlüsselte Wert ist das, was wir wollen. Der gefälschte Angriffscode sendet die POST-Anfrage an die Website. Sie entschlüsselt zunächst den APP_key und weist ihm einen Wert zu Deserialisieren Sie es und dann wird die RCE-Sicherheitslücke ausgelöst.

Verwenden Sie die Sicherheitslücke in der HTTP-Header-Methode. Zuerst erstellen wir einen Code, der Cookies ähnelt :

POST / HTTP/1.2
Host: 127.0.0.2:80
X-XSRF-TOKEN: +B5omA6L6T5Ye655qE57yW56CB5L2N5Y+v6K+75a2X56ym77yMQmFzZTY05Yi25a6a5LqG5LiA5Liq57yW56CB6KGo77yM5Lul5L6/6L+b6KGM57uf5LiA6L2s5o2i44CC57yW56CB6KGo55qE5aSn5bCP5Li6Ml42PTY077yM6L+Z5Lmf5pivQmFzZTY05ZCN56ew55qE55Sx5p2l44CCDQoNCkJhc2U2NOe8lueggeihqA==;
Content-Type: application/x-www-form-
Connection: open
Content-Length: 1

Wie Laravel Website-Schwachstellen behebt

Sehen Sie sich den X-XSRF-TOKEN:-Wert hier an. Das Laravel-Framework beurteilt und überprüft diesen Wert während des Übermittlungsprozesses Der Deserialisierungsvorgang wird hier nicht einzeln beschrieben.

Wie kann die Sicherheitslücke in Laravel behoben werden?

Unsere SINE-Sicherheitstechnologie hat die Laravel-Version aktualisiert und festgestellt, dass die neueste Version 5.6.30 die RCE-Sicherheitslücke aufweist. Aus unserem Codevergleich können wir ersehen, dass die Entschlüsselungs- und Analysevorgänge von Cookies beurteilt und der static::serialized()-Wert geschrieben wurden Dies ist auch der Wert von X-XSRF-TOKEN. Wenn Sie nicht viel über den Code wissen, können Sie ihn auch von einem professionellen Website-Sicherheitsunternehmen reparieren lassen. Ich hoffe auch, dass durch diesen Austausch mehr Menschen die Schwachstellen der Website, die Ursachen von Schwachstellen und deren Behebung verstehen können. Nur wenn die Website sicher ist, können wir den Markt frei entwickeln und gute Arbeit im Marketing leisten.

Das obige ist der detaillierte Inhalt vonWie Laravel Website-Schwachstellen behebt. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:aliyun.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen