美文网首页
iOS常见的H5安全问题(Safari on iOS、Chrom

iOS常见的H5安全问题(Safari on iOS、Chrom

作者: 社会隆 | 来源:发表于2021-03-17 18:05 被阅读0次

    1、跨站脚本攻击(XSS Cross Site Scripting)

    网站一大堆文章 解释啥是XSS

    举几个不常见的案例:

    • 通过SVG文件进行XSS
      SVG标签可以通过onload等事件在任何元素上执行JavaScript,而无需用户交互
      <svg onload="javascript:alert(1)" xmlns="http://www.w3.org/2000/svg"></svg>
      <svg xmlns="http://www.w3.org/2000/svg"><g onload="javascript:alert(1)"></g></svg>
      <svg xmlns="http://www.w3.org/2000/svg"><script>alert(1)</script></svg>
      
    • 通过audio、video标签进行XSS
      audio、video标签标签可以通过onload等事件在任何元素上执行JavaScript,而无需用户交互
      <video poster=javascript:alert(1)//></video>
      <video><source onerror="alert(1)">
      <video onerror="alert(1)"><source></source></video>
      
    • 通过内嵌iframe获取权限
    • 通过draggable API进行文本注入
      • 通过事件处理“ ondragstart”和值为“ true”的属性“ draggable”,“ setData”方法可以将文本“malicious code”而不是“Drop me”到iframe中。该iframe可以包含一个网页,其中包含一个用于输入数据的输入字段。请注意,由于安全隐患,跨域拖放功能同时受到严格限制。
      • 通常情况下,要禁用iframe的使用,可以在body的onLoad方法中遍历dom节点,移除iframe标签

    2、跨域访问(CORS CrossOrigin Resources Sharing)

    {
      "Access–Control-Allow-Origin": "*"
    } 
    

    对于设置了允许所有域访问的接口来说,带来快捷的同时,也带来风险
    通常情况下只允许同域访问,在特殊情况下需要允许a.com访问b.com时,在b.com上设置如下来允许a.com访问

    {
      "Access–Control-Allow-Origin": "http://a.com"
    } 
    

    对跨越访问的请求要严格校验session信息,包括请求头、请求参数等

    3、Web Worker 和 Service Worker 带来的安全问题

    Web Worker使用教程
    Service Worker使用教程

    通过预防XSS,来避免带来的问题

    • ddos
      用户一旦访问恶意页面或者网站时,页面的恶意代码就能把用户的浏览器当作肉鸡,利用WebWorker大规模执行多线程攻击,例如DDos攻击、发送垃圾邮件或者进行网络嗅探
    • postMessage + innerHTML带来的问题
      worker.addEventListener(‘message’,function(e) {    
        document.getElementById(‘result’).innerHTML = e.data;    
      }, false); 
      
      postMessage不通过服务器,如果不经过验证和过滤,可能成为XSS注入点。攻击者完全可以构造恶意的data来注入页面DOM,构造XSS攻击,形如“<script></script>”等

    4、file:// 协议跨域访问

    WKWebview控件将allowFileAccessFromFileURLs 设置为YES,开启了file域访问,且允许file域访问http域,但是并未对file域的路径做严格限制。

    [preferences setValue:@YES forKey:@"allowFileAccessFromFileURLs"]; 
    

    相关文章

      网友评论

          本文标题:iOS常见的H5安全问题(Safari on iOS、Chrom

          本文链接:https://www.haomeiwen.com/subject/vxeecltx.html