Co robi ten plik javascript? Czy to wirus?

Podczas wyszukiwania w Google znalazłem witrynę, która pokazuje jeden zestaw treści dla Google Bot, a inny dla użytkowników (poprzez przekierowanie do nowej domeny), a także bardzo podejrzany plik Javascript. Może to „śledzący plik cookie” lub wirus / złośliwe oprogramowanie, nie wiem, więc pytam tutaj, czy ktoś może pomóc w wyjaśnieniu kodu?

Jeśli witryna jest „bezpieczna”, dlaczego przekierowuje do zwykłej witryny internetowej, a użytkownicy do pustej strony po załadowaniu tego pliku .js? Dlaczego powinien mieć getpassword.asp hostowany w drugiej przekierowanej domenie (ze skanowania sucuri)?

document.write ("<a href="" target="_blank"><img alt="&#x35;&#x31;&#x2E;&#x6C;&#x61;&#x20;&#x4E13;&#x4E1A;&#x3001;&#x514D;&#x8D39;&#x3001;&#x5F3A;&#x5065;&#x7684;&#x8BBF;&#x95EE;&#x7EDF;&#x8BA1;" src="" style="" /></a>\n"); var a1156tf="51la";var a1156pu="";var a1156pf="51la";var a1156su=window.location;var a1156sf=document.referrer;var a1156of="";var a1156op="";var a1156ops=1;var a1156ot=1;var a1156d=new Date();var a1156color="";if (navigator.appName=="Netscape"){a1156color=screen.pixelDepth;} else {a1156color=screen.colorDepth;} try{a1156tf=top.document.referrer;}catch(e){} try{a1156pu =window.parent.location;}catch(e){} try{a1156pf=window.parent.document.referrer;}catch(e){} try{a1156ops=document.cookie.match(new RegExp("(^| )a1156_pages=([^;]*)(;|$)"));a1156ops=(a1156ops==null)?1: (parseInt(unescape((a1156ops)[2]))+1);var a1156oe =new Date();a1156oe.setTime(a1156oe.getTime()+60*60*1000);document.cookie="a1156_pages="+a1156ops+ ";path=/;expires="+a1156oe.toGMTString();a1156ot=document.cookie.match(new RegExp("(^| )a1156_times=([^;]*)(;|$)"));if(a1156ot==null){a1156ot=1;}else{a1156ot=parseInt(unescape((a1156ot)[2])); a1156ot=(a1156ops==1)?(a1156ot+1):(a1156ot);}a1156oe.setTime(a1156oe.getTime()+365*24*60*60*1000);document.cookie="a1156_times="+a1156ot+";path=/;expires="+a1156oe.toGMTString();}catch(e){} try{if(document.cookie==""){a1156ops=-1;a1156ot=-1;}}catch(e){} a1156of=a1156sf;if(a1156pf!=="51la"){a1156of=a1156pf;}if(a1156tf!=="51la"){a1156of=a1156tf;}a1156op=a1156pu;try{lainframe}catch(e){a1156op=a1156su;} a1156src="(0-a1156d.getTimezoneOffset()/60)+"&tcolor="+a1156color+"&sSize="+screen.width+","+screen.height+"&referrer="+escape(a1156of)+"&vpage="+escape(a1156op)+"&vvtime="+a1156d.getTime(); setTimeout("a1156img = new Image;a1156img.src=a1156src;",0); 

Komentarze

  • Jeśli przeszkadza Ci to, użyj wtyczki lub rozszerzenia przeglądarki, które blokują śledzące witryny innych firm. Jednak ' pozbawisz witrynę przychodów.

Odpowiedź

Oczyśćmy to i przyjrzyjmy się temu dokładniej. Zastąpiłem także niektóre encje HTML ich odpowiednikami tekstowymi:

Dodaj link do obrazu na stronie, chińskie znaki zostały zakodowane, ale nie „Nie sądzę, że to podejrzane:

document.write("<a href="http://www.51.la/?17211156" target="_blank"><img alt="51.la 专业、免费、强健的访问统计" src="http://icon.ajiang.net/icon_8.gif" style="border:none" /></a>\n"); 

Zainicjuj kilka zmiennych, głównie z atrybutami dotyczącymi przeglądarki i strony, takimi jak strona odsyłająca HTTP i aktualny adres URL , data, rozdzielczość przeglądarki itp.

var a1156tf = "51la"; var a1156pu = ""; var a1156pf = "51la"; var a1156su = window.location; var a1156sf = document.referrer; var a1156of = ""; var a1156op = ""; var a1156ops = 1; var a1156ot = 1; var a1156d = new Date(); var a1156color = ""; if (navigator.appName == "Netscape") { a1156color = screen.pixelDepth; } else { a1156color = screen.colorDepth; } try { a1156tf = top.document.referrer; } catch (e) {} try { a1156pu = window.parent.location; } catch (e) {} try { a1156pf = window.parent.document.referrer; } catch (e) {} try { 

Wygląda na to, że szuka istniejących plików cookie ustawionych przez tę aplikację w celu zliczenia liczby stron została odwiedzona. Ta wartość jest zwiększana i przechowywana w pliku cookie.

 a1156ops = document.cookie.match(new RegExp("(^| )a1156_pages=([^;]*)(;|$)")); a1156ops = (a1156ops == null) ? 1 : (parseInt(unescape((a1156ops)[2])) + 1); var a1156oe = new Date(); a1156oe.setTime(a1156oe.getTime() + 60 * 60 * 1000); document.cookie = "a1156_pages=" + a1156ops + ";path=/;expires=" + a1156oe.toGMTString(); 

Zasadniczo wygląda na to, że próbowano zarejestrować, ile różnych stron przeglądałeś. Ponownie używa pliku cookie, aby pomóc zapamiętać, czy już odwiedziłeś.

 a1156ot = document.cookie.match(new RegExp("(^| )a1156_times=([^;]*)(;|$)")); if (a1156ot == null) { a1156ot = 1; } else { a1156ot = parseInt(unescape((a1156ot)[2])); a1156ot = (a1156ops == 1) ? (a1156ot + 1) : (a1156ot); } a1156oe.setTime(a1156oe.getTime() + 365 * 24 * 60 * 60 * 1000); document.cookie = "a1156_times=" + a1156ot + ";path=/;expires=" + a1156oe.toGMTString(); 

Różne rzeczy, prawdopodobnie po to, aby zaspokoić różne możliwości i ustawienia przeglądarki, takie jak ciasteczka są wyłączone.

} catch (e) {} try { if (document.cookie == "") { a1156ops = -1; a1156ot = -1; } } catch (e) {} a1156of = a1156sf; if (a1156pf !== "51la") { a1156of = a1156pf; } if (a1156tf !== "51la") { a1156of = a1156tf; } a1156op = a1156pu; try { lainframe } catch (e) { a1156op = a1156su; } 

Zapisz wszystkie te informacje jako parametry GET w atrybucie źródła obrazu. Twoja przeglądarka załaduje to, a następnie ich serwer będzie mógł zarejestrować dane .

a1156src = "http://web.51.la:82/go.asp?svid=8&id=17211156&tpages=" + a1156ops + "&ttimes=" + a1156ot + "&tzone=" + (0 - a1156d.getTimezoneOffset() / 60) + "&tcolor=" + a1156color + "&sSize=" + screen.width + "," + screen.height + "&referrer=" + escape(a1156of) + "&vpage=" + escape(a1156op) + "&vvtime=" + a1156d.getTime(); setTimeout("a1156img = new Image;a1156img.src=a1156src;", 0); 

Zasadniczo śledzi Cię, w tym stronę, którą „przeglądasz, ile razy przeglądałeś witrynę, ile stron” przeglądałeś, jaka jest rozdzielczość Twojej przeglądarki itp.

To może być złośliwe w zależności od okoliczności, chociaż większość witryn internetowych śledzi jakąś formę, taką jak Google Analytics. nie stanowi zagrożenia dla integralności komputera jako osoby przeglądającej witrynę, ale może stanowić zagrożenie dla prywatności.

Dziwne nazwy zmiennych sprawiają, że wygląda to na zaciemnione złośliwe oprogramowanie, ale podejrzewam, że ma to na celu uniknięcie konfliktów nazw zmiennych z innymi JavaScriptami.

Komentarze

  • To jest konkurent Google Analytics o nazwie ” 51.la „. Śledzona tutaj witryna to ” promgirl.de „. W chińskiej wersji tej witryny, ' prawdopodobnie toczą tę samą dyskusję na temat podejrzanie wyglądającego ” i, s, o, g, r, a, m ” system śledzenia. 🙂
  • Zauważ, że chociaż ten skrypt sam w sobie jest nieszkodliwy, elementy śledzące 51.la są bardzo często wykorzystywane w chińskich exploitach malware. Gdybym zobaczył go na stronie, która nie jest w inny sposób połączona z Chinami, wziąłbym obecność skryptu 51 jako czerwoną flagę dla prawdopodobnego włamania.

Odpowiedź

Nie, to nie wygląda jak wirus, ale zdecydowanie przypomina próbę śledzenia twoich wizyt w różnych witrynach.

Zasadniczo zbiera kilka informacji o Twojej przeglądarce , niektóre pliki cookie i strona, z której pochodzisz, i umieszcza je jako parametry w adresie URL obrazu, który ładuje z serwera. Serwer ten może następnie agregować te informacje z Twoich wizyt w tej i innych witrynach z tym samym kodem w profilu użytkownika, który prawdopodobnie zostanie użyty do wyświetlania ukierunkowanych reklam.

Odpowiedź

To pokazało się w witrynie, którą stworzyłem dla kogoś. Oto, co widzę symptomatycznie (nie jestem programistą).

To oprogramowanie jest instalowane w witrynach specjalnie po to, aby przekierować robota Google-pająka, aby zebrał mnóstwo treści, których w rzeczywistości nie ma w docelowej witrynie . Podczas gry zauważysz, że ruch na stronie znacznie wzrośnie, ale nie widać żadnych rzeczywistych korzyści. To, co robią ci faceci, to informowanie Google, że w witrynie jest o wiele więcej treści niż w rzeczywistości. Kiedy ktoś kliknie jeden z tych fałszywych linków w wyszukiwarce Google, zostaje przekierowany na stronę, która sprzedaje towary w legalnych witrynach.

Dzieje się tak, że ci faceci są podmiotami powiązanymi z witrynami, które sprzedają towary i otrzymują prowizje od każdej sprzedaży on-line.

Są pasożytami, którzy wykorzystują tysiące witryn innych ludzi, aby zarobić na siebie.

Odpowiedź

Otrzymałem te same alerty w naszym środowisku, więc byłem ciekaw, co generuje ten ruch. Kiedy się nad tym zastanowić, w przeglądarce musi być zainstalowane jakieś złośliwe oprogramowanie jako wtyczka lub coś podobnego, ponieważ wyraźnie widzę wyniki wyszukiwania Google z tym adresem URL.

Przykład:

web.51.la:82/go.asp?svid=8&id=15942596&tpages=1&ttimes=1&tzone=8&tcolor=24&sSize=1440,900&referrer=https://www.google.de/&vpage=http://www.qupingche.com/comment/show/103&vvtime=1409818963602 

Kiedy wchodzisz na stronę http://www.qupingche.com/comment/show/103, jest to chińska witryna, na którą jestem w 100% pewien, że jej nie odwiedziłeś. Włączone jej stronę, możesz zobaczyć web51.la zawartość tego skryptu:

<script language="javascript" type="text/javascript" src="http://js.users.51.la/15942596.js"> </script> 

A kiedy sprawdzisz zmienną JavaScript, zwiększa żądaną lokalizację o jedną co 10 sekund.

Oto co widziałem:

js.users.51.la/15942596.js 

A to jest najnowszy z tą samą zawartością:

js.users.51.la/15994950.js 

Więc kiedy widzisz to żądanie od swojego klienta, oznacza to, że na Twoim komputerze musi być jakieś złośliwe oprogramowanie generujące to żądanie !

Komentarze

  • Jak wspomniano w poniższych odpowiedziach, ten skrypt zapewnia mechanizm śledzenia dla właścicieli witryn. Nie polega na wtyczce zainstalowanej przez użytkowników. Wydaje się, że jest niewinny, choć prawdopodobnie stanowi zagrożenie dla prywatności – dokładnie tak samo, jak Google Analytics.
  • Dlaczego miałbyś mieć 100% pewności, jakie witryny odwiedzały inne osoby?
  • ' nie ma absolutnie żadnej potrzeby po stronie klienta, aby wygenerować te unikalne żądania. Nie widzę też dowodów na to, że ' ma miejsce. Sprawcy mogli skonfigurować serwer WWW, który przyjmuje każde żądanie .js (lub taki, w którym nazwa pliku jest liczbą, stosunkowo łatwo to zrobić, np. RewriteCond i RegEx na Apache) i przekierowuje do pojedynczego pliku na serwerze. Dzięki unikalnej nazwie generowanej po stronie serwera dla każdego żądania, aby można było ' nie być po prostu blokowane przez jego nazwę, aby służyć jako prosty licznik, żądanie zaciemnianie, śledzenie, równoważenie obciążenia lub jakikolwiek inny powód, jaki mogli mieć.

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *