badusb详细制作教程(两种方式实现远控)

badusb是一种几乎可以突破任何杀毒软件和防火墙的设备,堪称渗透测试利器

文章目录

  • 前言
  • 一、什么是badusb/li>
  • 二,badusb的优点
  • 三,badusb是如何攻击的/li>
    • badusb原理
    • HID攻击
    • 漏洞产生原因
  • 三、准备步骤
    • 1.设备
    • 2,编辑器的安装与设置
  • 四,编写代码(重点)
    • 第一种: SEToolkit + badusb实现PowerShell注入攻击
    • 第二种:Cobalt Strike + badusb 实现PowerShell注入攻击
  • 五,烧录
  • 六,badusb有多强大
    • 攻击场景
  • 总结

badusb详细制作教程(两种方式实现远控)

BadUSB是《黑客军团》中fsociety组织常用的工具之一,无论是向服务器下载木马控制被害者主机,还是达琳在停车场帅气的扔出大量USB钓鱼,BadUSB都是功不可没的物理武器之一


前言


在2014年美国黑帽大会上,安全研究人员JakobLell和独立安全研究人员Karsten Nohl展示了他们称为“BadUSB”的攻击方法,这种攻击方法让USB安全和几乎所有和USB相关的设备(包括具有USB端口的电脑)都陷入相当危险的状态。


一、什么是badusb/h1>

BadUSB 是利用 USB 固件中固有的漏洞的攻击。这种攻击重新编程USB设备,使其充当人机交互设备。一旦重新设计,USB 设备将用于在受害者的计算机上谨慎执行命令或运行恶意程序。


二,badusb的优点

在USB攻击领域,很多年前常用的是老式USB病毒autorun.inf,现在估计随便一个杀毒软件就能把它杀得死死的,与autorun.inf不同,BadUSB是利用了USB协议上的漏洞,通过更改USB的内部固件,在正常的USB接口接入后,模拟外置鼠标、键盘的功能,以此来使目标主机执行已经精心构造好的命令。在此过程中不会引起杀毒软件、防火墙的一丝怀疑。而且因为是在固件级别的应用,U盘格式化根本无法阻止其内部代码的执行。

同样因为是对USB的利用,Windows、Linux、MAC等各类操作系统不必联网下载专用的驱动程序。此外,向badusb烧录的程序极为简单,大部分是对键盘按键进行模拟,上手较为容易。

badusb也是社会工程学的一个典型示例,它极大地利用了人们的好奇心,在路边捡到的U盘,估计九成以上的人们都想看看里面有什么东西,而当你插入U盘,攻击就很难再停止下来了。


三,badusb是如何攻击的/h1>

badusb原理

利用HID(Human InterfaceDevice,是计算机直接与人交互的设备,例如键盘、鼠标等)进行攻击,将USB设备伪装使电脑识别为键盘,再利用USB设备中的微控制芯片,向主机发送命令,从而实现完全控制主机。


HID攻击

HID是Human Interface Device的缩写,由其名称可以了解HID设备是直接与人交互的设备,例如键盘、鼠标与游戏杆等。不过HID设备并不一定要有人机接口,只要符合HID类别规范的设备都是HID设备。一般来讲针对HID的攻击主要集中在键盘鼠标上,因为只要控制了用户键盘,基本上就等于控制了用户的电脑。攻击者会把攻击隐藏在一个正常的鼠标键盘中,当用户将含有攻击向量的鼠标或键盘,插入电脑时,恶意代码会被加载并执行。


漏洞产生原因

现在的USB设备很多,比如语音视频设备、摄像头等,因此要求系统提供最大的兼容性,甚至免驱;所以在设计USB标准的时候没有要求每个USB设备像网络设备那样占有一个唯一可识别的MAC地址让系统进行验证,而是允许一个USB设备具有多个输入输出设备的特征。这样就可以通过重写U盘固件,伪装成一个USB键盘,并通过虚拟键盘输入集成到U盘固件中的指令和代码而进行攻击。


三、准备步骤

1.设备

制作badusb的几种板子
能够制作badusb的几种常见载体有:Arduino Leonardo、Phison、Teensy、Attiny85、PS2303(芯片)、RUBBER DUCKY等。从专业程度和易用性来讲RUBBER DUCKY最优(Hak5官方提供了许多现成的按键脚本和payload),但价格也最贵。

badusb详细制作教程(两种方式实现远控)
然后打开工具-开发板-开发板管理器:
badusb详细制作教程(两种方式实现远控)
回到主界面,开发板选择,选择工具-开发板- Arduino Leonardo。编程器选择,AVRISP mkII,如下图所示:
badusb详细制作教程(两种方式实现远控)

3.接着我们选择第一个选项,Powershell Alphanumeric Shellcode Injector

4.首先设置好本机的IP地址,我这里是 192.168.1.40 然后等待生成PowerShell脚本,默认放在 /root/.set/reports/powershell/路径下,我们复制里面的内容。

5.通过badusb,在被害主机终端上执行这一段代码。(这是我生成的,每个人的都不一样)

如果是基于RUBBER DUCKY的badusb,因为可扩展容量,必要时可以考虑把全部代码连带按键脚本烧入。

如果是像作者这种存储空间有限的基于Arduino Leonardo或其他板子的badusb,可以把代码挂在网上,使用Powershell的DownloadString命令远程下载并执行payload。优点是所需空间小,普适性强,而且耗时比上一种方法快N倍(几千个字符的差距)。

经作者实践,在获得meterpreter会话后,只有Windows defender会检测并杀掉powershell进程。基于国内使用Windows defender的人数,大可不必担心攻击失败(当然还是尽快迁移进程为妙)


第二种:Cobalt Strike + badusb 实现PowerShell注入攻击

这种方法无论本机系统是windows,Linux,甚至是Mac也能用,且操作较为简单(需要Java支持)

Cobalt Strike是美国Red Team开发的一款基于java的渗透测试神器,常被业界人称为CS神器。自3.0以后已经不再使用Metasploit框架而作为一个独立的平台使用,分为客户端与服务端,服务端是一个,客户端可以有多个,非常适合团队协同作战,多个攻击者可以同时连接到一个团队服务器上,共享攻击资源与目标信息和sessions,可模拟APT做模拟对抗,进行内网渗透。
Cobalt Strike集成了端口转发、服务扫描,自动化溢出,多模式端口监听,win exe木马生成,win dll木马生成,java木马生成,office宏病毒生成,木马捆绑;钓鱼攻击包括:站点克隆,目标信息获取,java执行,浏览器自动攻击等等。

首先我们安装Cobalt Strike,这里需要用到一台有公网ip的服务器,也可以使用端口映射,甚至直接server和client都在本机(针对内网渗透),我用到的是CobaltStrike4.0。

badusb详细制作教程(两种方式实现远控)
然后依次选择Attacks → Web Drive-by → Scripted Web Delivery(S)
badusb详细制作教程(两种方式实现远控)
然后选择 Listener,点击Launch后Cobalt Strike就会创建一个内容为powershell payload的网站,同时会生成Powershell注入代码

注意:这段代码的作用是让主机从Cobalt Strike建立的网站下载payload并执行,不包含payload本体

然后的过程也不用我讲了,无非就是编写按键脚本执行Powershell注入代码


五,烧录

写好代码后,点击左上角的那个对号进行编译,没有报错信息一般就是成功了(注意要先连接Arduino Leonardo,不然烧录个寂寞)

badusb详细制作教程(两种方式实现远控)

小贴士:Arduino代码官方名为Arduino C,其实就是C的改版,所以如果看官方IDE不爽,也可以选择其他像Visual Studio这类C/C++ IDE,甚至VS Code也未尝不可,只要能正确导入头文件就行。写完后再拿Arduino IDE编译上传到板子,岂不美哉/strong>

其实代码写起来不难,关键看我们自己要实现什么效果,比如先把对方开机密码先改了,然后在用各种颜色刷遍命令行,给对方一种美的享受,最后再开开心心的关掉对方桌面进程,当然能蓝屏的还是先蓝屏比较好。

badusb详细制作教程(两种方式实现远控)
最常见的基于Arduino Leonardo的badusb,上图没有经过任何伪装时的样子
badusb详细制作教程(两种方式实现远控)
②带有USB接口的终端机
badusb详细制作教程(两种方式实现远控)

其他应用场景自行脑补,欢迎评论分享


总结

今天介绍了黑客工具badusb的制作及使用,除了这些,badusb还可以:

硬件版按键精灵,配合随机延迟可以绕过大部分游戏检测

执行windows死机命令

执行Linux死机命令

来源:ESQ404

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2022年7月15日
下一篇 2022年7月15日

相关推荐