Zabezpieczenie formularza przed atakami CSRF

Założenie: Zabezpieczmy formularz przed atakami Cross-Site Request Forgery (CSRF) generując i weryfikując unikalne tokeny CSRF.

Krok po kroku:

  1. Generowanie tokenu CSRF: Generujemy losowy token i zapisujemy go w sesji użytkownika.
    
    
    

    Ten kod generuje losowy token o długości 64 znaków (używając funkcji `bin2hex` i `random_bytes`) i zapisuje go w zmiennej sesji `csrf_token`. Jeśli zmienna sesji nie istnieje, token jest generowany.

  2. Dodanie tokenu do formularza: Dodajemy ukryte pole do formularza, które przechowuje wygenerowany token.
    
    

    To dodaje ukryte pole o nazwie `csrf_token` do formularza, przechowując w nim wartość tokena.

  3. Weryfikacja tokenu: Po wysłaniu formularza, weryfikujemy czy token z formularza zgadza się z tokenem zapisanym w sesji.
    
    
    

    Ten kod sprawdza, czy token przesłany w formularzu (`$_POST[‘csrf_token’]`) jest identyczny z tokenem zapisanym w sesji. Jeśli nie, wyświetlany jest komunikat o błędzie.

Pamiętaj, aby zawsze uruchamiać `session_start()` na początku każdego skryptu, który korzysta z sesji.

Ten przykład pokazuje podstawowe zabezpieczenie przed atakami CSRF. Dla bardziej zaawansowanych zastosowań, rozważ użycie bibliotek lub frameworków, które oferują bardziej kompleksowe rozwiązania.

Dodaj komentarz 0

Your email address will not be published. Required fields are marked *