Dupa ce am citit pe SoftPedia minunatiile spuse de un utilizator…
Citez:

va salut. de curand m-am apucat sa fac un script, de yahoo detect. am intampinat o problema legata de script care imi arata statusul Yahoo. Am reusit sa contruiesc ceva, care imi arata daca e online, offline, folosindu-ma de opi, dar nu am nici o idee despre cum as putea sa fac sa mi-i arate si pe cei invisible. Toti imi spun ca tre sa fac un script “sa trimita pachete ” catre yahoo, catre un anumit bot… dar nu am nici cea mai vaga idee despre cum as putea sa fac asta… nu caut scripturi moca, nu cersesc, vreau un sfat, ce ar trebui sa fac.. va multumesc.

Am hotarat sa scriu un articol referitor la cunostintele necesare pentru a incepe un astfel de proiect si chestii generale referitoare la aceste detectoare.

In primul rand, programatorul trebuie sa stie cum functioneaza protocolul TCP/IP, pentru a putea intelege si modul de functionare al protocolului Yahoo.
Acesta (Protocolul Yahoo) este folosit pe toata durata comunicarii dintre server si client.
Pachetele sunt etichetate de un anumit caracter, unic/actiune. Acest caracter unic se gaseste in header, la pozitia 11 (al 12-lea caracter din totalul de 20 cat este lungimea header-ului).

In al 2-lea rand, programatorul trebuie sa stapaneasca foarte bine lucrul cu socket-uri pentru stream.

Nu voi explica in acest articol modul in care se poate face autentificarea la serverele Yahoo pentru ca este destul de periculos sa se faca publica o astfel de informatie, in schimb voi explica pe scurt principiul de functionare al unui detector de invisible.

Cum este posibila detectia?
Detectia utilizatorilor se face pe spatele protocolului Yahoo, care, desi este un protocol inchis, s-au gasit multechestii ce nu functioneaza cum ar trebui. Spre exemplu, un utilizator poate cere poza de la avatar sau lista de servicii disponibile chiar si atunci cand nu este in lista “Victimei“.

Cum ma pot feri de astfel de detectoare?
Partea frumoasa (sau mai putin frumoasa): NU POTI. Singura scapare este folosirea Webmessenger, Meebo, E-Buddy si alte servicii online care nu raspund cererii de avatar (Cod Header: 0xBE), insa majoritatea detectoarelor, inclusiv DarkAngelBv™ Yahoo Invisible Detector Nu mai folosesc de mult aceasta tehnica, fiind una destul de lenta (~1.5 secunde media de raspuns).
O alta scapare posibila ar fi oprirea tuturor serviciilor Yahoo (voice, games, etc) insa nu garantez rezultate favorabile.
Unica “scapare” viabila este construirea unui client de Yahoo Messenger care sa intrebe utilizatorul atunci cand este “interogat” de catre un id de YM ce nu se afla in lista si posibilitatea anumarii acestei interogari. Acest client-minune va fi creat de mine in urmatoarea perioada de timp, pentru moment in versiune web-messenger, si daca prinde la public, posibil sa il transpun si in varianta de aplicatie stand-alone. Ca functii suplimentare, cu un singur click afli daca un utilizator din lista este invisible, avand posibilitatea sa alegi ce metoda se va utiliza pentru scanare.

Metode de scanare:

1. Metoda “Avatarul”:
Aceasta metoda a fost printre primele metode pentru detectie descoperite.
Pentru scanare se foloseste headerul 0xBE .
Structura pachetului este ceva de genul:
4 + === + YMBot + === + 5 + === + VICTIMA + === + 13 + === + 1 + ===
Am notat cu === delimitatorul pachetului, despre care am vorbit intr-un articol precedent, cu YMBot numele de utilizator al bot-ului si cu VICTIMA numele de utilizator al victimei, adica al tintei detectorului.
Cifra 4 reprezinta campul sursei, iar 5 reprezinta campul destinatiei.
Ordinea nu este foarte importanta, atata timp cat raman impreuna (alias + valoare). Ex:
5 + === + VICTIMA + === + 4 + === + YMBot + === + 13 + === + 1 + ===
este acelasi lucru.

Alte articole asemanatoare