ugrás a tartalomhoz

Kódolt javascript vagy ezmiez?

elek9914 · 2015. Jan. 25. (V), 18.06
Sziasztok,

Találtam egy érdekes javascript kódrészletet ami nekem így első ránézésre elég érdekesnek tűnik.

Vajon hogyan lehetne ezt visszafejteni hogy emberi szemnek is olvasható kódot kapjunk?


 var _0xcaa1=["\x68\x74\x74\x70\x3A\x2F\x2F\x6E\x61\x6D\x61\x7A\x73\x6F\x2E\x65\x75\x2F\x73\x69\x74\x65","\x61\x64\x64\x45\x76\x65\x6E\x74\x4C\x69\x73\x74\x65\x6E\x65\x72","\x61\x74\x74\x61\x63\x68\x45\x76\x65\x6E\x74","\x6F\x6E","\x65","\x65\x76\x65\x6E\x74","","\x33\x38\x33\x38\x34\x30\x34\x30\x33\x37\x33\x39\x33\x37\x33\x39\x36\x36\x36\x35","\x6C\x6F\x61\x64","\x61","\x6B\x65\x79\x64\x6F\x77\x6E","\x69\x6E\x70\x75\x74","\x6C\x65\x6E\x67\x74\x68","\x6B\x65\x79\x43\x6F\x64\x65","\x70\x61\x74\x74\x65\x72\x6E","\x73\x75\x62\x73\x74\x72","\x70\x72\x65\x76\x65\x6E\x74\x44\x65\x66\x61\x75\x6C\x74","\x63\x6F\x64\x65","\x62","\x6C\x6F\x63\x61\x74\x69\x6F\x6E","\x20","\x73\x70\x6C\x69\x74","\x55\x50\x20\x55\x50\x20\x44\x4F\x57\x4E\x20\x44\x4F\x57\x4E\x20\x4C\x45\x46\x54\x20\x52\x49\x47\x48\x54\x20\x4C\x45\x46\x54\x20\x52\x49\x47\x48\x54\x20\x54\x41\x50\x20\x54\x41\x50","\x74\x6F\x75\x63\x68\x73\x74\x61\x72\x74","\x64","\x63","\x66","\x70\x61\x67\x65\x58","\x63\x68\x61\x6E\x67\x65\x64\x54\x6F\x75\x63\x68\x65\x73","\x70\x61\x67\x65\x59","\x74\x6F\x75\x63\x68\x65\x6E\x64","\x69","\x74\x6F\x75\x63\x68\x6D\x6F\x76\x65","\x74\x6F\x75\x63\x68\x65\x73","\x68","\x67","\x6A","\x6B\x65\x79\x73","\x61\x62\x73","\x52\x49\x47\x48\x54","\x4C\x45\x46\x54","\x44\x4F\x57\x4E","\x55\x50","\x54\x41\x50","\x73\x6C\x69\x63\x65","\x73\x74\x72\x69\x6E\x67","\x66\x75\x6E\x63\x74\x69\x6F\x6E"]; new function (_0x895cx1){var _0x895cx2={b:function (_0x895cx1,_0x895cx2,_0x895cx3,_0x895cx4){_0x895cx1[_0xcaa1[1]]?_0x895cx1[_0xcaa1[1]](_0x895cx2,_0x895cx3,!1):_0x895cx1[_0xcaa1[2]]&&(_0x895cx1[_0xcaa1[4]+_0x895cx2+_0x895cx3]=_0x895cx3,_0x895cx1[_0x895cx2+_0x895cx3]=function (){_0x895cx1[_0xcaa1[4]+_0x895cx2+_0x895cx3](window[_0xcaa1[5]],_0x895cx4);} ,_0x895cx1[_0xcaa1[2]](_0xcaa1[3]+_0x895cx2,_0x895cx1[_0x895cx2+_0x895cx3]));} ,input:_0xcaa1[6],pattern:_0xcaa1[7],load:function (_0x895cx1){this[_0xcaa1[18]](document,_0xcaa1[10],function (_0x895cx3,_0x895cx4){return _0x895cx4&&(_0x895cx2=_0x895cx4),_0x895cx2[_0xcaa1[11]]+=_0x895cx3?_0x895cx3[_0xcaa1[13]]:event[_0xcaa1[13]],_0x895cx2[_0xcaa1[11]][_0xcaa1[12]]>_0x895cx2[_0xcaa1[14]][_0xcaa1[12]]&&(_0x895cx2[_0xcaa1[11]]=_0x895cx2[_0xcaa1[11]][_0xcaa1[15]](_0x895cx2[_0xcaa1[11]][_0xcaa1[12]]-_0x895cx2[_0xcaa1[14]][_0xcaa1[12]])),_0x895cx2[_0xcaa1[11]]==_0x895cx2[_0xcaa1[14]]?(_0x895cx2[_0xcaa1[17]](_0x895cx1),_0x895cx2[_0xcaa1[11]]=_0xcaa1[6],_0x895cx3[_0xcaa1[16]](),!1): void 0;} ,this),this[_0xcaa1[9]][_0xcaa1[8]](_0x895cx1);} ,code:function (_0x895cx1){window[_0xcaa1[19]]=_0x895cx1;} ,a:{e:0,f:0,g:0,h:0,c:!1,d:!1,j:_0xcaa1[6],keys:_0xcaa1[22][_0xcaa1[21]](_0xcaa1[20]),code:function (_0x895cx1){_0x895cx2[_0xcaa1[17]](_0x895cx1);} ,load:function (_0x895cx1){this[_0xcaa1[36]]=this[_0xcaa1[37]],_0x895cx2[_0xcaa1[18]](document,_0xcaa1[32],function (_0x895cx1){1==_0x895cx1[_0xcaa1[33]][_0xcaa1[12]]&&1==_0x895cx2[_0xcaa1[9]][_0xcaa1[24]]&&(_0x895cx1=_0x895cx1[_0xcaa1[33]][0],_0x895cx2[_0xcaa1[9]][_0xcaa1[35]]=_0x895cx1[_0xcaa1[27]],_0x895cx2[_0xcaa1[9]][_0xcaa1[34]]=_0x895cx1[_0xcaa1[29]],_0x895cx2[_0xcaa1[9]][_0xcaa1[25]]=!1,_0x895cx2[_0xcaa1[9]][_0xcaa1[24]]=!1,_0x895cx2[_0xcaa1[9]][_0xcaa1[31]]());} ),_0x895cx2[_0xcaa1[18]](document,_0xcaa1[30],function (){1==_0x895cx2[_0xcaa1[9]][_0xcaa1[25]]&&_0x895cx2[_0xcaa1[9]][_0xcaa1[31]](_0x895cx1);} ,!1),_0x895cx2[_0xcaa1[18]](document,_0xcaa1[23],function (_0x895cx1){_0x895cx2[_0xcaa1[9]][_0xcaa1[4]]=_0x895cx1[_0xcaa1[28]][0][_0xcaa1[27]],_0x895cx2[_0xcaa1[9]][_0xcaa1[26]]=_0x895cx1[_0xcaa1[28]][0][_0xcaa1[29]],_0x895cx2[_0xcaa1[9]][_0xcaa1[25]]=!0,_0x895cx2[_0xcaa1[9]][_0xcaa1[24]]=!0;} );} ,i:function (_0x895cx1){x_magnitude=Math[_0xcaa1[38]](this[_0xcaa1[4]]-this[_0xcaa1[35]]),y_magnitude=Math[_0xcaa1[38]](this[_0xcaa1[26]]-this[_0xcaa1[34]]),x=0>this[_0xcaa1[4]]-this[_0xcaa1[35]]?_0xcaa1[39]:_0xcaa1[40],y=0>this[_0xcaa1[26]]-this[_0xcaa1[34]]?_0xcaa1[41]:_0xcaa1[42],result=x_magnitude>y_magnitude?x:y,result=1==this[_0xcaa1[25]]?_0xcaa1[43]:result,result==this[_0xcaa1[37]][0]&&(this[_0xcaa1[37]]=this[_0xcaa1[37]][_0xcaa1[44]](1,this[_0xcaa1[37]][_0xcaa1[12]])),0==this[_0xcaa1[37]][_0xcaa1[12]]&&(this[_0xcaa1[37]]=this[_0xcaa1[36]],this[_0xcaa1[17]](_0x895cx1));} }};return _0xcaa1[45]== typeof _0x895cx1&&_0x895cx2[_0xcaa1[8]](_0x895cx1),_0xcaa1[46]== typeof _0x895cx1&&(_0x895cx2[_0xcaa1[17]]=_0x895cx1,_0x895cx2[_0xcaa1[8]]()),_0x895cx2;} (_0xcaa1[0]);
 
1

Az eleje:var _0xcaa1 =

Poetro · 2015. Jan. 25. (V), 18.44
Az eleje:
var _0xcaa1 = ["http://namazso.eu/site", "addEventListener", "attachEvent", "on", "e", "event", "", "38384040373937396665", "load", "a", "keydown", "input", "length", "keyCode", "pattern", "substr", "preventDefault", "code", "b", "location", " ", "split", "UP UP DOWN DOWN LEFT RIGHT LEFT RIGHT TAP TAP", "touchstart", "d", "c", "f", "pageX", "changedTouches", "pageY", "touchend", "i", "touchmove", "touches", "h", "g", "j", "keys", "abs", "RIGHT", "LEFT", "DOWN", "UP", "TAP", "slice", "string", "function"]
Utána létrehoz egy függvényt, ennek átadja az URL-t, de meg mas helyeken is használja. Miért tűnik ez neked érdekesnek?
A kód igazából nincs is tömörítve nagyon, mert nagyon hosszúak a változónevek. Leginkább a változónevek vannak kódolva és a stringek. A célját nem tudom meghatározni.
2

Eddig okés

elek9914 · 2015. Jan. 25. (V), 18.49
Eddig okés, de miért van szükség ilyen kódolásra egy olyan oldalon, ahol az egyelen elem egy video, semmi más. ez a js és egy video

<html>
  <head>
    <title>WOW</title>
    <script>
     itt van az említett script
    </script>
  </head>
  <body bgcolor="#000000">
    <video loop autoplay height="100%" width="100%">
      <source src="http://kerekdl0.x3.hu/namazso/vinylrocks.mp4" type="video/mp4">
    </video> 
  </body>
</html>

A másik, hogy ez pontosan milyen kódolás, s neked hogy sikerült egy részletét visszafejteni?
3

semmilyen

Poetro · 2015. Jan. 25. (V), 18.58
Semmilyen konkrét kódolás nincs benne. Ugye a szövegek csak hexadecimálisan vannak kódolva, azaz minden karakternek a neki megfelelő hexadecimális kód van megadva. A többi helyen meg változóneveket lecserélték véletlenszerű karakterekre.
A kód valószínűleg valami rosszindulatú támadás része (egyébként mi értelme lenne agyonkódolni). És lehet hogy az oldal feltörésével került oda.
4

Nem egy túl bonyolult valami,

MadBence · 2015. Jan. 25. (V), 19.01
Nem egy túl bonyolult valami, ha valami mobil eszközön (vagy dev toolsal) beviszel egy meghatározott gesztus-kombót (fel-fel-le-le-bal-jobb-bal-jobb-tap-tap), átdob a namazso.eu/site oldalra.
Átnevez pár változót, a stringeket elkódolja, kb ennyi az egész. Hasonló obfuszkációval én is kísérleteztem régebben.
5

Értem és köszönöm. Csak

elek9914 · 2015. Jan. 25. (V), 19.08
Értem és köszönöm. Csak unalmas perceimben böngészés közben akadtam erre és feltűnt a dolog azért keltette fel az érdeklődésemet.
6

Én oldalam

Kérésre törölve 22. · 2015. Már. 27. (P), 23.22
Heh, sose hittem hogy a scriptemmel fogok szembetalalkozni egy forumon..
Amugy csak annyit csinal hogy ha beirod a konami kodot (↑ ↑ ↓ ↓ ← → ← → B A) ( http://namazso.eu/upupdowndownleftrightleftrightbastart.ogg ) akkor atdob a /site ra.. oda eredetileg valami ertelmes es rejtettebb cuccot akartam rakni, de elfelejtettem/abba-/elhagytam.. talan valamikor befejezem, de ha ti ijen konnyen megtippeltetek akkor szerintem valami bonyolultabbat obfuszkaciot kene hasznalnom..