Automattic / Automattic/VIP-Coding-Standards

WordPressVIPMinimum.Variables.ServerVariables.UserControlledHeaders wrong & incomplete

Offen
#477 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
Vorherrschende Sprache
PHP
Sterne
261
Forks
44
Ø Merge
19 Min.
Gemergte PRs (30 T.)
1

Beschreibung

1) I get 1) WordPressVIPMinimum.Variables.ServerVariables.UserControlledHeaders even when it's perfectly fine sanitized:

`$user_ip = filter_var( $_SERVER['HTTP_X_FORWARDED_FOR'], FILTER_VALIDATE_IP );`

or with wp only functions (though I'm not sure if it really is properly sanitized then)

`sanitize_text_field( wp_unslash( $_SERVER['HTTP_X_FORWARDED_FOR'] ) )`

What is the correct way of validating this this sniff expects?

2) this error doesn't make much sense, as it's limited to 3 headers. But there is an arbitrary number of HTTP headers the client could send which would not trigger this error but may be used.
E.g. when using cloudflare there's also the CF_IPCOUNTRY,... headers which would also need to be added to the check.

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

Beginne damit, den Sniff WordPressVIPMinimum.Variables.ServerVariables.UserControlledHeaders zu finden und sein Verhalten anhand der beiden PHP-Beispiele im Bericht nachzustellen. Untersuche, wie er Validierung erkennt und welche Client-Header er prüft, und ermittle anschließend die Tests oder Fixtures, die das erwartete Verhalten festlegen. Erledigt ist die Aufgabe, wenn die Hinweise zur Validierung und die Abdeckung der Header explizit gemacht und verifiziert wurden.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
php, wordpress
Bereich
security, tooling
Issue-Typ
Bug
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Muss geklärt werden
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.