bar*_*ley 5 javascript security
如果安全和正确地存储密码是好的风格和安全性,那么对于要求用户输入密码的网页应该不一样吗?
考虑这个例子
<script>
function copy() {
    var text = document.getElementsById('text');
    var pass = document.getElementsById('pass');
    text.value = pass.value;
}
</script>
<input type=text id=text>
<input type=password id=pass>
<button onclick="copy();">copy</button>
在密码框中键入内容并单击复制按钮,然后将其暴露给世界.但是,如果您从密码框中复制并粘贴,那么您将获得无用的数据.
考虑登录页面上包含的不受您控制的javascript片段(分析,页面流跟踪器,云中的托管脚本).Web浏览器是否有理由阻止这种对密码字段的编程访问,而是提供自己的密码验证API?
此漏洞是[传统实现] 应用程序级别身份验证所固有的,因此必须通过线路收集和传输登录/密码对.(并且网络浏览器不是唯一受此威胁威胁的地方).
javascript主机和/或http级别的一些安全措施已到位,以防止您预见到的一些危险,但无论如何总是存在代码注入的风险......
最重要的是,如果需要有效的安全性,您可以考虑其他身份验证方法,例如操作系统集成安全性,其他形式的基于挑战的安全性,以及非基于密码的方法(例如:类似验证码的挑战,显示一系列照片,其中一些是经过身份验证的人预先学习的.)
Web浏览器是否有理由阻止这种对密码字段的编程访问,而是提供自己的密码验证API?
号<input type="password">是一个方便的功能,不显示文本当你键入它.它不是任何一种安全措施.
浏览器窗口内的所有内容都完全由网站控制.它可以很容易地伪造密码字段,或者在窗口中嗅探按键,以避免.value对密码字段的任何可能的保护.没有办法统治这一点,所以试图禁止访问密码字段是没有意义的.
更重要的是,它会破坏密码字段的几个非常有用的功能,例如能够让客户端脚本检查您在注册时输入了一个非平凡的密码(并警告您,例如使用与您相同的密码)用户名),或者具有基于客户端脚本的登录系统在发送之前散列密码.
考虑登录页面上包含的不受您控制的javascript片段(分析,页面流跟踪器,云中的托管脚本).
0,除非你完全做错了.你需要阻止它.
您在页面上包含的任何脚本都可以完全访问整个站点的脚本.隐藏在安全上下文中执行的流氓脚本的类型密码完全没有结果,因为它可以将iframe放入文档的innerHTML中,其中包含delete-account表单,然后点击提交按钮.或者记录您在网站上进行的每个按键.
如果您在页面上包含其他人的脚本,则您实际上是在为他们提供管理员访问权限,因此您最好相信他们.将跟踪器或广告脚本放在对其有任何敏感性的网站上是一种病态乐观的行为.
是的,Stack Overflow包含来自google-analytics.com的脚本.是的,谷歌可以,如果他们愿意,可以在该脚本中包含代码,让每个人编辑所有答案,说"我喜欢底部大声笑",或者让管理员删除所有内容.也许他们不会,如果他们今天心情愉快的话.你感觉幸运吗?
我喜欢底部哈哈
| 归档时间: | 
 | 
| 查看次数: | 3195 次 | 
| 最近记录: |