【问题标题】:Encrypt HTML form (in a jsp) before submit in a .js在 .js 中提交之前加密 HTML 表单(在 jsp 中)
【发布时间】:2018-07-06 09:12:39
【问题描述】:

我有 2 个文件:

  • send.jsp:一个带有 java 函数的 .JSP、HTML 和一个带有 javascript 函数的 java main。
  • identify.js:带有其他 (javascript) 功能的 .JS

在 send.jsp 中有一个带有一些参数的表单 (HTML)。从此文件中调用了一个名为 save (identify.js) 的函数。该函数操作表单参数并提交。

现在的问题...我想在提交之前加密表单参数,即在函数save中。我一直在寻找一种在javascript中加密参数的方法,我尝试了很多代码,它根本不起作用。

任何人都可以帮助我使用一种适用于 JS 的方法吗?这里的函数保存

谢谢!

function save()
{var formu=document.identifica;

formu.numContrato.value=l_aux.substr(0,9);
formu.numUsuario.value=l_aux.substr(9,9);
formu.GL_numUsuario.value=formu.numUsuario.value;

/* HERE I WOULD LIKE TO ENCRYPT formu */

formu.submit();
return true;
}

【问题讨论】:

  • 您不只是使用 HTTPS 有什么原因吗?
  • 我不知道,@Quentin 我的任务是加密这些在 POST 中发送的参数,我无法更改文件的当前结构或其他,但对代码进行了小干预。问题是使用 POST,参数是可见的,有人可以用 POST 交换 GET,或者使用跨脚本攻击。
  • 定义“某人”。您是指输入数据的用户还是第三方攻击者?
  • 第三方攻击者

标签: javascript forms jsp post


【解决方案1】:

您有一个XY Problem

问题在于,使用 POST,参数是可见的,[第三方攻击者] 可以将 POST 换成 GET,或者使用跨脚本攻击。

您提出的解决方案(使用 JavaScript 加密用户输入的内容)容易受到中间人攻击。

对于这个问题,您应该使用行业标准解决方案,即 HTTPS。

这需要在你的 HTTP 服务器上配置,不能在客户端代码级别实现。

或使用跨脚本攻击

XSS is an entirely different problem 您需要在任何接受用户输入并将其输出到 HTML 的代码中解决它。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-03-08
    • 1970-01-01
    • 2013-03-21
    • 1970-01-01
    • 2012-08-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多