成为物理黑客吧!利用树莓派实现P4wnP1项目进行渗透测试

栏目: 编程工具 · 发布时间: 5年前

内容简介:看到标题的各位可能认为物理黑客是这样的。

*本文作者:Milu。,本文属 FreeBuf 原创奖励计划,未经许可禁止转载。

看到标题的各位可能认为物理黑客是这样的。

成为物理黑客吧!利用树莓派实现P4wnP1项目进行渗透测试

当然今天并不是说的上面这种~

大家在小的时候可能在电影中看到过,一个大黑阔从手里掏出了一个U盘,然后噼里啪啦的操作一番,某大BOSS电脑就被打开了。在电脑被破解的那一刻,大家是否也想过,总有一天我能不能也能这样呢?

这样的U盘就叫badusb,网上有国外团队做好的成品( Bash Bunny ),然而这个价格实在是感人……

那么问题来了,作为具有geek精神的(基)机佬,自然要用最低的成本来完成咯。所以笔者发现了P4wnP1这个开源项目。

P4wnP1 is a highly customizable USB attack platform, based on a low cost Raspberry Pi Zero or Raspberry Pi Zero W (required for HID backdoor).
P4wnP1是一个高度可定制的USB攻击平台,基于低成本的Raspberry Pi Zero或Raspberry Pi Zero W(HID后门所需)。

废话不多说,我们直接进入主题吧!

需要什么

树莓派 Pi Zero W (某宝上有Zero,Zero W,Zero WH,因为我们需要的只有蓝牙和wifi故选择Zero W )

一张microSD(TF)卡(8G就够用了,大了也可以)

USB扩展板【选购】(这样就可以直接插USB进行数据连接,如果不想买的话你拿micro usb的数据线也是一样的)

系统:这里有一个坑,我用最新版的镜像系统安装会出现问题(wifi无法配置连接)… 所以我选择了2017年的raspbian jessie版本。下载地址: 点我下载 。下载后缀为zip的解压成img即可

安装

硬件安装

由于本人比较嫌麻烦,所以就直接买了带USB的扩展版。以下是安装好之后的成品~

成为物理黑客吧!利用树莓派实现P4wnP1项目进行渗透测试

成为物理黑客吧!利用树莓派实现P4wnP1项目进行渗透测试

成为物理黑客吧!利用树莓派实现P4wnP1项目进行渗透测试

系统安装

用到的软件:win32diskimager 或者 rufus-3.4 ,两个都可以,这里贴一个rufus的下载链接。 rufus下载地址

同样我们里rufus为例,用读卡器将TF卡插入电脑,打开rufus,引导文件选择我们下载好的镜像文件,点击开始即可。

成为物理黑客吧!利用树莓派实现P4wnP1项目进行渗透测试

大概等个5分钟左右,镜像就写入完毕了。

Wifi配置

注意: Pi Zero W 只支持2.4G频率!

写入镜像之后,我们需要对树莓派的网络连接进行配置。我们打开boot分区,在其根目录下创建 wpa_supplicant.conf 以及 ssh 文件(注ssh文件是没有后缀名的)

在wpa_supplicant.conf 文件中写入你的网络配置,(这一步操作是为了让你的电脑和树莓派处于同一个网络环境下,这样你才能通过ssh连接上),配置格式如下:

network={
    ssid="WiFi_name"
    psk="mypassword"
    key_mgmt=WPA-PSK
    priority=1
}

network={
    ssid="WiFi_name2"
    psk="password"
    key_mgmt=WPA-PSK
    priority=2
    scan_ssid=1
}

对以上Wifi配置名称的解释:

ssid - wifi名称
psk - wifi密码
key_mgmt - 如果你的wifi加密方式使用的WPA/WPA2,该类型为WPA-PSK,若为WEP加密或没密码,则为NONE。
priority - wifi优先级,如果你怕某个WiFi连接不上,则可以配置多个wifi,树莓派会按照优先级进行连接。
scan_ssid - 如果你的wifi是隐藏的,则需要指定该值为1

在配置完Wifi后,我们还要在根目录下创建一个名为 ssh 的空文件(记住没有后缀名),配置完后如下图所示。

成为物理黑客吧!利用树莓派实现P4wnP1项目进行渗透测试

做完上述工作后,我们就可以将TF卡插入树莓派,然后插入电脑。

成为物理黑客吧!利用树莓派实现P4wnP1项目进行渗透测试

SSH连接到树莓派

当我们插上USB后,等待个1-2分钟,我们就可以在路由器管理界面上找到名为raspberrypi的设备,找到它的IP,记录下来。

成为物理黑客吧!利用树莓派实现P4wnP1项目进行渗透测试

接下来我们用putty进行ssh连接,用别的ssh软件也行,我这里以PUTTY为例:

成为物理黑客吧!利用树莓派实现P4wnP1项目进行渗透测试

填上树莓派的地址,然后连接。账号为pi 密码为raspberry。

配置安装P4wnP1

建议连接后,先改下源。这样速度快一点(针对国内用户)

修改源的方法:
sudo nano /etc/apt/sources.list
将 deb xxxxx 改成 
deb http://mirrors.aliyun.com/raspbian/raspbian/ stretch main contrib non-free rpi 
ctrl+o保存,ctrl+x退出

配置环境

sudo apt-get update

sudo apt-get install git john

git clone --recursive http://github.com/mame82/P4wnP1

克隆完毕后,执行下列操作

cd P4wnP1/
./install.sh

需要经过漫长的等待……在安装的时候可能会遇到一些安装询问,均按默认情况执行即可。

成为物理黑客吧!利用树莓派实现P4wnP1项目进行渗透测试

出现这个界面时就代表安装成功了!

使用

上述步骤完成之后,将树莓派插入想要入侵的电脑。(这里以一台win10的台式机为靶机)。

成为物理黑客吧!利用树莓派实现P4wnP1项目进行渗透测试

连接到一个名为P4wnP1的wifi,初始密码是:MaMe82-P4wnP1。

连接成功后,我们打开PUTTY,连接到:172.24.0.1 端口22, 账号密码仍然是树莓派的密码。

输入成功后有些会直接进入如下界面。

成为物理黑客吧!利用树莓派实现P4wnP1项目进行渗透测试

我们可以进入P4WNP1的安装路径,找到 setup.cfg payloads更换:

sudo nano /P4wnP1/setup.cfg

setup.cfg里面有很多配置,你可以根据需要进行一些修改. 这里可能会出现一些配置问题,你可以拉到最下面查看解决方案。

payloads更换

更换payloads需要进入程序的安装目录进行更改,但是这里可能会有一些问题出现,笔者曾经安装过一次,它的安装目录会变到其他位置,但是后面几次安装它的安装目录仍然在当前目录下,如果遇到找不到安装路径的情况,可以试试以下命令。

sudo find -name P4wnP1

进入到安装目录后,对setup.cfg进行修改。

sudo nano /P4wnP1/setup.cfg

到最底部,找到Payload selection:

成为物理黑客吧!利用树莓派实现P4wnP1项目进行渗透测试

这里有很多以#号开头的payload,意味着他们是未被使用的。该项目只能一次性加载一个payload,所以你选择了network_only就不能选择别的payload. 这里我们以hid_backdoor_remote.txt为例。

首先在network_only前加上#号,再去掉backdoor_remote前的#号。

成为物理黑客吧!利用树莓派实现P4wnP1项目进行渗透测试

保存,退出。 你可以直接reboot,或者拔了数据线再插上去。

当我们再次连接的时候,如果出现如下图的情况,说明更换成功,你就可以开始搞事情了~

成为物理黑客吧!利用树莓派实现P4wnP1项目进行渗透测试

实战(以hid_backdoor_remote为例)

在进入到P4wnP1 shell 时,我们需要先输入FireStage1,其对靶机进行连接操作。当出现”client connect”字样时说明连接成功。

P.S:你可以输入help查看可以用的命令。

这里以shell为例,我们输入shell

成为物理黑客吧!利用树莓派实现P4wnP1项目进行渗透测试

可以看到我们正在以当前主机的身份进行了操作。

如果想要退出shell模式,按Ctrl+C即可退出。

以下对一些命令的解释

SendDuckyScript 发送键盘脚本
SendMouseScript 发送鼠标脚本
download 下载文件到树莓派
upload 上传文件到主机
shell 以靶机的身份访问控制台
CreateProc 创建进程 (打开记事本的命令为: CreateProc notepad)
sendkeys xxx 发送‘xxx’键盘输入

其它很多命令的解释可以在 官方手册 查看

在上Win10破解密码

这个是P4wnP1上比较特别的一个点。但是经过我个人测试之后,其实是存在一定限制的。

简单的说一下原理,先插好设备,在输入密码进去系统界面时,树莓派会截取到有密码的hash值,然后暴力破解一个一个进行对比… 简单的字母比如abc,123速度确实很快,但是如果是字母+数字或者又长又复杂的组合密码可能要破解到猴年马月了。

假如密码是弱密码

我们设置完payloads后,插入电脑。在受害者输入密码后,树莓派会自己利用 John the Ripper 模块进行破解,这个作者在文档说明中也提到了。

you leave P4wnP1 plugged and the hashes are handed over to John the Ripper, which tries to bruteforce the captured hash.
If the ´password of the user who locked the box is weakly choosen, chances are high that John the Ripper is able to crack it, which leads to…

例如,笔者靶机上密码为abc,当插上树莓派时等待一会,输入密码进入windows系统,此时我们用另一台机子连接到树莓派的热点。执行以下命令

cd /P4wnP1/collected
ls

在collected文件夹内存储了窃听到的hash值。如果是弱密码,在后面会直接生成 .hashes.cracked .此时我们直接查看即可获得密码。

成为物理黑客吧!利用树莓派实现P4wnP1项目进行渗透测试

成为物理黑客吧!利用树莓派实现P4wnP1项目进行渗透测试

假如密码是强密码,且知道密码的组成

这里就要推荐一个 工具 了。 叫hashcat 下载地址 ,它需要GPU进行运算。

将我们得到的hash值,运用下面的命令执行

hashcat64.exe -m 5600 hash.txt -a 3 ?d?d?d?d?d?l?l

解释一下上面的命令,hash.txt是.hashes文件中的内容。后面问号表示不同位置密码的取值范围。例如上面的例子,密码的前五位是数字,后两位是字母。

成为物理黑客吧!利用树莓派实现P4wnP1项目进行渗透测试

详细的解释可以看这个: 点我

在手机上进行渗透测试

推荐俩APP

安卓:JuiceSSH

苹果:shelly

遇到的问题

如果真的嫌安装过程麻烦

作者提供了一个打包好的系统镜像,可以直接写入tf卡。

下载地址

SSH连接问题

如果遇到SSH拒绝连接,先想想你在配置完WiFi后有没有创建ssh文件,如果创建了但还是连不上,你可以重启一下路由器,看下是否是路由器记录出现了问题(这种情况会发生在你原来用这个树莓派装过系统,但是你重新安装系统后导致连不上),最后还是不行的话,再重装系统。

WiFi名设置问题

“为什么我在 setup.cfg 中修改了wifi名为什么加载出来的不是我修改的?”.

这是因为在加载payload的时候,项目会先从payload里面加载一些配置,而payload设置是默认原来setup.cfg中的。如何修改? 注释掉payload中相应的选项,只要程序发现payload中缺少一些选项的配置(如wifi名,密码等),程序会自动到setup.cfg补上缺少的选项。

树莓派没有开启热点模式,仍然是作为wifi连接的情况

sudo -i
nano /etc/network/interfaces

将图中框住的部分删掉即可 成为物理黑客吧!利用树莓派实现P4wnP1项目进行渗透测试

连接成功,但是弹不出主程序shell界面

在靶机上尽量选3.0接口,笔者用2.0的有时候就会出现这样的情况。

win10破解密码模式无法获得hash值

笔者是在锁屏的状态下,插上树莓派,等待了一会后才进入。 有时候会出现一定的延迟,或者压根不截取hash值,此时最好先清空collected文件内的内容,然后将靶机注销再进行尝试。

参考文档

P4wnP1

P4wnP1_Offical_Wiki

hashcat

如何将自己的树莓派打造成“渗透测试神器”

Snag Windows Passwords With Pi Zero | P4wnp1

*本文作者:Milu。,本文属 FreeBuf 原创奖励计划,未经许可禁止转载。


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

C程序设计语言

C程序设计语言

(美)Brian W. Kernighan、(美)Dennis M. Ritchie / 徐宝文、李志译、尤晋元审校 / 机械工业出版社 / 2004-1 / 30.00元

在计算机发展的历史上,没有哪一种程序设计语言像C语言这样应用广泛。本书原著即为C语言的设计者之一Dennis M.Ritchie和著名计算机科学家Brian W.Kernighan合著的一本介绍C语言的权威经典著作。我们现在见到的大量论述C语言程序设计的教材和专著均以此书为蓝本。原著第1版中介绍的C语言成为后来广泛使用的C语言版本——标准C的基础。人们熟知的“hello,World"程序就是由本书......一起来看看 《C程序设计语言》 这本书的介绍吧!

随机密码生成器
随机密码生成器

多种字符组合密码

SHA 加密
SHA 加密

SHA 加密工具

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具