玩转树莓派之zero w配合P4wnP1 ALOA实现badusb
前言
最近浅玩了一下树莓派,本以为要焊接电路板,搞硬件。也算是为之后拆路由器读芯片练练手,接触后发现给树莓派烧录完系统,基本还是玩的软件层(也可能是境界不够🤔)。本文记录了我用树莓派 zero w
配合 P4wnP1 ALOA 做了一个 badusb ,最终配合 Cobalt Strike
生成的木马以及红队大哥做的免杀,可以达到插谁,谁成肉鸡的效果😎
声明:文中所涉及的技术、思路和工具仅供以安全为目的的学习研究使用,任何人不得将其用于非法用途以及盈利等目的,由此产生的任何后果,自行承担!
效果演示
给树莓派烧录系统
在京东上买了个树莓派 zero w
,到手后看到是长这个样子的
再准备一张内存卡(我用的 16G
)和读卡器
下载 SDFormatter
,先格式化内存卡
这里确定选好盘后,直接点击格式化即可
然后去下载想要烧录的镜像,我这里是直接用的 P4wnP1_aloa ,它是一个基于 kali
的系统
将镜像解压出来后,下载 Win32DiskImager
,用其将镜像烧录到内存卡中
选择好镜像和要写入的设备,点击写入即可
这里会有一个弹框,点击 yes
,等待十分钟左右烧录完毕
启动和访问树莓派
将烧录完系统的内存卡插入到树莓派,拿一根 USB
数据线插到图中标红的接口,这个接口既可以给树莓派供电又可以传输数据,而左边看起来相同的接口只可以供电
如此树莓派就启动了,可以选择用一个转接头加上扩展坞连接键盘,并插上一根 HDMI
线连接一个显示器,当做正常的电脑来使用。也可以选择只插一根 USB
数据线进行供电,然后连接树莓派自身热点(密码为 MaMe82-P4wnP1
),热点名称就是很显眼的这个
通过 ssh
连接(用户名 root
,密码 toor
)
因为我手头正好有显示器和扩展坞,所以这两种方法我都用过了。
HIDScript
P4wnP1_aloa
的 web
端其实做的挺好的,访问 172.24.0.1:8000
这里其他的选项,看名称或者查看官方说明都能知道个七七八八。我直接记录好玩的地方,选择这个 HIDSCRIPT
这里我们可以编辑代码,让树莓派来充当 badusb 的作用,模拟键盘的输入。因为我玩的也比较浅,这里记住这五个的用法其实就差不多了
layout('us'); //键盘布局,这里运行脚本时一定要切成英文的输入法,最好用成美式键盘,不然可能会输出中文导致命令错误 |
编写一段代码,用 powershell
来打开记事本,并写下几个字符串试试
layout('us'); |
确实全程自动输入指定内容(注意:最好用成美式键盘,别忘记 \n
来模拟敲击回车)
整个的过程也可以遥控,就是将树莓派插到主机 A
中,然后用另一台设备(手机也可以)连接树莓派的热点,来运行编写好的 HIDScript
,这样主机 A
的鼠标和键盘就可以自己动了
HIDScript 执行始终处于 Running jobs问题
注意:我开始做的时候,点击 RUN
是无法成功执行 HIDScript
的,会始终处于 Running jobs
状态(如下)
折腾了两天,并查阅资料,无果。并且在 github
的项目上有相关的 Issues ,阅读之后也没发现到底是哪出了问题。最终我找同学借了六根 USB
数据线,逐一试过后,惊喜的发现有一根插上后运行 HIDScript
成功,其余五根均失败。这六根线都是可以传输数据和充电的,如此确定是数据线的某些未知原因导致的 HIDScript
执行是卡住(应该就是数据没传给主机)
Badusb + 远控木马
为了当一把黑客小子😎,我打算一不做二不休,最终想实现这个树莓派插入一台电脑,就能直接对其进行控制(只是找同学的电脑进行学习测试😆)
思路:我选择用 Cobalt Strike
(下文简称 CS
)来生成一个远控木马(并找红队大哥做了下免杀…),然后将木马上传至自己的服务器,通过直接访问链接就可以进行下载。最后用 badusb 模拟键盘输入,执行下载木马的命令
CS
分为服务端和客户端,如果自己没有服务器的话,就只能把客户端和服务端部署在同一个局域网里,同一局域网的肉鸡上线后,通过服务端的转发,来实现客户端对其间接控制。如果有服务器的话,那服务端就可以部署到公网中,即使肉鸡和客户端处于两个不同局域网中,客户端依然可以通过服务端的转发,实现间接控制(前提是客户端和肉鸡都能上网😅)
利用 nginx
将服务器上的静态文件(恶意木马)通过 HTTP
协议展现给客户端,以便于用户直接下载。我是先安装了 nginx
,然后把几个恶意程序都放到了 /var/www/html
目录下,然后启动 nginx
服务。写一个测试文件,看下效果。这里在 /var/www/html
目录下放的是一个文本文件,通过 ip + port
直接访问这个文件就能查看到(如下图),如果是 exe
文件的话,访问其路径会自动下载文件。
攻击的完整过程如下图,至于为什么不能让 badusb 插入后直接执行下载木马的命令,这是因为做完免杀后,实际上要下载三个文件。如果都写到 HIDScript
里的话,badusb 模拟键盘输入会出现错误,字符会乱序并且重复打印(具体原因不知道,经过测试姑且猜测是脚本太长了),为了缩短命令,我就做了一个启动脚本,真正下载木马并执行写在了启动脚本里。而 badusb 只需要下载启动脚本并执行即可
尾声
最终攻击效果在文章开头已经展示了,这个过程总的来说确实叫玩,这算是真正体验了一把黑客小子的感觉,并且学习到了一些新知识。但目前我并不打算再花费更多的时间继续去研究这个黑客小工具了,它对于学习的帮助至此就够了,再花时间就纯属于为了装逼而研究🥱。本想学习树莓派来对后面硬件的拆解和焊接打一点基础,但没想到歪打正着当了把黑客小子,学习之余装了一把🤠
当然了,也许以后我想玩想装逼的时候,可能还会折腾点新花样出来,哈哈QAQ
最后就是感谢一下红队大哥 邓阮叶 写的免杀(大佬都喜欢低调,就不挂大哥的链接了😎),还有我的全能室友 jxdgx 帮忙剪辑的攻击效果视频(加的蒙版是真炫嗷)
参考文章
https://github.com/RoganDawes/P4wnP1_aloa#1-features
树莓派zero w入坑指南 - azureology - 博客园 (cnblogs.com)
如何用P4wnP1_aloa进行HID攻击 | 漏断’s Blog (houwenda.github.io)