Lösung: 1. Verwenden Sie Laravel, um für jede Benutzersitzung automatisch ein „CSRF-Token“ zu generieren. Dieses Token kann verwendet werden, um zu überprüfen, ob der angemeldete Benutzer und der Anforderer dieselbe Person sind. 2 . Geben Sie die globale Hilfefunktion „csrf_token“ an, um den Token-Code im Ansichtsübermittlungsformular zu erhalten. Die Syntax lautet „<...value php="">". .
Die Betriebsumgebung dieses Artikels: Windows 10-System, Laravel Version 9, Dell G3-Computer.
Lösung für CSRF-Angriffe in Laravel
CSRF ist die englische Abkürzung für Cross-Site Request Forgery;
Das Vermeiden von CSRF-Angriffen im Laravel-Framework ist sehr einfach:
1. Laravel stellt automatisch eine Lösung für jeden Benutzer bereit CSRF-Token, mit dem überprüft werden kann, ob der angemeldete Benutzer und der Anforderer dieselbe Person sind. Andernfalls schlägt die Anfrage fehl. (Das Prinzip ist das gleiche wie beim Bestätigungscode.)
2. Laravel bietet eine globale Hilfsfunktion csrf_token, um den Token-Wert zu erhalten, sodass Sie nur den folgenden HTML-Code zum Ansichtsübermittlungsformular hinzufügen müssen, um das Token einzufügen Anfrage:
<input type="hidden" name="_token" value="<?php echo csrf_token(); ?>">
So vermeiden Sie CSRF-Angriffe in Laravel
Fall: Implementieren Sie die Überprüfung des CSRF-Mechanismus durch Fälle
1. Erstellen Sie zwei Routen, eine zum Anzeigen des Formulars (get) und die andere zum Verarbeiten von Anfragen (post)
Route::get('test6','Home\TestController@test6');Route::post('test7','Home\TestController@test7');
2. Erstellen Sie die Anforderungsmethode
public function test6(){ return view('home.test.test6'); } public function test7() { return "请求提交成功"; }
3. Erstellen Sie das einfache Formular, das Sie benötigen. Senden Sie den Effekt (Fehlerseite). Fazit: Durch den Fall gerade wird gezeigt, dass die csrf Der Verifizierungsmechanismus in Laravel ist standardmäßig aktiviert.
5. Lösen Sie das Fehlerproblem (wie man die CSRF-Überprüfung besteht) Lösung: Bringen Sie den für CSRF erforderlichen Token-Wert und übergeben Sie ihn mit der Anfrage an die nachfolgende Methode
Vereinfachung der csrf_token-Methode: {
{csrf_field( )}} Spezifische Ausdrucksform:
Der Unterschied zwischen den beiden:
Csrf_field gibt ein gesamtes verstecktes Eingabefeld aus.
Wie man es bei späterer Verwendung auswählt: In den meisten Fällen In bestimmten Fällen können Sie die Situation selbst auswählen. Es gibt jedoch eine Situation, in der der Entwickler kein Wahlrecht hat und csrf_token verwenden muss. In diesem Fall wird die asynchrone Formularübermittlungsmethode verwendet.Ausnahmerouten von der CSRF-Validierung ausschließen
Nicht alle Anfragen müssen CSRF-Angriffe vermeiden, wie etwa Anfragen an APIs von Drittanbietern, um Daten abzurufen.
Sie können die auszuschließende Anforderungs-URL zum Attributarray $exclusive in der VerifyCsrfToken-Middleware (app/Http/Middleware/VerifyCsrfToken.php) hinzufügen:
Schreiben eines einzelnen Routenausschlusses
'home.test.test6',
Mehrere The Elemente werden durch "," getrennt und folgen der Array-Schreibmethode. 'home.test.test6','home.test.test7'
Wenn Sie alle Routen ausschließen und CSRF verwenden müssen, können Sie schreiben:
'*'
[Verwandte Empfehlungen:
Laravel-Video-Tutorial
Das obige ist der detaillierte Inhalt vonLösung für CSRF-Angriff in Laravel. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

TenhanceEngagement undCohesionamongdistributedTeamsbeyondzoom, ImplementtheSstrategien: 1) organizevirtualcoffeebreaksforinformAlchats, 2) UseasynchronoUtoolSlikeslackForn-Workdiskussions, 3) EinführunggamifizierungwithteamsorchhallEnges und 4) Ermutigung

Laravel10introducesseveralbreakingchanges:1)ItrequiresPHP8.1orhigher,2)TheRouteServiceProvidernowusesabootmethodforloadingroutes,3)ThewithTimestamps()methodonEloquentrelationshipsisdeprecated,and4)TheRequestclassnowpreferstherules()methodforvalidatio

TomaintainfocusandMotivationInremotework, CreateastructuredEnvironment, ManagedigitalDistractions, Fostermotivation ThroughSocialinteractions und GoAlseting, Wartenwork-LifeBalance, Anduappropripriatetetechnology.1) SetUpadededWorkspaceanDstifttoAroutine.

TofostercollaborationandTrustinremoteteams, ImplementierungstheSstrategien: 1) etabluläre, strukturierte CommunicationWithPersonalCheck-Ins, 2) UseCollaborativetoolsFortranSparenz, 3) Erkennungsfähigkeit von FosteracultureOfTandadaptability.

Zu den neuesten Versionen von Laravel der Hauptfunktionen gehören: 1. Laraveloctane verbessert die Anwendungsleistung, 2. Verbesserte Model Factory -Support -Beziehungen und Zustandsdefinitionen. Diese Merkmale verbessern die Entwicklungseffizienz und die Anwendungsleistung erheblich, müssen jedoch mit Vorsicht verwendet werden, um potenzielle Probleme zu vermeiden.

Tocombatisolationandloninessinremotework, CompaniessHouldImplementRegular, bedeutungsvolle Interaktionen, Bereitstellung von AusreichungstrowThopportunities, andusetechnology effective.) fostergenuineConnections ThroughvirtualCoffeebreaksandPersonalSharing.2) EnterurineConctions

Laravelispopularforfull-stackdevelopment

Zu den wichtigsten Faktoren für die Auswahl einer Videokonferenzplattform gehören die Benutzeroberfläche, die Sicherheit und die Funktionalität. 1) Die Benutzeroberfläche sollte intuitiv sein, z. B. Zoom. 2) Die Sicherheit muss beachtet werden, und Microsoft Teams bietet eine End-to-End-Verschlüsselung. 3) Funktionen müssen die Anforderungen entsprechen, Googlemeet eignet sich für kurze Besprechungen, und Ciscowebe bietet erweiterte Kollaborations -Tools.


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

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

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

SAP NetWeaver Server-Adapter für Eclipse
Integrieren Sie Eclipse mit dem SAP NetWeaver-Anwendungsserver.

ZendStudio 13.5.1 Mac
Leistungsstarke integrierte PHP-Entwicklungsumgebung

MantisBT
Mantis ist ein einfach zu implementierendes webbasiertes Tool zur Fehlerverfolgung, das die Fehlerverfolgung von Produkten unterstützen soll. Es erfordert PHP, MySQL und einen Webserver. Schauen Sie sich unsere Demo- und Hosting-Services an.

PHPStorm Mac-Version
Das neueste (2018.2.1) professionelle, integrierte PHP-Entwicklungstool
