几年前我第一次出差做安全审计时,发现客户现场不允许使用外接设备。当时就萌生了一个想法:要是能把专业的安全测试工具装进手机该多好。后来接触到Termux和Kali Linux的组合,才发现这个方案比想象中更实用。
移动端渗透测试环境最大的优势就是隐蔽性和便携性。你不需要背着笔记本到处跑,掏出手机就能完成基础扫描、漏洞检测等操作。我经常在等咖啡的间隙用手机跑个nmap扫描,或者在通勤路上验证某个漏洞利用方案。对于应急响应场景特别有用,比如突然需要检测某个WiFi网络的安全性时。
不过要提醒的是,手机性能毕竟有限。实测搭载骁龙865的小米10 Pro运行Metasploit框架时,内存占用经常突破80%。建议主要用来执行轻量级任务,复杂攻击链还是交给PC端完成。
推荐从F-Droid下载Termux,Google Play版本已经停止维护。安装完成后先别急着敲命令,这几个基础配置能让后续使用更顺畅:
bash复制# 先给存储权限
termux-setup-storage
# 换源操作(国内用户必做)
termux-change-repo
在弹出的界面里用空格键选中所有仓库,选择清华源或者阿里云源。这个步骤能解决90%的安装失败问题,我有次在客户现场折腾两小时才发现是默认源连不上。
更新软件包时有个小技巧:
bash复制pkg update -y && pkg upgrade -y
加上-y参数可以跳过确认提示,适合写进自动化脚本。记得定期执行这个命令,我设置每周日早上自动运行。
~符号退出会话不会终止进程(比如~+回车)termux-open命令可以直接用手机APP打开文件有次我在咖啡厅忘记带扩展坞,就是靠手机OTG接U盘导出扫描报告。Termux的/sdcard目录直接映射手机存储,和其他APP交换数据特别方便。
官方安装脚本可能需要调整,这是我的优化方案:
bash复制wget -O install-nethunter-termux https://html.sqlsec.com/install-nethunter-termux.txt
sed -i 's|https://images.kali.org/nethunter|https://kali.download/nethunter-images/current/rootfs|g' install-nethunter-termux
chmod +x install-nethunter-termux
./install-nethunter-termux
安装过程会下载约2GB数据,建议在WiFi环境下进行。遇到卡顿时不要强制退出,我有次强行中断导致文件系统损坏,最后只能从头再来。
KeX服务可以让你在手机上获得完整桌面体验:
bash复制nethunter kex passwd # 首次使用设置密码
nethunter kex & # 启动服务
然后在VNC Viewer里连接localhost:5901,默认密码是刚才设置的。实测在6.7英寸屏幕上操作Metasploit的图形界面完全可行,但需要适应触控操作。
提示:修改
/usr/share/kali-desktop/kex.conf可以调整分辨率,建议设为720x1280匹配手机屏幕比例
基础工具安装一条龙:
bash复制nh -r apt update && nh -r apt install -y \
nmap \
sqlmap \
hydra \
burpsuite \
metasploit-framework
重点说说手机端使用技巧:
-T4参数加快扫描速度,但会增加误报率--batch参数跳过交互提示~/.msf4/database.yml配置数据库路径配置SSH服务实现手机-PC联动:
bash复制pkg install openssh
echo "PasswordAuthentication yes" >> $PREFIX/etc/ssh/sshd_config
sshd
通过ifconfig查看手机IP,就能用电脑SSH连接了。我习惯把手机开热点给笔记本,这样在任何地方都能组成临时渗透测试平台。
采用差异备份方案节省空间:
bash复制# 每周全量备份
tar -zcf /sdcard/termux-full-$(date +%Y%m%d).tar.gz home usr
# 每日增量备份
find home usr -newer /sdcard/last_backup -print0 | tar -zcf /sdcard/termux-inc-$(date +%Y%m%d).tar.gz --null -T -
touch /sdcard/last_backup
遇到系统崩溃时:
bash复制cd /data/data/com.termux/files
tar -zxf /sdcard/termux-full-20230801.tar.gz --overwrite
建议把备份脚本设为定时任务,我就因为忘记备份损失过精心配置的环境。现在用Termux的~/.termux/boot目录实现开机自动备份。
通过termux-cpu-info查看CPU信息,建议:
--max-parallelism 3)nice -n 19降低后台任务优先级nh -r apt clean清理缓存问题1:安装时提示空间不足
问题2:KeX服务闪退
df -h确认/tmp分区有足够空间nethunter kex kill后重新启动问题3:Metasploit数据库连接失败
nh -r msfdb initnh -r service postgresql status经过半年多的实战使用,这个移动渗透平台已经帮我完成了17次应急响应任务。最惊险的一次是在机场用手机定位了内网攻击源,整个过程只用了23分钟。