世界上最先进的USB攻击平台 几秒内就可完成渗透攻击
发布日期:
2017-03-17
来源:
freebuf
转载地址:
http://www.freebuf.com/news/128788.html

        渗透测试人员其实都知道,只要能够直接接触到目标设备,并且选对了工具,那么任何设备都会成为“待宰的羔羊”。早在2005年,Hak5就已经研发出了一款简单又暴力的渗透测试工具。随着BashBunny的问世,渗透测试可能又更进了一步。
        组合各种USB设备的攻击方式
        按照Hak5自己的说法,这款设备是“世界上最先进的USB攻击工具”。我们就来看看这款工具究竟有哪些本领。
        这款设备“打开”的攻击面的确比先前的设备大了很多。渗透测试攻击和IT自动化工作,对Bash Bunny而言几秒内就能完成。通过各种USB设备——像以太网卡、串口设备、闪存、键盘等,Bash Bunny就能够从计算机中获取数据、文档,给计算机安装后门还有各种exploit了。
        设备采用简单的脚本语言,用记事本之类的工具就能编写。各种paylaod代码就包含在一个库(GitHub)中,要找到相应的攻击方式还是很容易的。发动Bash Bunny攻击,只需要将开关切换到武器模式(arming mode),复制一份payload文件——使用过程几乎和普通U盘没什么差别。

        发动多种payload应该是这款设备的一大特色。将开关切换到相应payload选择(上图中的Switch Position 1/2),将Bash Bunny插入目标设备,观察LED灯的变化就能了解攻击状态。在硬件方面,设备中包含1颗四核CPU和桌面级SSD,Hak5介绍说此设备从插入到攻击发动只需要7秒。此外,这款Bash Bunny设备实际上拥有Linux设备的各种功能,通过特定串口可访问shell。绝大部分渗透测试工具的功能都能在其中找到。
        高级攻击
        一般来说,计算机默认情况下就会信任很多设备,包括闪存盘、以太网适配器、串行设备、键盘等——毕竟这些设备对于当代计算机的使用而言还是比较重要的。实际上,其中的每一款设备都有其不同的攻击方式。如果能够将这些攻击方式组合起来,可能性就变得无限了。Bash Bunny就是从这个角度出发设计出来的工具。
        每种攻击或payload,都采用“Bunny Script”脚本语言。其中央payload库,理论上也会在社区开发者的帮助下变得越来越强大——要做的就只是从git下载文件而已,随后将之加载到Bash Bunny。
硬件
        设备内部实际可以看做个功能完整的Linux计算机,很多人热衷的工具都能在其中找到。由于内部采用一颗4核心CPU和桌面级SSD,所以用起来也很快,启动只需7秒。payload开关以及RGB三色LED灯,可用于选择和了解攻击状态。连接串口,还能访问Linux终端(BASH命令)。
        通过特定payload实现WiFi Pineapple的融合。Bash Bunny通过加强WiFi审计工具,进一步强化了渗透测试的有效性,扩展了渗透测试的范围。
        网络劫持
        利用本地网络攻击向量,Bash Bunny可模拟特定的网卡。目标计算机在无需驱动的情况下,会将Bash Bunny识别为网卡。模拟的网卡具备2Gbps的速率,另外还带DHCP服务器。这样一来,主机会信任Bash Bunny的网络流量,大量攻击流量得以通过。
        这种攻击是完全跨平台的,ECM Ethernet攻击模式支持Mac、Linux和Android设备,微软专用的RNDIS Ethernet攻击模式支持Windows设备。
        通过类似QuickCreds这类攻击,就能从锁定的计算机中在数秒时间内窃取哈希身份凭证。将Bash Bunny插入到计算机中,等待数秒,LED灯变绿就搞定了。由于设备包含完整TCP/IP栈和各种Linux工具,网络攻击也就相当多样了。
        键击注入
        当代所有USB键盘都采用HID标准——对一台计算机来说,如果设备声明它自己是键盘,那么它就是个键盘。将相应的键盘按键过程藏在闪存盘中,显然是提高社工成功率的方法。Hak5橡皮鸭本质就是键击注入攻击。
        Bash Bunny对Ducky Script语言进行了解析,借此在HID攻击模式下就能发动相应的HID攻击了。将HID攻击和Bash Bunny支持的其他攻击结合起来,就能组合为更强大的攻击。
        情报窃取
        Bash Bunny的存储攻击模式就支持资料窃取,其USB闪存速度很快。将payload开关切换至arming mode武器模式,再将Bash Bunny插入到计算机或者智能手机上就能做到。作为一款标准闪存设备,配置使用本身就很简单;编辑文本文件就能即时  修改payload。
        通过复制文件操作,能将相应payload配置到不同的开关位置上;另外从闪存存储区域,可以直接浏览整个payload库;在loot文件夹下还能查看获取到的数据。所有的操作方式都很直观。
        专门Shell访问
        为了让交互更方便,Bash Bunny有专门的shell访问串口,访问设备的Linux终端因此也就变得很简单。配合各种payload,采用串行攻击模式,其可能性也是相当多样的。
        Payloads
        将payload.txt复制到Bash Bunny设备中的相应文件夹(对应到外部相应payload开关),payload部署就完成了。所以发动多种payload,在不同payload之间切换也就很简单了。通过开关来选择相应payload,再将Bash Bunny插入到目标设备,观察LED指示灯来了解攻击状态。
        Bash Bunny的目录结构如下图所示:

        这个功能就建立在Hak5 USB橡皮鸭设备之上。和一般键击注入攻击工具不同,Bash Bunny设备中的payload文本文件不需要专门做编码,也不需要读取器就能加载。”Bunny Script”脚本语言搭配BASH,使用起来也很方便。
        Bash Bunny本身也是个合作项目:鼓励各位将你的payload提交到Bash Bunny git库。有了这样一个中央payloadd库,整个社区也能因此得到灵感和便利。