【问题标题】:Is it safe to use "readonly" elements in the form of ejs template?以 ejs 模板的形式使用“只读”元素是否安全?
【发布时间】:2020-08-21 00:25:33
【问题描述】:

我想知道是否有任何带有只读元素的脚本可以通过绕过来编辑。我正在练习使用以下脚本的 ejs 模板。人们建议我不要采取这种行动,并提到它可能不安全。

例如;

              <input
              type="text"
              id="name"
              name="name"
              class="form-control"
              value=<%= name %>
              readonly/>

值中的名称将是数据库中的默认值。即使名称不可编辑,是否有任何恶意行为者可以编辑名称?或者如果我使用禁用的元素,我怎样才能将值发布到数据库?我想知道是否有任何解决方法。

你能指点一下吗? 谢谢。

【问题讨论】:

    标签: javascript html node.js frontend ejs


    【解决方案1】:

    您还需要检查后端/服务器端的值。您无法知道攻击者是通过您的表单还是特制请求提交值。

    【讨论】:

      【解决方案2】:

      是的,如果您直接从此输入发送值,用户可以删除只读部分并更改值。这可能导致不良结果。 1.您可以为您要发送的值创建一个短期Session[]。 2. 你可以从你想发布的地方调用它。 (因此输入字段和您在那里调用的值之间不会有任何链接。输入字段将仅用于查看。您也可以将其删除或将只读更改为禁用。

      我的观点 2>1.

      【讨论】:

      • 或使用token验证
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-11-23
      • 1970-01-01
      相关资源
      最近更新 更多