Nota: so come funziona HTTP Splitting.
Nota 2: Non sto lavorando in WebGoat. Sto cercando di farlo da solo.
Sto tentando di imitare l'attacco HTTP Splitting sulla mia macchina. Per questo ho scritto questo codice php:
<?php
header("Location: " . $_GET['page']);
?>
E poi inserisco il seguente URL:
http://localhost/webgoat/httpsplitting.php?page=index%0aContent-Length:%200%0a%0aHTTP/1.1%20200%20OK%0aContent-Type:%20text/html%0aContent-Length:%2017%0a%0a<html>Hacked</html>
Ma poi anche quando intercetto la richiesta usando webscarab, vedo che queste intestazioni non sono incluse nella risposta del server web.
Inoltre ho visto in wireshark che la sequenza LF (cioè% 0a) non viene convertita nel suo formato ASCII e viene usata come stringa e non come feed di riga.
Quindi, sono giunto alla deduzione che i moderni server web non sono suscettibili a questo attacco. Sono corretto ??