FixVibe
Covered by FixVibehigh

CSRF Schutz: Verteidegung Géint Onerlaabt Staat Ännerungen

Cross-Site Request Forgery (CSRF) bleift eng bedeitend Bedrohung fir Webapplikatiounen. Dës Fuerschung entdeckt wéi modern Kaderen wéi Django Schutz implementéieren a wéi Browser-Niveau Attributer wéi SameSite Verteidegung-an-Déift géint onerlaabt Ufroe bidden.

CWE-352

Impakt

Cross-Site Request Forgery (CSRF) erlaabt en Ugräifer de Browser vun engem Affer ze tricken fir onerwënscht Handlungen op enger anerer Websäit ze maachen, wou d'Affer am Moment authentifizéiert ass. Well Browser automatesch Ambient-Umeldungsinformatioune wéi Cookien an Ufroen enthalen, kann en Ugräifer Staatsverännerungsoperatioune maachen - wéi Passwuert änneren, Daten läschen oder Transaktiounen initiéieren - ouni de Benotzer säi Wëssen.

Root Ursaach

Déi fundamental Ursaach vum CSRF ass de Standardverhalen vum Webbrowser fir Cookien ze schécken, déi mat engem Domain verbonne sinn, wann ëmmer eng Ufro un dat Domain gemaach gëtt, onofhängeg vun der Ufro hir Hierkonft [S1]. Ouni spezifesch Validatioun datt eng Ufro bewosst vun der eegener User-Interface vun der Applikatioun ausgeléist gouf, kann de Server net tëscht enger legitimer Benotzeraktioun an enger geschmiedem ënnerscheeden.

Django CSRF Schutz Mechanismen

Django bitt en agebaute Verteidegungssystem fir dës Risiken duerch Middleware a Schablounintegratioun ze reduzéieren [S2].

Middleware Aktivatioun

Den django.middleware.csrf.CsrfViewMiddleware ass verantwortlech fir CSRF Schutz an ass typesch als Standard [S2] aktivéiert. Et muss virun all Vue Mëttleren positionéiert ginn, datt ugeholl CSRF Attacke schonn [S2] gehandhabt ginn.

Schabloun Ëmsetzung

Fir all intern POST Formen mussen d'Entwéckler den {% csrf_token %} Tag am <form> Element [S2] enthalen. Dëst garantéiert datt en eenzegaartegen, geheime Token an der Ufro abegraff ass, déi de Server dann géint d'Sessioun vum Benotzer validéiert.

Token Leckage Risiken

E kriteschen Implementatiounsdetail ass datt den {% csrf_token %} ni a Forme mat abegraff sinn, déi extern URLen [S2] zielen. Maachen dëst géif de geheime CSRF Token un eng Drëtt Partei lekken, potenziell d'Sessiounssécherheet vum Benotzer [S2] kompromittéieren.

Browser-Niveau Verteidegung: SameSite Cookien

Modern Browser hunn den SameSite Attribut fir den Set-Cookie Header agefouert fir eng Schicht vun der Verteidegung-an-Déift [S1] ze bidden.

  • Streng: De Cookie gëtt nëmmen an engem Kontext vun der éischter Partei geschéckt, dat heescht datt de Site an der URL Bar entsprécht dem Cookie säin Domain [S1].
  • Lax: De Cookie gëtt net op Cross-Site Subufroen (wéi Biller oder Frames) geschéckt, awer gëtt geschéckt wann e Benotzer op d'Origine Site navigéiert, sou wéi duerch e Standardlink [S1].

Wéi FixVibe Tester fir et

FixVibe enthält elo CSRF Schutz als gated aktive Scheck. No Domain Verifizéierung, active.csrf-protection inspizeiert entdeckt Staatsännerungsformen, iwwerpréift fir CSRF-Token-förmleche Inputen a SameSite Cookie Signaler, probéiert dann eng Low-Impact Forged-Origine Soumissioun a bericht nëmmen wann de Server et acceptéiert. Cookie Kontrollen Fändel och schwaach SameSite Attributer déi CSRF Verteidegung-an-Déift reduzéieren.