Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/mercurial/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
javascript中的编码语言是什么?_Javascript_Blogger - Fatal编程技术网

javascript中的编码语言是什么?

javascript中的编码语言是什么?,javascript,blogger,Javascript,Blogger,我有下面的脚本,我不知道我们是否要开始搜索,因为我不熟悉代码 这些代码包含在我的博客blogger.com上 具体来说,它来自我下载的模板 我想修改代码,因为它注入了一些文本,我很好奇他们是怎么做到的 它的作用是,当我删除id=“someID”的元素时,他们会将我的页面重定向到他们的网站 注意:我删除了中间部分的一些脚本,因为它太长了,这个站点无法处理 更新:我删除了var I1I的中间值 这是完整的脚本 />16&0xff; o2=位>>8&0xff; o3=位&0xff; 如果(h3==64

我有下面的脚本,我不知道我们是否要开始搜索,因为我不熟悉代码

这些代码包含在我的博客blogger.com上

具体来说,它来自我下载的模板

我想修改代码,因为它注入了一些文本,我很好奇他们是怎么做到的

它的作用是,当我删除id=“someID”的元素时,他们会将我的页面重定向到他们的网站

注意:我删除了中间部分的一些脚本,因为它太长了,这个站点无法处理

更新:我删除了var I1I的中间值

这是完整的脚本

/>16&0xff;
o2=位>>8&0xff;
o3=位&0xff;
如果(h3==64){
enc+=String.fromCharCode(o1)
}否则如果(h4==64){
enc+=String.fromCharCode(o1,o2)
}否则{
enc+=String.fromCharCode(o1,o2,o3)
}
}而(i=0;i--){
ret+=string.charAt(i);
}
返回ret;
}
评估(0lO(10O(I1I));
//]]>
它本身不是一种“编码语言”:它只是在页面上执行的一种尝试。而且它(至少)实际上是双重编码的。)

第一个阶段很容易展开:只需将
eval(0lO(10O(I1I))
替换为类似于
console.log(0lO(10O(I1I)))
的内容,控制台中就有了源代码。我已经准备好了,但它显然不会显示整个代码(因为您删除了部分编码文本)

然而,您得到的并不是要处理的代码——它是
packer
处理原始源代码的结果,这是我提到的第二个阶段。下面是更详细地讨论这个问题的示例。底线是,有一种可以让你解包代码的语言。

它本身不是一种“编码语言”:它只是在页面上执行的一种尝试。而且它(至少)实际上是双重编码的。)

第一个阶段很容易展开:只需将
eval(0lO(10O(I1I))
替换为类似于
console.log(0lO(10O(I1I)))
的内容,控制台中就有了源代码。我已经准备好了,但它显然不会显示整个代码(因为您删除了部分编码文本)


然而,您得到的并不是要处理的代码——它是
packer
处理原始源代码的结果,这是我提到的第二个阶段。下面是更详细地讨论这个问题的示例。底线是有一个可以让你解包的代码。

你的代码是base64编码的数据,它已经被颠倒过来了

在这方面:

eval(_0lO(_10O(I1I)));
  • 第一个
    \u10o(I1I)
    反转
    I1I
    ,使其顺序正确
  • 然后
    \u 0lO()
    将其从base64解码为数据(在本例中是包含模糊JavaScript的常规字符串值)
  • 最后,
    eval()
要了解脚本的内容,只需将上面的一行替换为:

console.log(_0lO(_10O(I1I)));

至于修改它,我想说的是,只需将解码后的代码修改,然后将其放回您的站点,而不必使用任何人都可能破解的愚蠢编码。

您的代码是base64编码的数据,它已被前后颠倒

在这方面:

eval(_0lO(_10O(I1I)));
  • 第一个
    \u10o(I1I)
    反转
    I1I
    ,使其顺序正确
  • 然后
    \u 0lO()
    将其从base64解码为数据(在本例中是包含模糊JavaScript的常规字符串值)
  • 最后,
    eval()
要了解脚本的内容,只需将上面的一行替换为:

console.log(_0lO(_10O(I1I)));

至于修改它,我想说的是,只要把解码后的代码修改一下,然后把它放回你的网站上,而不需要任何人都能破解的愚蠢的编码。

所以,我深入挖掘了一下,我发现:

function _10O(string) {
    var ret = '',
        i = 0;
    for (i = string.length - 1; i >= 0; i--) {
        ret += string.charAt(i);
    }
    return ret;
}
此函数只镜像给定字符串。因此,
ABC
将是
CBA
之后。它用于将给定的
var I1I
(实际镜像为base64)镜像到base64。然后通过
\u 0lO
功能对其进行base64解码

此操作的输出应类似于:

eval(function(p,a,c,k,e,d){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.from​CharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--){d[e(c)]=k[c]||e(c)}k=[function(e){return d[e]}];e=function(){............ // I have stripped that here to not include any malicious code inside Stack Overflow!
eval(function(p,a,c,k,e,d){e=function(c){return(c)关于恶意脚本,我通过谷歌搜索脚本的部分解码内容找到了脚本的实际内容

因此,让我们假设:这是一个恶意的、模糊的、base64编码的脚本,用于向恶意站点打开


注意:在我的计算机上运行此程序会在防病毒弹出窗口中受到影响,因此请小心。我已将代码剥离,以不包含整个恶意
eval
内容。

因此,我深入挖掘了一下,我发现:

function _10O(string) {
    var ret = '',
        i = 0;
    for (i = string.length - 1; i >= 0; i--) {
        ret += string.charAt(i);
    }
    return ret;
}
此函数只镜像给定字符串。因此,
ABC
将是
CBA
之后。它用于将给定的
var I1I
(实际上是镜像的base64)镜像到base64。然后由
\u 0lO
函数对其进行base64解码

此操作的输出应类似于:

eval(function(p,a,c,k,e,d){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.from​CharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--){d[e(c)]=k[c]||e(c)}k=[function(e){return d[e]}];e=function(){............ // I have stripped that here to not include any malicious code inside Stack Overflow!
eval(function(p,a,c,k,e,d){e=function(c){return(c)关于恶意脚本,我通过谷歌搜索脚本的部分解码内容找到了脚本的实际内容

因此,让我们假设:这是一个恶意的、模糊的、base64编码的脚本,用于向恶意站点打开

注意:在我的机器上运行此程序会在防病毒弹出窗口中受到影响,请小心