Input Sanitization tatsächlich nicht notwendig? :O
bearbeitet von Raketenwilli> Gegeben: $_POST["username"] und $_POST["passwort"]
>
> ...solange ich diese nicht z.B. in einer Datenbank abspeichere,
Nun, das Passwort wirst Du ja hoffentlich [durch die Password-Funktionen jagen](https://www.php.net/manual/en/function.password-verify.php). Aber der Benutzername? Der steht häufig mit dem Hash des Passworts in der Datenbank…
Aus
~~~
SELECT `pw_hash` FROM `shadow` WHERE username='$_POST["username"]';
~~~
kann bei der Ersetzung ganz fix ...
~~~SQL
SELECT `pw_hash` FROM `shadow` WHERE username='';UPDATE shadow SET `pw_hash`='$2y$10$V2yZerKdNLhJiExdhBsQyuD3CcQwiUqelw6EnPlmj4oYM5OMBJoHC';
~~~
... werden.
Dazu muss nur
~~~
';UPDATE shadow SET `pw_hash`='$2y$10$V2yZerKdNLhJiExdhBsQyuD3CcQwiUqelw6EnPlmj4oYM5OMBJoHC
~~~
als „Passwort“ übermittelt werden - und schon hat jeder Nutzer "hallo" als Passwort". (Bevor jemand damit kommt: Konkret ist nochwas nötig…)
> "Angefangen" hat alles mit der Überlegung, was wohl passieren würde, wenn ich ein Passwort, das "&<>", etc. enthält, durch htmlspecialchars, filter_var, etc. jage, da dieses ja dann mit < etc. verfälscht würde.
Du willst das [**bitte richtig filtern**](https://wiki.selfhtml.org/wiki/Programmiertechnik/Kontextwechsel/erkennen_und_behandeln). [Es kommt auf den Kontext an, in welchen gewechselt wird](https://wiki.selfhtml.org/wiki/Programmiertechnik/Kontextwechsel)!
Input Sanitization tatsächlich nicht notwendig? :O
bearbeitet von Raketenwilli> Gegeben: $_POST["username"] und $_POST["passwort"]
>
> ...solange ich diese nicht z.B. in einer Datenbank abspeichere,
Nun, das Passwort wirst Du ja hoffentlich [durch die Password-Funktionen jagen](https://www.php.net/manual/en/function.password-verify.php). Aber der Benutzername? Der steht häufig mit dem Hash des Passworts in der Datenbank…
Aus
~~~
SELECT pw_hash FROM shadow where username='$_POST["username"]';
~~~
kann bei der Ersetzung ganz fix ...
~~~SQL
SELECT pw_hash FROM shadow WHERE username='';UPDATE shadow SET `pw_hash`='$2y$10$V2yZerKdNLhJiExdhBsQyuD3CcQwiUqelw6EnPlmj4oYM5OMBJoHC';
~~~
... werden.
Dazu muss nur
~~~
';UPDATE shadow SET `pw_hash`='$2y$10$V2yZerKdNLhJiExdhBsQyuD3CcQwiUqelw6EnPlmj4oYM5OMBJoHC
~~~
als „Passwort“ übermittelt werden - und schon hat jeder Nutzer "hallo" als Passwort". (Bevor jemand damit kommt: Konkret ist nochwas nötig…)
> "Angefangen" hat alles mit der Überlegung, was wohl passieren würde, wenn ich ein Passwort, das "&<>", etc. enthält, durch htmlspecialchars, filter_var, etc. jage, da dieses ja dann mit < etc. verfälscht würde.
Du willst das [**bitte richtig filtern**](https://wiki.selfhtml.org/wiki/Programmiertechnik/Kontextwechsel/erkennen_und_behandeln). [Es kommt auf den Kontext an, in welchen gewechselt wird](https://wiki.selfhtml.org/wiki/Programmiertechnik/Kontextwechsel)!
Input Sanitization tatsächlich nicht notwendig? :O
bearbeitet von Raketenwilli> Gegeben: $_POST["username"] und $_POST["passwort"]
>
> ...solange ich diese nicht z.B. in einer Datenbank abspeichere,
Nun, das Passwort wirst Du ja hoffentlich [durch die Password-Funktionen jagen](https://www.php.net/manual/en/function.password-verify.php). Aber der Benutzername? Der steht häufig mit dem Hash des Passworts in der Datenbank…
Aus
~~~
SELECT pw_hash FROM shadow where username='$_POST["username"]';
~~~
kann bei der Ersetzung ganz fix ...
~~~SQL
SELECT pw_hash FROM shadow WHERE username='';UPDATE shadow SET `pw_hash`='$2y$10$V2yZerKdNLhJiExdhBsQyuD3CcQwiUqelw6EnPlmj4oYM5OMBJoHC';
~~~
... werden.
Dazu muss nur
~~~
';UPDATE shadow SET `pw_hash`='$2y$10$V2yZerKdNLhJiExdhBsQyuD3CcQwiUqelw6EnPlmj4oYM5OMBJoHC
~~~
als „Passwort“ übermittelt werden - und schon hat jeder Nutzer "hallo" als Passwort". (Bevor jemand damit kommt: Konkret ist nochwas nötig…)
> "Angefangen" hat alles mit der Überlegung, was wohl passieren würde, wenn ich ein Passwort, das "&<>", etc. enthält, durch htmlspecialchars, filter_var, etc. jage, da dieses ja dann mit < etc. verfälscht würde.
Du willst das **bitte richtig filtern**. [Es kommt auf den Kontext an, in welchen gewechselt wird](https://wiki.selfhtml.org/wiki/Programmiertechnik/Kontextwechsel)!
Input Sanitization tatsächlich nicht notwendig? :O
bearbeitet von Raketenwilli> Gegeben: $_POST["username"] und $_POST["passwort"]
>
> ...solange ich diese nicht z.B. in einer Datenbank abspeichere,
Nun, das Passwort wirst Du ja hoffentlich [durch die Password-Funktionen jagen](https://www.php.net/manual/en/function.password-verify.php). Aber der Benutzername?
Aus
~~~
SELECT pw_hash FROM shadow where username='$_POST["username"]';
~~~
kann bei der Ersetzung ganz fix ...
~~~SQL
SELECT pw_hash FROM shadow WHERE username='';UPDATE shadow SET `pw_hash`='$2y$10$V2yZerKdNLhJiExdhBsQyuD3CcQwiUqelw6EnPlmj4oYM5OMBJoHC';
~~~
... werden.
Dazu muss nur
~~~
';UPDATE shadow SET `pw_hash`='$2y$10$V2yZerKdNLhJiExdhBsQyuD3CcQwiUqelw6EnPlmj4oYM5OMBJoHC
~~~
als „Passwort“ übermittelt werden - und schon hat jeder Nutzer "hallo" als Passwort". (Bevor jemand damit kommt: Konkret ist nochwas nötig…)
> "Angefangen" hat alles mit der Überlegung, was wohl passieren würde, wenn ich ein Passwort, das "&<>", etc. enthält, durch htmlspecialchars, filter_var, etc. jage, da dieses ja dann mit < etc. verfälscht würde.
Du willst das **bitte richtig filtern**. [Es kommt auf den Kontext an, in welchen gewechselt wird](https://wiki.selfhtml.org/wiki/Programmiertechnik/Kontextwechsel)!
Input Sanitization tatsächlich nicht notwendig? :O
bearbeitet von Raketenwilli> Gegeben: $_POST["username"] und $_POST["passwort"]
>
> ...solange ich diese nicht z.B. in einer Datenbank abspeichere,
Nun, das Passwort wirst Du ja hoffentlich [durch die Password-Funktionen jagen](https://www.php.net/manual/en/function.password-verify.php). Aber der Benutzername?
Aus
~~~
SELECT pw_hash FROM shadow where username='$_POST["username"]';
~~~
kann bei der Ersetzung ganz fix ...
~~~
SELECT pw_hash FROM shadow WHERE username='';UPDATE shadow SET `pw_hash`='$2y$10$V2yZerKdNLhJiExdhBsQyuD3CcQwiUqelw6EnPlmj4oYM5OMBJoHC';
~~~
... werden.
Dazu muss nur
~~~
';UPDATE shadow SET `pw_hash`='$2y$10$V2yZerKdNLhJiExdhBsQyuD3CcQwiUqelw6EnPlmj4oYM5OMBJoHC
~~~
als Passwort übermittelt werden - und schon hat jeder Nutzer "hallo" als Passwort". (Bevor jemand damit kommt: Konkret ist nochwas nötig…)
> "Angefangen" hat alles mit der Überlegung, was wohl passieren würde, wenn ich ein Passwort, das "&<>", etc. enthält, durch htmlspecialchars, filter_var, etc. jage, da dieses ja dann mit < etc. verfälscht würde.
Du willst das **bitte richtig filtern**. [Es kommt auf den Kontext an, in welchen gewechselt wird](https://wiki.selfhtml.org/wiki/Programmiertechnik/Kontextwechsel)!
Input Sanitization tatsächlich nicht notwendig? :O
bearbeitet von Raketenwilli> Gegeben: $_POST["username"] und $_POST["passwort"]
>
> ...solange ich diese nicht z.B. in einer Datenbank abspeichere,
Nun, das Passwort wirst Du ja hoffentlich durch die Password-Funktionen jagen. Aber der Benutzername?
Aus
~~~
SELECT pw_hash FROM shadow where username='$_POST["username"]';
~~~
kann bei der Ersetzung ganz fix ...
~~~
SELECT pw_hash FROM shadow WHERE username='';UPDATE shadow SET `pw_hash`='$2y$10$V2yZerKdNLhJiExdhBsQyuD3CcQwiUqelw6EnPlmj4oYM5OMBJoHC';
~~~
... werden.
Dazu muss nur
~~~
';UPDATE shadow SET `pw_hash`='$2y$10$V2yZerKdNLhJiExdhBsQyuD3CcQwiUqelw6EnPlmj4oYM5OMBJoHC
~~~
als Passwort übermittelt werden - und schon hat jeder Nutzer "hallo" als Passwort". (Bevor jemand damit kommt: Konkret ist nochwas nötig…)
> "Angefangen" hat alles mit der Überlegung, was wohl passieren würde, wenn ich ein Passwort, das "&<>", etc. enthält, durch htmlspecialchars, filter_var, etc. jage, da dieses ja dann mit < etc. verfälscht würde.
Du willst das **bitte richtig filtern**. [Es kommt auf den Kontext an, in welchen gewechselt wird](https://wiki.selfhtml.org/wiki/Programmiertechnik/Kontextwechsel)!
Input Sanitization tatsächlich nicht notwendig? :O
bearbeitet von Raketenwilli> Gegeben: $_POST["username"] und $_POST["passwort"]
>
> ...solange ich diese nicht z.B. in einer Datenbank abspeichere,
Nun, das Passwort wirst Du ja hoffentlich durch die Password-Funktionen jagen. Aber der Benutzername?
Aus
~~~
SELECT pw_hash FROM shadow where username='$_POST["username"]';
~~~
kann bei der Ersetzung ganz fix ...
~~~
SELECT pw_hash FROM shadow WHERE username='';UPDATE shadow SET `pw_hash`='$2y$10$V2yZerKdNLhJiExdhBsQyuD3CcQwiUqelw6EnPlmj4oYM5OMBJoHC';
~~~
... werden.
(Dazu muss nur
~~~
';UPDATE shadow SET `pw_hash`='$2y$10$V2yZerKdNLhJiExdhBsQyuD3CcQwiUqelw6EnPlmj4oYM5OMBJoHC
~~~
als Passwort übermittelt werden - und schon hat jeder Nutzer "hallo als Passwort"). (Bevor jemand damit kommt: Konkret ist nochwas nötig…)
> "Angefangen" hat alles mit der Überlegung, was wohl passieren würde, wenn ich ein Passwort, das "&<>", etc. enthält, durch htmlspecialchars, filter_var, etc. jage, da dieses ja dann mit < etc. verfälscht würde.
Du willst das **bitte richtig filtern**. [Es kommt auf den Kontext an, in welchen gewechselt wird](https://wiki.selfhtml.org/wiki/Programmiertechnik/Kontextwechsel)!
Input Sanitization tatsächlich nicht notwendig? :O
bearbeitet von Raketenwilli> Gegeben: $_POST["username"] und $_POST["passwort"]
>
> ...solange ich diese nicht z.B. in einer Datenbank abspeichere,
Nun, das Passwort wirst Du ja hoffentlich durch die Password-Funktionen jagen. Aber der Benutzername?
Aus
~~~
SELECT pw_hash FROM shadow where username='$_POST["username"]';
~~~
kann bei der Ersetzung ganz fix ...
~~~
SELECT pw_hash FROM shadow WHERE username='';UPDATE shadow SET `pw_hash`='$2y$10$V2yZerKdNLhJiExdhBsQyuD3CcQwiUqelw6EnPlmj4oYM5OMBJoHC';
~~~
... werden.
(Dazu muss nur
~~~
';UPDATE shadow SET `pw_hash`='$2y$10$V2yZerKdNLhJiExdhBsQyuD3CcQwiUqelw6EnPlmj4oYM5OMBJoHC
~~~
als Passwort übermittelt werden)
> "Angefangen" hat alles mit der Überlegung, was wohl passieren würde, wenn ich ein Passwort, das "&<>", etc. enthält, durch htmlspecialchars, filter_var, etc. jage, da dieses ja dann mit < etc. verfälscht würde.
Du willst das **bitte richtig filtern**. [Es kommt auf den Kontext an, in welchen gewechselt wird](https://wiki.selfhtml.org/wiki/Programmiertechnik/Kontextwechsel)!