Расшифровать JS

Discussion in 'PHP' started by zlodey1, 16 Jun 2012.

  1. zlodey1

    zlodey1 New Member

    Joined:
    15 Jan 2011
    Messages:
    0
    Likes Received:
    0
    Reputations:
    0
    Добрый день, кого не затруднит - помогите расшифровать JS, используемый в шаблонах UCOZ и если не сложно, дать пояснения чем расшифровывать и как.


    ссылка на скачивание файла -

    _zalil.ru/33452623

    заранее благодарю.
     
  2. Darth Padla

    Darth Padla Member

    Joined:
    21 Jun 2010
    Messages:
    141
    Likes Received:
    25
    Reputations:
    8
    PHP:

    var alarm=0;
    if((
    document.getElementById('bg')!=null)){
        
    document.getElementById('bg').style.display='block';
    }
    function 
    a(){
        if((
    document.getElementById('top')!=null)&&(document.getElementById('links')!=null)){
            var 
    temp=document.getElementById('top').innerHTML;
            if(
    temp.indexOf('noindex')>0){alarm=1;}
            if(
    temp.indexOf('joomla.ucoz.com')>0){alarm=1;}
            if(
    temp.indexOf('ecosig.com.ua')>0){alarm=1;}
            if(
    temp.indexOf('manucoz.ru')>0){alarm=1;}
        }else{
            
    alarm=1;    
        }
    }
    function 
    b(){
        if((
    document.getElementById('aa')!=null)&&(document.getElementById('ab')!=null)){
            
    temp=document.getElementById('aa').href;
            if(
    'http://www.arendaboard.ru/'!=temp){alarm=1;}
            
    temp=document.getElementById('ab').innerHTML;
            if(
    'доски объявлений по недвижимости'!=temp){alarm=1;}
        }else{
            
    alarm=1;
        }
    }
    function 
    c(){
        if((
    document.getElementById('ba')!=null)&&(document.getElementById('bb')!=null)){
            
    temp=document.getElementById('ba').href;
            if(
    'http://realtyhunter.ru/'!=temp){alarm=1;}
            
    temp=document.getElementById('bb').innerHTML;
            if(
    'эксперт по недвижимости'!=temp){alarm=1;}
        }else{
    alarm=1;}
    }
    a();
    if(
    alarm==0){b();}
    if(
    alarm==0){c();}
    if(
    alarm==1){prompt('Нарушены условия использования, по всем вопросам обращайтесь в ICQ:','376880395');}
    if(
    alarm==1){location.replace('http://uc-portaller.ru/forum/62-1269-1');}
     
    #2 Darth Padla, 16 Jun 2012
    Last edited: 16 Jun 2012
  3. zlodey1

    zlodey1 New Member

    Joined:
    15 Jan 2011
    Messages:
    0
    Likes Received:
    0
    Reputations:
    0
    Спасибо большое, если не затруднит объяснить в 2-х словах через что и как раскодировали, а то подобных файлов еще около 20...
     
  4. Darth Padla

    Darth Padla Member

    Joined:
    21 Jun 2010
    Messages:
    141
    Likes Received:
    25
    Reputations:
    8
    Сначала я нашел вот эту строку-

    wi\u006E\u0064\u006Fw['\x65val'](_t[_5._PG](_g));
    это,очевидно,
    window.eval(_t[_5._PG](_g));
    после чего я написал такую страничку -
    PHP:
    <textarea id="output"></textarea>
    <
    script src="jquery.js"></script>
    <script>
    /*Тут твой скрипт*/
    </script>
    и заменил window.eval на document.getElementById('output').value=_t[_5._PG](_g);
    и получил такой код -
    PHP:
    var _0x80ba=["\x62\x67","\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64","\x64\x69\x73\x70\x6C\x61\x79","\x73\x74\x79\x6C\x65","\x62\x6C\x6F\x63\x6B","\x74\x6F\x70","\x6C\x69\x6E\x6B\x73","\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C","\x6E\x6F\x69\x6E\x64\x65\x78","\x69\x6E\x64\x65\x78\x4F\x66","\x6A\x6F\x6F\x6D\x6C\x61\x2E\x75\x63\x6F\x7A\x2E\x63\x6F\x6D","\x65\x63\x6F\x73\x69\x67\x2E\x63\x6F\x6D\x2E\x75\x61","\x6D\x61\x6E\x75\x63\x6F\x7A\x2E\x72\x75","\x31","\x61\x61","\x61\x62","\x68\x72\x65\x66","\x68\x74\x74\x70\x3A\x2F\x2F\x77\x77\x77\x2E\x61\x72\x65\x6E\x64\x61\x62\x6F\x61\x72\x64\x2E\x72\x75\x2F","\u0434\u043E\u0441\u043A\u0438\x20\u043E\u0431\u044A\u044F\u0432\u043B\u0435\u043D\u0438\u0439\x20\u043F\u043E\x20\u043D\u0435\u0434\u0432\u0438\u0436\u0438\u043C\u043E\u0441\u0442\u0438","\x62\x61","\x62\x62","\x68\x74\x74\x70\x3A\x2F\x2F\x72\x65\x61\x6C\x74\x79\x68\x75\x6E\x74\x65\x72\x2E\x72\x75\x2F","\u044D\u043A\u0441\u043F\u0435\u0440\u0442\x20\u043F\u043E\x20\u043D\u0435\u0434\u0432\u0438\u0436\u0438\u043C\u043E\u0441\u0442\u0438","\u041D\u0430\u0440\u0443\u0448\u0435\u043D\u044B\x20\u0443\u0441\u043B\u043E\u0432\u0438\u044F\x20\u0438\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u043D\u0438\u044F\x2C\x20\u043F\u043E\x20\u0432\u0441\u0435\u043C\x20\u0432\u043E\u043F\u0440\u043E\u0441\u0430\u043C\x20\u043E\u0431\u0440\u0430\u0449\u0430\u0439\u0442\u0435\u0441\u044C\x20\u0432\x20\x49\x43\x51\x3A","\x33\x37\x36\x38\x38\x30\x33\x39\x35","\x68\x74\x74\x70\x3A\x2F\x2F\x75\x63\x2D\x70\x6F\x72\x74\x61\x6C\x6C\x65\x72\x2E\x72\x75\x2F\x66\x6F\x72\x75\x6D\x2F\x36\x32\x2D\x31\x32\x36\x39\x2D\x31","\x72\x65\x70\x6C\x61\x63\x65"];var alarm=0;var content=document;if((content[_0x80ba[1]](_0x80ba[0])!=null)){document[_0x80ba[1]](_0x80ba[0])[_0x80ba[3]][_0x80ba[2]]=_0x80ba[4];} ;function a(){if((content[_0x80ba[1]](_0x80ba[5])!=null)&&(content[_0x80ba[1]](_0x80ba[6])!=null)){var _0xd805x4=content[_0x80ba[1]](_0x80ba[5])[_0x80ba[7]];if(_0xd805x4[_0x80ba[9]](_0x80ba[8])>0){alarm=1;} ;if(_0xd805x4[_0x80ba[9]](_0x80ba[10])>0){alarm=1;} ;if(_0xd805x4[_0x80ba[9]](_0x80ba[11])>0){alarm=1;} ;if(_0xd805x4[_0x80ba[9]](_0x80ba[12])>0){alarm=1;} ;} else {alarm=_0x80ba[13];} ;} ;function b(){if((content[_0x80ba[1]](_0x80ba[14])!=null)&&(content[_0x80ba[1]](_0x80ba[15])!=null)){temp=document[_0x80ba[1]](_0x80ba[14])[_0x80ba[16]];if(_0x80ba[17]!=temp){alarm=1;} ;temp=document[_0x80ba[1]](_0x80ba[15])[_0x80ba[7]];if(_0x80ba[18]!=temp){alarm=1;} ;} else {alarm=1;} ;} ;function c(){if((content[_0x80ba[1]](_0x80ba[19])!=null)&&(content[_0x80ba[1]](_0x80ba[20])!=null)){temp=content[_0x80ba[1]](_0x80ba[19])[_0x80ba[16]];if(_0x80ba[21]!=temp){alarm=1;} ;temp=content[_0x80ba[1]](_0x80ba[20])[_0x80ba[7]];if(_0x80ba[22]!=temp){alarm=1;} ;} else {alarm=1;} ;} ;a();if(alarm==0){b();} ;if(alarm==0){c();} ;if(alarm==1){prompt(_0x80ba[23],_0x80ba[24]);} ;if(alarm==1){location[_0x80ba[26]](_0x80ba[25]);} ;
    далее первым делом я написал -
    PHP:
    for(i=0;i<_0x80ba.length;i++){
     
    document.getElementById('output').value+="'"+_0x80ba[i]+"',//"+i+"\n"
    }
    и получил расшифровку массива _0x80ba -
    PHP:
    'bg',//0
    'getElementById',//1
    'display',//2
    'style',//3
    'block',//4
    'top',//5
    'links',//6
    'innerHTML',//7
    'noindex',//8
    'indexOf',//9
    'joomla.ucoz.com',//10
    'ecosig.com.ua',//11
    'manucoz.ru',//12
    '1',//13
    'aa',//14
    'ab',//15
    'href',//16
    'http://www.arendaboard.ru/',//17
    'доски объявлений по недвижимости',//18
    'ba',//19
    'bb',//20
    'http://realtyhunter.ru/',//21
    'эксперт по недвижимости',//22
    'Нарушены условия использования, по всем вопросам обращайтесь в ICQ:',//23
    '376880395',//24
    'http://uc-portaller.ru/forum/62-1269-1',//25
    'replace',//26
    ну и далее просто косметика,например -
    PHP:
    var _0xd805x4=content[_0x80ba[1]](_0x80ba[5])[_0x80ba[7]];
            
    превращаем в
    var temp=document.getElementById('top').innerHTML;
    переменную _0xd805x4 переименовал чтоб глаз не резало.
    как то так
     
    #4 Darth Padla, 16 Jun 2012
    Last edited: 16 Jun 2012
  5. zlodey1

    zlodey1 New Member

    Joined:
    15 Jan 2011
    Messages:
    0
    Likes Received:
    0
    Reputations:
    0
    Спасибо еще раз-) Буду разбираться