云汉的小伙伴们大家好,我最近用手机聊QQ和逛云汉社区的时候,看见一些有趣的图片和表情包。可惜当时没有及时保存下来,过几天想找的时候就忘了在哪里了;所以只能亡羊补牢了,赶紧做个小装置把手机聊天时的图片自动保存下来。
我们是技术比较厉害的极客,这种小问题肯定是难不倒我们的。解决的思路很简单,实时侦听手机的数据包,找到图片,然后存下来就是了。
硬件上,我们可以用树莓派、NanoPi、香橙派或者萤火虫RK系列板子,甚至是X86平台的台式机自制这样一个自动保存被浏览图片的小装置。
软件上,操作系统,为了方便,我们就用Kali Linux吧,这个发行版自带了常用的网络工具。
说到Kali Linux,这是个很有争议的操作系统。其实它本身只是个包含很多网络工具的Linux版本,相当于是一个工具箱。工具本身没有对错之分,但使用工具的人就不一定了。有的工程师用这个工具箱修复网络环境,为人民谋福利。有的小偷用这个工具箱开别人家门锁,开完门还恬不知耻地留下到此一游的证据。
社会上对Kali Linux的评价也是褒贬不一。对它的差评主要来自于那些高中生“工具黑客”的行为。Kali Linux这就像一把螺丝刀,简单,但是威力巨大,落在心智未成熟的少年手里,如果没有成年人的正确指导,谁知道这些小孩子会干出什么事来啊。。。。。
转回正题,我们先介绍一下今天要做什么。
原理是这样的:首先,先假设网络数据流量不是在手机上,如果是linux主机自己在访问网络,怎么实时地自动保存图片呢。这一步比较简单,Linux下有个小程序,名字叫driftnet。它可以侦听本机的一个端口,然后分析数据包,找到图片文件。
接着,我们要做的是把手机的网络流量转发到linux主机上。
手机的IP还不知道是不是?手机不就在我手上吗。。。。。
我们打开手机看一下IP。
然后要做的事,大概是这样的:
上图中,手机的网络数据包都会在Linux主机上过一遍。这样,实时浏览的图片文件也都发到主机上了。这一步要用到的小程序叫arpspoof。
下面我们具体操作一下:
我们通过SSH远程连接Kali主机。打开一个终端,先告诉手机我是网关,把数据发给我。
arpspoof -i eth0 -t 192.168.1.102 192.168.1.1
然后再打开一个终端,告诉网关我是手机,把数据发给我。
arpspoof -i eth0 -t 192.168.1.1 192.168.1.102
这样,Kali就在网关和手机之间建立了连接。
最后,再打开一个终端,启动driftnet。好了,大功告成。
driftnet -i eth0 -a -d /home/test/pic
我们拿起手机,随便浏览一下云汉的QQ群,发点图片表情;再上云汉官网看看帖子;
大家看到,这些表情包都被记录下来存放在test目录了。
最后的小结:Kali Linux是个好用的工具箱,我们可以用他给生活添不少乐子。但是,请不要用它破解别人家密码或者偷窥别人隐私。毕竟,我们是光明正大的极客,不是小偷。