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?
  1. 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:
  1. 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
  1. <html>  
  2.   <head>  
  3.     <title>WOW</title>  
  4.     <script>  
  5.      itt van az említett script  
  6.     </script>  
  7.   </head>  
  8.   <body bgcolor="#000000">  
  9.     <video loop autoplay height="100%" width="100%">  
  10.       <source src="http://kerekdl0.x3.hu/namazso/vinylrocks.mp4" type="video/mp4">  
  11.     </video>   
  12.   </body>  
  13. </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..