Tutorial: Cookie "SameSite"-Attribut Fix

Tutorial Übersicht Tutorial Übersicht  >>  ET-Chat ET-Chat

Cookie "SameSite"-Attribut Fix
Von: Harlekin am: 13.01.2023 - 09:27 Gelesen 890 x gelesen Tutorial drucken

Werbung:
ALL INKL



In PHP 7.3 wurde eine alternative Signatur, die ein options-Array unterstützt, hinzugefügt. Diese Signatur unterstützt auch das Setzen des SameSite-Cookie-Attributs.
Samesite Attribute: None, Lax oder Strict

Um das jetzt in den ET-Chat zu bekommen, müsst ihr Änderungen in den folgenden Dateien machen:
Blacklist.class.php, ChangePw.class.php, CheckUserName.class.php, Index.class.php und UserCheckerAndInserter.class.php

1. öffne die Blacklist.class.php
sucht:
Code Alles auswählen
setcookie("cookie_etchat_blacklist_until", $this->user_bann_time, $this->user_bann_time, "/"); 
         setcookie("cookie_etchat_blacklist_ip", $this->user_param_all, $this->user_bann_time, "/");

ersetzt das mit:
Code Alles auswählen
setcookie("cookie_etchat_blacklist_until", $this->user_bann_time, ["expires"  => $this->user_bann_time, "path" => "/", "samesite" => "lax"]);
         setcookie("cookie_etchat_blacklist_ip", $this->user_param_all, ["expires"  => $this->user_bann_time, "path" => "/", "samesite" => "lax"]);



2. öffne die ChangePw.class.php
sucht:
Code Alles auswählen
setcookie("cookie_etchat_nik_registered", "1", time()+(24*3600), "/");

ersetzt das mit:
Code Alles auswählen
setcookie("cookie_etchat_nik_registered", "1", ["expires"  => time()+(24*3600), "path" => "/", "samesite" => "lax"]);



3. öffne die CheckUserName.class.php
sucht:
Code Alles auswählen
setcookie("cookie_anzahl_logins_in_XX_sek",1);

ersetzt das mit:
Code Alles auswählen
setcookie("cookie_anzahl_logins_in_XX_sek",1,["samesite" => "lax"]);


sucht:
Code Alles auswählen
setcookie("cookie_last_login", date('U'));
         setcookie("cookie_anzahl_logins_in_XX_sek",1);

ersetzt das mit:
Code Alles auswählen
setcookie("cookie_last_login", date('U'), ["samesite" => "lax"]);
         setcookie("cookie_anzahl_logins_in_XX_sek",1,["samesite" => "lax"]);


sucht:
Code Alles auswählen
setcookie("cookie_anzahl_logins_in_XX_sek", $c_anzahl_logins);

ersetzt das mit:
Code Alles auswählen
setcookie("cookie_anzahl_logins_in_XX_sek", $c_anzahl_logins, ["samesite" => "lax"]);


sucht:
Code Alles auswählen
setcookie("cookie_last_login", date('U'));

ersetzt das mit:
Code Alles auswählen
setcookie("cookie_last_login", date('U'), ["samesite" => "lax"]);


sucht:
Code Alles auswählen
setcookie("cookie_last_login", date('U'));
            setcookie("cookie_anzahl_logins_in_XX_sek", 1);

ersetzt das mit:
Code Alles auswählen
setcookie("cookie_last_login", date('U'), ["samesite" => "lax"]);
            setcookie("cookie_anzahl_logins_in_XX_sek", 1, ["samesite" => "lax"])


sucht:
Code Alles auswählen
setcookie("cookie_anzahl_logins_in_XX_sek",1);

ersetzt das mit:
Code Alles auswählen
setcookie("cookie_anzahl_logins_in_XX_sek",1,["samesite" => "lax"]);



4. öffne die Index.class.php
sucht:
Code Alles auswählen
setcookie($this->_prefix."cookie_test", date('U'));

ersetzt das mit:
Code Alles auswählen
setcookie($this->_prefix."cookie_test", date('U'), ["samesite" => "lax"]);



5. öffne die UserCheckerAndInserter.class.php
sucht:
Code Alles auswählen
$_SESSION['etchat_'.$this->_prefix.'user_priv']=='mod') setcookie("cookie_anzahl_logins_in_XX_sek",1);

ersetzt das mit:
Code Alles auswählen
$_SESSION['etchat_'.$this->_prefix.'user_priv']=='mod') setcookie("cookie_anzahl_logins_in_XX_sek",1,["samesite" => "lax"]);


sucht:
Code Alles auswählen
$_SESSION['etchat_'.$this->_prefix.'user_priv']=='mod') setcookie("cookie_anzahl_logins_in_XX_sek",1);

ersetzt das mit:
Code Alles auswählen
$_SESSION['etchat_'.$this->_prefix.'user_priv']=='mod') setcookie("cookie_anzahl_logins_in_XX_sek",1,["samesite" => "lax"]);


Fertig.
Ich hoffe, ich hab jetzt nichts vergessen, wenn doch bitte melden.
War dieses Tutorial hilfreich für dich?
Nur Mitglieder können abstimmen!
Für 2 der Mitglieder war es hilfreich.
Für 0 der Mitglieder nicht.


Login
Name oder Email

Passwort



Noch kein Mitglied?
Klicke hier um dich zu registrieren

Passwort vergessen?
Um ein neues Passwort anzufordern klicke hier.
Wer ist im Chat?
Gastzugang geschlossen!

0 User im Chat
Teamspeak
Harlekins Welt
Eingangshalle
« ★ » Allgemein « ★ »
Laberecke
Harlekin
Quasselbox
Up & Download
« ❑ » Intern « ❑ »
Besprechung
« ● » Abwesend « ● »
kurz < 30 Min.
lang > 30 Min.

Discord

Joinen
Slider
Security
Geschützt durch:
HP-Detect
Werbung
Lunaria-Galaxie

Über HP-4-Fun

HP-4-Fun

ist ein privates, nicht kommerzielles, Projekt, welches 2019 von Rolly8-HL und mir (Harlekin) gestartet wurde.

HP-4-Fun 2.0 ist nur für den Eigenbedarf geschrieben worden. Ein Downloadpaket von HP-4-Fun 2.0 wird es nicht geben!

Letzte Kommentare

Informationen

Zuletzt Online