HTML5 Upload Folder With Webkitdirectory – Phishing

Webkitdirectory

早在 12 年 Alan Layt 便写了这篇关于 HTML5 中上传文件夹新特性的文章(http://sapphion.com/2011/11/21/html5-folder-upload-with-webkitdirectory/),之后阿里做了个简单的 Demo 页面来说明这个特性配合 ClickJacking 是可以达到某种钓鱼效果的(https://security.alibaba.com/blog/blog.htm?spm=0.0.0.0.IYip0H&id=3),基于前面两篇文章这里做了简单的 Demo 分享一下。

Phishing

在支持 HTML5 的浏览其中嵌入:

此时文件夹变得可选择,攻击者可以实现使用 webkitdirectory 特性诱导用户点击下载选择文件夹,其背后实现的是将文件夹上传到服务端,之后我写了一个简单的 Demo 来进行测试,流程大致为:

  • 编写前端钓鱼下载页面
  • 诱导用户点击选择文件夹
  • 过滤出用户文件夹的指定文件
  • 将符合条件的文件上传至远程服务器

这里对目标文件夹内的文件格式进行过滤,防止在容量过大的情况,请求过久发现疑点。

Demo

phishing.html

_phishing.php

Case

  • Windows & Unix

在测试过程中, 我们发现类 Unix 系统中招率高于 Windows (原因如图),Windows 上提示浏览文件夹与平时下载保存不同,而 Mac OS 下基本和平时下载文件操作 UI 一样,由于习惯问题直接敲下键盘回车“下载”文件的人不在少数。

c334041bgw1exrfp65k8zj215e0xan2l Todo

  • 前端分析处理出价值文件;
  • 图片视频的优化处理上传;
  • XSS 持久性获取文件资料;

End

  • 我意识到上面代码有个大问题,这将使得受害者能够轻易的进入攻击者的服务器。
  • ClickJacking / CSRF Worm 等前端攻击在实际渗透中可能会有着非常好的效果。

[via@知道创宇博客]