本节书摘来自异步社区《树莓派渗透测试实战》一书中的第1章,第1.4节,作者[美]joseph muniz(约瑟夫 穆尼斯),aamir lakhani(阿米尔 拉克哈尼),朱筱丹 译,更多章节内容可以访问云栖社区“异步社区”公众号查看。
现在准备好可以在树莓派上安装kali linux了。默认来说,用于树莓派版本的kali linux安装包已经为树莓派设备的内存和arm处理器做过优化。碰到特定的渗透测试目标,树莓派还是令人满意的。但如果加入过多的工具和功能,树莓派设备的性能可能会跟不上,导致在实验室之外的场景会变得难以使用。要想在树莓派上安装完整版的kali linux也是可以的,但需要单独安装各个kali metapackages软件包,这个已经超出本书范围了。对需要用到完整版kali linux的场景,建议还是换个更强劲的系统。
图1-11显示了可供下载的kali linux custom arm images。

映像文件下载好之后,就要将它写入microsd卡上。如果使用的是linux或mac操作系统,可以使用内置的dd命令行程序。如果使用的是windows系统,就要使用win32 diskimager程序。
win32 disk imager是一套免费工具,用于将raw映像文件写到sd/microsd卡上。如果microsd卡用了图1-5所示的那种usb转接套,这个工具有时候会出问题,已经有人报告过这个现象了。
下载完成后,只要选择映像文件和可移除介质,然后就可以开始写入的过程。整个过程可能需要一点时间。macbook的系统上大概花了30分钟。
现在可以准备安装之前下载的kali linux映像了。先将压缩文件解压到桌面上。可以用类似7-zip这样的程序解压下载的文档。
图1-12是win32 disk imager程序的界面。
如果用的是mac平台,第一步是确定操作系统读取sd卡的位置。可以在终端输入diskutil list命令以达到这个目的,执行的结果如图1-13所示。
在图1-13中可以看到,sd卡被标记为disk1。也看得出来,这张microsd卡上有分区,说明还没有格式化这张卡。此时应该按照本章开头的描述,先格式化这张卡再做后续步骤。
虽然我更喜欢用前面提到的sd card formatter程序,但也可以在直接在mac里通过命令行直接格式化sd卡,步骤如下所示。
1.首先,需要输入diskutil unmountdisk /dev/disk1这条命令,先卸载已在使用的sd卡。
2.然后再输入sudo newfs_msdos -f 16 /dev/disk1命令格式化sd卡(千万要确保输入正确的磁盘名称。如果搞错了后果非常严重)。
3.此时需要输入mac操作系统的系统/管理员密码。
在复制映像文件之前,最好格式化sd卡。但值得说明的是,后面用dd命令时,执行的是从映像文件到sd卡的逐比特复制,所以并非一定要格式化sd卡。但格式化操作可以防止一些其他错误和异常。
现在可以安装之前下载的kali linux映像文件了。先将下载的文档解压到桌面。可以使用mac平台的unarchiver或keka来解压文档。
然后确定解压后映像文件名。例如,解压出来的映像文件名为kali-1.0.9- rpi.img。最好再度确认一下系统是否可以访问sd卡。方法是再次输入diskutil list命令。
输入以下命令,把映像文件安装到sd卡上(可能需要再输入一次mac操作系统/管理员密码):
图1-14显示了前面这条写入命令执行后的结果。
在映像文件写入microsd卡的过程中,命令提示符会处于停顿状态。休息一下就好,因为这个过程是颇需要一点时间的。在我的系统上,花了差不多30分钟才完成。
图1-15显示了映像文件写到microsd卡的过程,此时命令行提示符处于停顿状态的样子。
完成映像文件的安装后,只要把microsd卡插入树莓派,打开电源,就可以启动系统了。启动系统可能需要花5分钟。然后输入用户名为root,密码toor,登录kali系统。如果希望启动到图形界面下,只要在终端输入startx。恭喜!这套运行在树莓派上的kali系统就装好了。