• 注册
  • 开发 开发 关注:3 内容:3133

    Canopy家长控制应用程序曝出XSS漏洞

  • 查看作者
  • 打赏作者
  • 当前位置: 职业司 > 资讯 > 开发 > 正文
    • 开发
    • Canopy家长控制应用程序曝出XSS漏洞

      研究人员称,Canopy是一个家长控制应用程序,它提供了一系列的功能,可以通过内容检查来保护孩子们上网,但它却很容易受到各种跨站脚本(XSS)攻击。

      这些攻击可以造成禁用孩子的监控甚至是更严重的后果,还可以向家长提供恶意软件。

      Canopy提供了防止色情短信、设备照片保护(通过图像过滤)、屏幕时间监控、为父母提供儿童通信警报、违规网站的智能内容过滤,同时,Canopy还使用了人工智能引擎和虚拟网络过滤功能。此外,对于父母来说,它还提供了远程设备管理和控制孩子使用的应用程序和网站的功能。

      据安全研究员称,该应用的安装过程需要授予一系列的权限,包括无障碍支持、在其他应用程序之上显示的功能、安装根CA和虚拟网络配置。该应用程序还可以(选择性地)充当设备管理员,防止应用程序被删除……这种特权访问会给设备的安全和使用这些设备的儿童的隐私带来相当大的风险。

      该应用程序被曝出XSS漏洞

      事实证明,研究人员的想法并没有错。在研究该应用程序的安卓版本时,研究人员发现了几个XSS漏洞,当恶意脚本被注入到其他正常的或受信任的网站时,就会发生这种攻击。

      这种注入通常是通过将恶意代码输入到网络响应或评论字段来实现的,然后有效载荷就会被发送到网络服务器。通常情况下,这些响应会在服务器端被验证,因此恶意脚本就会被阻止了。但在Canopy公司的案例中,研究人员发现该应用缺乏这些方面的检查。

      一旦网站被入侵后,那么该网站的任何访问者都有可能成为受害者,要么是被存储型XSS攻击,要么是被引诱点击一个链接,被反射型XSS攻击。

      漏洞简析

      第一个问题是该应用程序的保护措施可以被绕过。

      当研究人员测试Canopy的屏蔽不良网站核心功能时,他发现当他试图在测试的安卓设备上加载一个被禁止的网站时,显示的是一个屏蔽通知页面。该通知页面内有一个按钮,它可以使孩子要求他或她的父母允许所要访问的页面。

      当在测试设备上点击了这个按钮后,然后在响应的数据中附加上了一个简单的XSS有效载荷脚本,在待访问的网站上创建一个JavaScript弹出窗口,仔细观察会发生什么。当他进入网站时,果然,出现了弹窗口。

      该漏洞产生的原因是由于系统未能对用户输入的内容进行转义。研究人员发现,该字段只允许用户输入50个字符,但这就足以输入一个外部脚本。现在我们可以有多种方法来利用这个漏洞。

      攻击者(例如被监控的孩子)可以在异常请求中嵌入一个有效攻击载荷。虽然攻击者有多种方式利用这个漏洞,但很明显最简单的方式是自动批准一个请求。这里第一个测试的是一个自动点击批准传入的有效载荷。又测试了另一个有效载荷,它可以自动暂停监控保护。

      外来攻击者对Canopy进行攻击

      虽然熟悉脚本知识的孩子可以对父母进行网络攻击,但研究人员也发现它还可以产生更严重的后果。

      例如,他观察到阻止通知页面中的URL值(表明哪个网站被拒绝)会显示在父母仪表板的主页面上。研究人员在这里做了一个简单的测试,在URL中添加了一个脚本标签,并在父控制台进行加载,当加载父仪表板的主页面时该脚本就会执行。我们现在可以提交一个异常请求,当父母登录检查被监控的设备时,攻击者就可以控制Canopy应用程序了。

      此外,由于攻击需要使用一个特制的URL,因此攻击完全有可能来自外部的第三方平台。攻击者只需要建立一个可能被屏蔽的网站,并在其URL中添加脚本,并诱导孩子尝试访问它。当有关访问请求的通知传到家长控制台时,监控该账户的家长就会成为恶意脚本的受害者。

      但这还不是全部。事实证明,Canopy API的设计允许外部攻击者通过猜测父账户的ID,直接将XSS有效载荷注入到父母账户的网页上。这还可能会将用户重定向到广告页面、进行其他漏洞利用、进行恶意软件攻击等后果。最糟糕的是,攻击者还可以劫持对安装在孩子手机上的应用程序的访问,并从受保护的设备中提取GPS坐标。

      由于用户的账户ID是一串很简短的数值,因此,攻击者只需依次对每个ID值发出阻断异常请求,就可以在每个账户上使用攻击载荷。

      最糟糕的是Canopy没有发布补丁

      研究人员说,他多次通过电话和电子邮件与该公司进行联系,但几乎没有得到回应,因此他决定披露这些漏洞。他补充说,为了防止儿童受到攻击,开发商应该尽快提出修复措施。

      Canopy需要对所有用户输入的字段进行转义,但实际上它并没有这样做。在反复尝试与供应商进行合作后,为方便其他人可以从中了解并采取相应的措施,最终决定公布这份报告 。

      本文翻译自: 链接如若转载,请注明原文地址。

      请登录之后再进行评论

      登录

      手机阅读天地(APP)

      • 微信公众号
      • 微信小程序
      • 安卓APP
      手机浏览,惊喜多多
      匿名树洞,说我想说!
      问答悬赏,VIP可见!
      密码可见,回复可见!
      即时聊天、群聊互动!
      宠物孵化,赠送礼物!
      动态像框,专属头衔!
      挑战/抽奖,金币送不停!
      赶紧体会下,不会让你失望!
    • 实时动态
    • 签到
    • 做任务
    • 发表内容
    • 偏好设置
    • 到底部
    • 帖子间隔 侧栏位置: