Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/467.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代码以防止在MongoDB中注入javascript?_Javascript - Fatal编程技术网

加密javascript代码以防止在MongoDB中注入javascript?

加密javascript代码以防止在MongoDB中注入javascript?,javascript,Javascript,我将在MongoDB(无SQL)数据库中存储javascript代码 但是为了防止javascript注入,我想加密字符串中的javascript代码 有没有一种方法可以在不使用有缺陷的javascript代码的情况下对其进行加密和解密?还有很多其他的东西在考虑这一点 我建议您看看jquery插件加密 我个人没有使用过这些加密工具中的一个,但是集成似乎很容易, 当然,您应该生成一个随机加密密钥: 例如,以下是一个示例: $(函数(){ $('#form_id').jqcrypt({ 关键字名称

我将在MongoDB(无SQL)数据库中存储javascript代码


但是为了防止javascript注入,我想加密字符串中的javascript代码


有没有一种方法可以在不使用有缺陷的javascript代码的情况下对其进行加密和解密?

还有很多其他的东西在考虑这一点

我建议您看看jquery插件加密

我个人没有使用过这些加密工具中的一个,但是集成似乎很容易, 当然,您应该生成一个随机加密密钥:

例如,以下是一个示例:


$(函数(){
$('#form_id').jqcrypt({
关键字名称:“jqckval”,
随机键:错,
key:'some_key_value',
回调:函数(形式){
表单提交();
}
});
});
这里应该是解密的例子

function c2sdecrypt($s,$k){
    $k = base64_decode(urldecode($k));
    $s = urldecode($s);
    $k = str_split(str_pad('', strlen($s), $k));
    $sa = str_split($s);
    foreach($sa as $i=>$v){
        $t = ord($v)-ord($k[$i]);
        $sa[$i] = chr( $t < 0 ?($t+256):$t);
    }
    return urldecode(join('', $sa));
 }
函数c2sdecrypt($s,$k){
$k=base64_解码(urldecode($k));
$s=urldecode$s;
$k=STRU分割(STRU pad('',strlen($s),$k));
$sa=str_分割($s);
foreach($sa为$i=>$v){
$t=ord($v)-ord($k[$i]);
$sa[$i]=chr($t<0?($t+256):$t);
}
返回urldecode(join(“”,$sa));
}
来自jqCrypt插件

唯一的优点是在网页中生成一个强散列来加密
从网页客户端返回的值。

还有很多其他的东西在考虑这个问题

我建议您看看jquery插件加密

我个人没有使用过这些加密工具中的一个,但是集成似乎很容易, 当然,您应该生成一个随机加密密钥:

例如,以下是一个示例:


$(函数(){
$('#form_id').jqcrypt({
关键字名称:“jqckval”,
随机键:错,
key:'some_key_value',
回调:函数(形式){
表单提交();
}
});
});
这里应该是解密的例子

function c2sdecrypt($s,$k){
    $k = base64_decode(urldecode($k));
    $s = urldecode($s);
    $k = str_split(str_pad('', strlen($s), $k));
    $sa = str_split($s);
    foreach($sa as $i=>$v){
        $t = ord($v)-ord($k[$i]);
        $sa[$i] = chr( $t < 0 ?($t+256):$t);
    }
    return urldecode(join('', $sa));
 }
函数c2sdecrypt($s,$k){
$k=base64_解码(urldecode($k));
$s=urldecode$s;
$k=STRU分割(STRU pad('',strlen($s),$k));
$sa=str_分割($s);
foreach($sa为$i=>$v){
$t=ord($v)-ord($k[$i]);
$sa[$i]=chr($t<0?($t+256):$t);
}
返回urldecode(join(“”,$sa));
}
来自jqCrypt插件

唯一的优点是在网页中生成一个强散列来加密
从网页客户端返回的值。

什么?我认为NoSQL的要点是,通过将数据连接到字符串查询中不会引起注入问题?@bobince:阅读标题:NoSQL并不意味着没有SQL注入,“而是为了防止javascript注入…”而这种注入会发生在哪里?哇,他们认真地将用户输入逐字添加到
函数
字符串中,使其成为
exec
​这甚至不是那篇文章中列出的令人难以置信的基本安全错误的开始。我想我不会用驳船撑杆去接触散居国外的人。另外,我以前也没有真正看过Mongo(这不是我选择的NoSQL),但我有一个通用的
eval
​能够使用“where”字符串(而不是使用内联
function(){…}
expression)看起来是一个恼人、缓慢且危险的设计决策。啊,什么?我认为NoSQL的要点是,通过将数据连接到字符串查询中不会引起注入问题?@bobince:阅读标题:NoSQL并不意味着没有SQL注入,“而是为了防止javascript注入…”而这种注入会发生在哪里?哇,他们认真地将用户输入逐字添加到
函数
字符串中,使其成为
exec
​这甚至不是那篇文章中列出的令人难以置信的基本安全错误的开始。我想我不会用驳船撑杆去接触散居国外的人。另外,我以前也没有真正看过Mongo(这不是我选择的NoSQL),但我有一个通用的
eval
​能够使用“where”字符串(而不是使用内联
function(){…}
expression)看起来是一个恼人、缓慢且危险的设计决策。啊。