Compare commits
2 Commits
mitigation
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
| a4db1d2459 | |||
| 983e38d3c8 |
@ -2,7 +2,7 @@
|
|||||||
XSS, cross-site scripting, is een methode waarmee je remote code execution
|
XSS, cross-site scripting, is een methode waarmee je remote code execution
|
||||||
kan behalen in een browser. Dit bereik je door een vertrouwde server kwaadaardige content te laten serveren.
|
kan behalen in een browser. Dit bereik je door een vertrouwde server kwaadaardige content te laten serveren.
|
||||||
|
|
||||||
In dit project is één vorm hiervan opgenomen, namelijk een directe `echo`.
|
In dit project is één vorm hiervan opgenomen, namelijk een directe `echo` (Reflected XSS).
|
||||||
Dit is het meest makkelijke voorbeeld, maar niet altijd de realiteit.
|
Dit is het meest makkelijke voorbeeld, maar niet altijd de realiteit.
|
||||||
Vaak zal je toch wel wat beveiliging moeten omzeilen. Om deze reden zijn
|
Vaak zal je toch wel wat beveiliging moeten omzeilen. Om deze reden zijn
|
||||||
er dan ook honderden verschillende manieren van XSS, ook wel attack vectors
|
er dan ook honderden verschillende manieren van XSS, ook wel attack vectors
|
||||||
@ -47,7 +47,7 @@ van een functie `htmlspecialchars()`. Maar dat lost alleen dit probleem op. Er z
|
|||||||
manier aan te vallen (zie inleiding). Iedere taal zal zijn eigen eisen hebben om dit netjes op te lossen. Je zal altijd
|
manier aan te vallen (zie inleiding). Iedere taal zal zijn eigen eisen hebben om dit netjes op te lossen. Je zal altijd
|
||||||
een vector missen, ga daar maar van uit.
|
een vector missen, ga daar maar van uit.
|
||||||
|
|
||||||
Zelfs Google, op haar searchengine, had recentelijk nog een XSS probleem. [Lees de commit met de fix.](https://github.com/google/closure-library/commit/c79ab48e8e962fee57e68739c00e16b9934c0ffa).
|
Zelfs Google, op haar searchengine, had recentelijk nog een XSS probleem. [Lees de commit met de fix](https://github.com/google/closure-library/commit/c79ab48e8e962fee57e68739c00e16b9934c0ffa).
|
||||||
|
|
||||||
Loop niet al te radeloos weg, er is namelijk wel een oplossing die je mee kan nemen. Deze oplossing dekt nog altijd niet volledig, maar werkt beter dan alles wat je zelf zal doen: gebruik een framework.
|
Loop niet al te radeloos weg, er is namelijk wel een oplossing die je mee kan nemen. Deze oplossing dekt nog altijd niet volledig, maar werkt beter dan alles wat je zelf zal doen: gebruik een framework.
|
||||||
|
|
||||||
|
|||||||
@ -14,7 +14,7 @@ if (isset($_GET["name"]))
|
|||||||
{
|
{
|
||||||
$name = $_GET["name"];
|
$name = $_GET["name"];
|
||||||
?>
|
?>
|
||||||
<div>Hey <?= htmlspecialchars($name) ?>, how are you doing?</div>
|
<div>Hey <?= $name ?>, how are you doing?</div>
|
||||||
<div>Enjoy this picture:</div>
|
<div>Enjoy this picture:</div>
|
||||||
<div><img src="//unsplash.it/256"></div>
|
<div><img src="//unsplash.it/256"></div>
|
||||||
<hr>
|
<hr>
|
||||||
|
|||||||
BIN
reflected-xss-diagram.png
Normal file
BIN
reflected-xss-diagram.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 53 KiB |
Loading…
Reference in New Issue
Block a user