没有 name
属性的输入字段是否容易受到 MITM 攻击(无 SSL)或任何其他攻击?
例如:
<form action="" method="post">
<label for="credit_card_number"><input id="credit_card_number" type="text" value="4111111111111111"></label>
<button type="submit">Submit</button>
</form>
我正在做的是使用 javascript 获取值,然后发布到 stripe.js,接收 token ,然后在提交之前清除 CC 字段的所有值(即使在我的测试中从未发送值)表单发送到服务器( token 字段是唯一收到的东西)。
我知道 SSL 是一个“好主意”,但它是否有必要防止攻击(例如 MITM)?还有“为什么?”,如果是的话。
最佳答案
HTML spec说一个表单字段只有在与名称属性配对时才应被视为有效,因此浏览器不应提交没有名称的表单字段(无论如何都不能,因为无法将其解析为查询字符串)。
这实际上与 MITM 攻击无关;您总是希望通过 HTTPS 为您的页面提供服务,以减少有人拦截请求并修改支付页面以获取详细信息并将其发送到其他地方的可能性。
关于javascript - 是否通过浏览器发送没有名称 =“” 的输入字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25395520/