fast-je
@fast-je
Пишу на php.

Чем расшифровать такой javascript?

Всем привет! Есть расширение для браузера одно, скачал и увидел там такой код
Вопрос как такое расшифровать ?

код


var a0_0x4f65 = ['d2ViTmF2aWdhdGlvbg==', 'c2VhcmNoVGFicw==', 'cmVtb3ZlTGlzdGVuZXI=', 'cHJvZ3Jlc3M=', 'cmVmcmVzaFN1cmZOdW1iZXI=', 'b25TdGFydHVw', 'b25Gb2N1c0NoYW5nZWQ=', 'b25SZW1vdmVk', 'c2V0UG9wdXA=', 'd2luZG93cw==', 'YnJvd3NlckFjdGlvbg==', 'bG9jYWw=', 'Y2xlYXJBbGw=', 'QWxhcm1z', 'c2V0', 'VGltZXI=', 'b25NZXNzYWdl', 'c3RvcmFnZQ==', 'Z2V0QWxs', 'U3RvcmFnZQ==', 'bG9hZA==', 'b25Db21wbGV0ZWQ=', 'b25DaGFuZ2Vk', 'b25BbGFybQ==', 'U3VyZmluZw==', 'c3RyaW5naWZ5', 'Z2V0', 'c3VyZmluZ0JpZA==', 'VXNlcg==', 'dXNlcg==', 'aHR0cHM6Ly9hcGkuc29jcHVibGljLmNvbS92Mi8=', 'dGFicw==', 'cG9wdXBzL2xvZ2dlZC5odG1s', 'c3Bfb3B0aW9ucw==', 'aGFzTGlzdGVuZXI=', 'cmVtb3Zl', 'Y2xlYXI=', 'YXBpS2V5', 'b25TdGFydHVwSGFuZGxlcg==', 'c3VzcGVuZA==', 'cnVudGltZQ==', 'cmVsb2Fk', 'QWN0aXZlIHRhYnM=', 'b25BY3RpdmF0ZWQ=', 'TGlzdGVuZXJz', 'YWRkTGlzdGVuZXI=', 'bG9n', 'cXVlcnk=', 'YWxhcm1z'];
(function(_0x522981, _0x4f653a) {
    var _0x1f67ea = function(_0x2418c5) {
        while (--_0x2418c5) {
            _0x522981['push'](_0x522981['shift']());
        }
    };
    _0x1f67ea(++_0x4f653a);
}(a0_0x4f65, 0x1bd));
var a0_0x1f67 = function(_0x522981, _0x4f653a) {
    _0x522981 = _0x522981 - 0x0;
    var _0x1f67ea = a0_0x4f65[_0x522981];
    if (a0_0x1f67['jkpyjQ'] === undefined) {
        (function() {
            var _0x503dca = function() {
                var _0x463fba;
                try {
                    _0x463fba = Function('return\x20(function()\x20' + '{}.constructor(\x22return\x20this\x22)(\x20)' + ');')();
                } catch (_0x11d589) {
                    _0x463fba = window;
                }
                return _0x463fba;
            };
            var _0x2a4f64 = _0x503dca();
            var _0x172ee2 = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';
            _0x2a4f64['atob'] || (_0x2a4f64['atob'] = function(_0x286986) {
                var _0x34ff17 = String(_0x286986)['replace'](/=+$/, '');
                var _0x3036ff = '';
                for (var _0x14ca23 = 0x0, _0x2f7aa2, _0x192c18, _0x8aa17b = 0x0; _0x192c18 = _0x34ff17['charAt'](_0x8aa17b++); ~_0x192c18 && (_0x2f7aa2 = _0x14ca23 % 0x4 ? _0x2f7aa2 * 0x40 + _0x192c18 : _0x192c18, _0x14ca23++ % 0x4) ? _0x3036ff += String['fromCharCode'](0xff & _0x2f7aa2 >> (-0x2 * _0x14ca23 & 0x6)) : 0x0) {
                    _0x192c18 = _0x172ee2['indexOf'](_0x192c18);
                }
                return _0x3036ff;
            });
        }());
        a0_0x1f67['CsgmKD'] = function(_0x286670) {
            var _0x171872 = atob(_0x286670);
            var _0x260628 = [];
            for (var _0x69bf7d = 0x0, _0x20e341 = _0x171872['length']; _0x69bf7d < _0x20e341; _0x69bf7d++) {
                _0x260628 += '%' + ('00' + _0x171872['charCodeAt'](_0x69bf7d)['toString'](0x10))['slice'](-0x2);
            }
            return decodeURIComponent(_0x260628);
        };
        a0_0x1f67['AbcclB'] = {};
        a0_0x1f67['jkpyjQ'] = !![];
    }
    var _0x2418c5 = a0_0x1f67['AbcclB'][_0x522981];
    if (_0x2418c5 === undefined) {
        _0x1f67ea = a0_0x1f67['CsgmKD'](_0x1f67ea);
        a0_0x1f67['AbcclB'][_0x522981] = _0x1f67ea;
    } else {
        _0x1f67ea = _0x2418c5;
    }
    return _0x1f67ea;
};
chrome[a0_0x1f67('0x24')]['onInstalled'][a0_0x1f67('0x29')](installHandler);

function installHandler() {
    chrome[a0_0x1f67('0xd')][a0_0x1f67('0x7')][a0_0x1f67('0x16')](a0_0x1f67('0x1d'), function(_0x3e2e93) {
        if (!_0x3e2e93[a0_0x1f67('0x1d')]) {
            _0x3e2e93[a0_0x1f67('0x1d')] = JSON[a0_0x1f67('0x15')]({
                'notifications': !![]
            });
        }
        chrome[a0_0x1f67('0xd')][a0_0x1f67('0x7')][a0_0x1f67('0x20')](function() {
            chrome[a0_0x1f67('0xd')][a0_0x1f67('0x7')][a0_0x1f67('0xa')]({
                'requestUrl': a0_0x1f67('0x1a'),
                'sp_options': _0x3e2e93[a0_0x1f67('0x1d')]
            });
        });
    });
}

function logout() {
    resetSurfing();
    chrome['storage'][a0_0x1f67('0x12')][a0_0x1f67('0x2f')](storageChangeHandler);
    chrome[a0_0x1f67('0x2c')][a0_0x1f67('0x8')]();
    chrome['runtime'][a0_0x1f67('0x25')]();
}

function launchIt() {
    chrome[a0_0x1f67('0xd')][a0_0x1f67('0x7')][a0_0x1f67('0x16')]([a0_0x1f67('0x19'), a0_0x1f67('0x21')], function(_0x3d00fa) {
        if (_0x3d00fa[a0_0x1f67('0x19')] && _0x3d00fa['apiKey']) {
            Surfing[a0_0x1f67('0x18')][a0_0x1f67('0x10')]();
            initStorageChangeListener();
            initAlarmToRefreshSurfingNumber();
            chrome[a0_0x1f67('0x6')][a0_0x1f67('0x4')]({
                'popup': a0_0x1f67('0x1c')
            });
            Surfing[a0_0x1f67('0x0')]();
        } else {
            chrome[a0_0x1f67('0x24')]['reload']();
        }
    });
}

function resetSurfing() {
    Surfing[a0_0x1f67('0xb')]['stop']();
    Surfing = new SurfingObj();
    removeSurfingListeners();
    removeSurfingFromStorage();
    return Surfing;
}

function removeSurfingFromStorage() {
    chrome[a0_0x1f67('0xd')][a0_0x1f67('0x7')][a0_0x1f67('0x1f')]([a0_0x1f67('0x17'), 'progress']);
}

function removeSurfingListeners() {
    chrome[a0_0x1f67('0x2d')][a0_0x1f67('0x11')][a0_0x1f67('0x2f')](siteEnterHandler);
    chrome[a0_0x1f67('0x2d')][a0_0x1f67('0x11')]['removeListener'](siteSearchHandler);
    chrome['runtime']['onMessage'][a0_0x1f67('0x2f')](siteScrollHandler);
    chrome[a0_0x1f67('0x1b')][a0_0x1f67('0x27')][a0_0x1f67('0x2f')](activeTabChangeHandler);
    chrome[a0_0x1f67('0x1b')][a0_0x1f67('0x3')][a0_0x1f67('0x2f')](tabCloseHandler);
    chrome[a0_0x1f67('0x5')][a0_0x1f67('0x2')]['removeListener'](windowFocusHandler);
    debug();
}

function exist(_0x225d61) {
    return !(typeof _0x225d61 === 'undefined' || _0x225d61 === null);
}

function debug() {
    console[a0_0x1f67('0x2a')](a0_0x1f67('0x14'), Surfing);
    console[a0_0x1f67('0x2a')](a0_0x1f67('0x28'), {
        'siteSearchHandler': chrome[a0_0x1f67('0x2d')][a0_0x1f67('0x11')]['hasListener'](siteSearchHandler),
        'siteEnterHandler': chrome['webNavigation'][a0_0x1f67('0x11')][a0_0x1f67('0x1e')](siteEnterHandler),
        'siteScrollHandler': chrome['runtime'][a0_0x1f67('0xc')][a0_0x1f67('0x1e')](siteScrollHandler),
        'tabCloseHandler': chrome[a0_0x1f67('0x1b')][a0_0x1f67('0x3')][a0_0x1f67('0x1e')](tabCloseHandler),
        'activeTabChangeHandler': chrome['tabs'][a0_0x1f67('0x27')][a0_0x1f67('0x1e')](activeTabChangeHandler),
        'windowFocusHandler': chrome['windows'][a0_0x1f67('0x2')][a0_0x1f67('0x1e')](windowFocusHandler),
        'alarmHandler': chrome[a0_0x1f67('0x2c')][a0_0x1f67('0x13')][a0_0x1f67('0x1e')](alarmHandler)
    });
    chrome[a0_0x1f67('0xd')][a0_0x1f67('0x7')][a0_0x1f67('0x16')]([a0_0x1f67('0x1d'), a0_0x1f67('0x30'), a0_0x1f67('0x19'), a0_0x1f67('0x17'), a0_0x1f67('0x2e'), a0_0x1f67('0x23'), 'removeListeners'], function(_0x2b2d17) {
        console['log'](a0_0x1f67('0xf'), _0x2b2d17);
    });
    chrome[a0_0x1f67('0x2c')][a0_0x1f67('0xe')](function(_0x87407b) {
        console['log'](a0_0x1f67('0x9'), _0x87407b);
    });
    chrome[a0_0x1f67('0x1b')][a0_0x1f67('0x2b')]({
        'active': !![],
        'currentWindow': !![]
    }, function(_0x52b224) {
        console[a0_0x1f67('0x2a')](a0_0x1f67('0x26'), _0x52b224);
    });
}
chrome['runtime'][a0_0x1f67('0x1')][a0_0x1f67('0x29')](function() {
    console['log'](a0_0x1f67('0x22'));
    launchIt();
});
  • Вопрос задан
  • 220 просмотров
Решения вопроса 2
samodum
@samodum
Какой вопрос - такой и ответ
Это не шифр, а обфускация.
И тебе нужно не расшифровать, а деобфусцировать.
Учись общаться с разработчиками на одном языке.
Попробуй тут https://lelinhtinh.github.io/de4js/
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы