Visita Orebla.it su Facebook Segui Orebla.it su Twitter Vedi i video su YouTube di Orebla.it Unisciti alle cerchie di Orebla.it
DOVE TI TROVI: \\ Home Page\ Guide iPhone\Javascript: Facebook Status Sniffing with Abuse HTTP Status

Javascript: Facebook Status Sniffing with Abuse HTTP Status

di Melloni Luca pubblicato il 30 marzo 2011 in Guide-Tutorial, Sicurezza, Web.


Oggi vi parlo di un argomento molto interessante: Come è possibile capire se un visitatore, del nostro sito web, è loggato sui due social network di maggior successo: Facebook e Twitter. È possibile, infatti, tramite una tecnica denominata “Abuse HTTP Status” e javascript capire se un utente ha effettuato il log-in (e quindi possiede cookies validi sul PC) su uno dei famosi portali.

Ho parlato, nell’anteprima di questo articolo, di “Abuse HTTP Status”; bene parto con il spiegarvi di che tecnica si tratta.

Anzitutto cos’è l’HTTP Status o Stato HTTP: bisognerebbe partire dai fondamenti della comunicazione del protocollo HTTP, ma per ovvi limiti di spazio vi spiego brevemente come funziona una richiesta web da parte del browser ad un server per iniziarvi al discorso (per gli esperti: lo spiego con parole non tecniche, quindi non voletemi male! :-) ).

Quando noi scriviamo un URL nel nostro browser e clicchiamo su invio il software manda una richiesta HTTP, appunto, al server sul quale è ospitato il sito. La richiesta è simile a questo codice:

Accept:application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5

Accept-Charset:ISO-8859-1,utf-8;q=0.7,*;q=0.3

Accept-Encoding:gzip,deflate,sdch

Accept-Language:it-IT,it;q=0.8,en-US;q=0.6,en;q=0.4

Connection:keep-alive

Cookie: XXXXXXXXXXXXXXX

Host:www.orebla.it

Referer:http://www.orebla.it/

User-Agent:Mozilla/5.0 (Windows NT 6.0) AppleWebKit/534.24 (KHTML, like Gecko) Chrome/11.0.696.25 Safari/534.24

A sua volta il Server risponderà con un messaggio, simile a questo:

Status Code: 200 OK

Connection:Keep-Alive

Content-Encoding:gzip

Content-Type:text/html

Date:Wed, 30 Mar 2011 12:28:44 GMT

Keep-Alive:timeout=1, max=64

Server:Apache

Transfer-Encoding:chunked

Vary:Accept-Encoding

Come potete vedere avviene uno scambio di informazioni fra il browser ed il server. Di tutte queste righe quello che interesse a noi, per questo guida, è: “Status Code: 200 OK”. Questo è l’HTTP Status o Stato HTTP o Codice di Stato HTTP. Insomma questo messaggio può essere differente per diverse situazioni. Potete trovare un bel elenco su Wikipedia: Elenco dei codici di stato HTTP. Diciamo che al momento vi interessa sapere che gli stati più “utilizzati” sono 200, 401, 403 e 404.

Il primo (200, nda) indica che il server ha trovato la pagina e che è tutto OK; gli stati 401 e 403 indicano che il server potrebbe avere la pagina ma che non possiamo accedervi in quanto non abbiamo i permessi necessari; infine il tanto famoso 404 che indica un bel errore di “pagina non trovata”, penso che tutti conoscete quest’ultimo!

Fatta la premessa spieghiamo la tecnica del “Abuse HTTP Status Code“.

Se noi ci procuriamo una pagina di Facebook alla quale possiamo accedere solo se loggati e poi la visitiamo, dopo aver effettuato l’accesso, il server ci risponderà con uno stato “200, OK”! Se invece, sempre con la stessa pagina, la visitiamo SENZA aver effettuato l’accesso il server ci risponderà con un bel 401 o 403/Forbidden!

Per tanto ci basta analizzare questi dati per capire se un utente ha effettuato l’accesso o meno su Facebook o Twitter.

Qui ci viene in aiuto il javascript con le funzioni “src”, “onload” e “onerror”. Per caricare uno script, di norma, il codice è il seguente:

<script type="text/javascript"
src="http://xxx.com/pagead/show_ads.js"> 
</script>

A questo codice possiamo aggiungere due argomenti per capire se tale script viene o meno caricato:

<script type="text/javascript"
src="http://xxx.com/pagead/show_ads.js"
onload="si_caricato()"
onerror="non_caricato()"
> 
</script>

Come potete vedere in base alla risposta del Server noi possiamo richiamare una funzione specifica! Questo ci aiuta a capire, sempre tornando al discorso di prima, se un utente ha effettuato l’accesso a Facebook o Twitter ed è connesso!

Provate a visitare questa pagina: Facebook e Twitter Status Sniffing with Abuse HTTP Code Status.

Come vedete la pagina vi segnala il vostro stato sui due portali di Social Network!

Purtroppo, tale script funziona solo su Firefox 4.0 e Chrome 11.x. Mentre su Opera 11, IE 9 e Safari tale codice non funziona!

Fonte di questo mio articolo sono: il sempre ben informato Gianni Amato e lo scopritore di tale “stranezza” Mike Cardwell.

All’interno dei commenti, sul post di Cardwell, un utente ha inserito un esempio su come sia possibile “sniffare” lo stato del visitatore anche su IE 9 utilizzando un altro metodo sempre su Javascript, per i più smanettoni ecco il codice:

<script> 

function check(){
var scrollPos = document.getElementById('box').scrollTop;

if(scrollPos > 0)
alert("You are Authenticated to Facebook!");

else
alert("You are NOT Authenticated to Facebook!");

}

setTimeout("check()", 2000);

</script>

<div id="box" style="border : solid 2px #ff0000; background : #000000; padding : 4px; width : 200px; height : 450px; overflow : auto;" >

<iframe src="http://sbx.facebook.com/mobile/iframe_emails.php#pagefooter_copyright" height="500px"/>

</div>

Condividi:

Tag articolo:
, , ,
Ti è piaciuto l'articolo?
NoSi (+1: punteggio, 1 voti totali)
Loading ... Loading ...
Melloni Luca avatar A proposito di Melloni Luca:

Fondatore e Redattore di Orebla.it. Maniaco di iPhone, PHP, Programmazione e tecnologia, ho scritto diverse guide per il portale Php.html.it di cui gestisco, attualmente, la sezione Script. Sono stato per anni Leader del Team Sviluppatori su PhpBB.it. Se volete seguirmi su Twitter cercate: @melloniluca.

Tutti gli articoli di: .


Commenti e trackback abilitati.

10 risposte a Javascript: Facebook Status Sniffing with Abuse HTTP Status

  1. dhs truffa scrive:

    Il Glocal Income ha iniziato un sistema grazie al quale chiunque
    lo voglia può dare vita alla libera attività senza dover essere
    sottoposto al rischio di impresa. L’attività del socio partner del ClubShop è autonoma, e si esercita esclusivamente dalla propria abitazione. Tale convenienza è stata scelta da lavoratori provenienti da tutto il mondo. L’attività da svolgere è molto chiara e quando nei siti web utenti anonimi accusano il ClubShop truffa, veramente non si comprende le ragioni, in quanto l’assenza di motivi veri, fa pensare alla cattiva fede degli personaggi.

  2. Hey there! This is my first comment here so I just wanted to give a quick
    shout out and say I genuinely enjoy reading
    through your articles. Can you recommend any other blogs/websites/forums that
    deal with the same subjects? Thanks!

  3. Hey! I know this is kind of off topic but I was wondering if you knew where
    I could get a captcha plugin for my comment form? I’m using the same blog platform as yours and I’m having trouble finding
    one? Thanks a lot!

  4. I was recommended this website via my cousin.
    I am no longer positive whether or not this publish is written via him as no
    one else know such targeted about my trouble. You are
    incredible! Thanks!

  5. It is perfect time to make some plans for the future and
    it’s time to be happy. I’ve read this post and if I could I wish to suggest you few interesting things or suggestions.
    Perhaps you can write next articles referring to this article.
    I wish to read even more things about it!

  6. coconut oil scrive:

    You don’t genuinely wish to take in something which you are not sure regarding the true effects. We have been told that they lower cholesterol, but they way that they do is not healthy, as it ends up collecting in the liver. All you need do is stop cooking with vegetable oils, and start cooking with coconut oil.

  7. almond oil uses scrive:

    Cyanide discharge can and has happened if the enzyme beta-glucuronidase is introduced.
    Because the under eye area is one of the first places to start showing signs of aging, the moisturising
    action of this oil is especially beneficial here. Unlike
    some treatment products, almond oil (being completely natural), can be used
    as frequently as you wish.

  8. Vaughn scrive:

    You tend to spend an astronomical amount on therapies, medicines, nutritional supplements and so on.
    For liquid filled transformers the approach is similar.

    With them, you can reap the full benefits of
    almond oil without any adverse effects.

  9. Thank you for the good writeup. It if truth be told was once a amusement account it.
    Look advanced to more added agreeable from you!
    By the way, how could we keep up a correspondence?

  10. Charity scrive:

    I’ve been browsing on-line greater than three hours these days, but I by no means discovered any attention-grabbing article like yours. It is lovely worth sufficient for me. In my view, if all site owners and bloggers made excellent content as you probably did, the web shall be much more useful than ever before.

Lascia un Commento

L'indirizzo email non verrà pubblicato. I campi obbligatori sono contrassegnati *

È possibile utilizzare questi tag ed attributi XHTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>





Recensione iPhone 5!