一、seek和Ngrok追踪定位的原理
Ngrok是内网穿透技术,他可以实现我们在虚拟机和其他移动端设备之间的网络互通。通俗来讲,我的虚拟机用的是我的网络,你的手机用的是你的网络,咱们两个要互通,就要用ngrok实现内网穿透,达到互通的目的。同时,ngrok在公网上有服务器,这使得我们可以自己搭建ngrok在虚拟机上,当我们生成链接后,被攻击者点开链接,该访问请求就通过ngrok公网发送到我们虚拟机本地ngrok,从而获得被攻击者的设备信息和位置信息。
二、前期准备
2.1 短网址生成器
https://sina.lt
2.2 ngrok注册和身份验证令牌
https://ngrok.com/download(用梯子)
2.1首先,我们打开网站,右上角选择登录,这里我用的是Gmail登录,很方便。
选择Linux版本
这里选择下载压缩包
之后,我们将该压缩包放在kali Linux下并解压到当前文件夹
回到ngrok网站,我们这里要记一下自己的身份验证令牌(Authtoken)
2.3 seek压缩包
可以在github上下载(用梯子)
下载完成后,同样解压到当前文件夹
2.4 VMware
因为我是win11系统,因此我用的是VMware17
2.5 kali Linux 2023
一定是2023!这里我稍微强调一下版本的重要性,在一开始做这个实验的时候,我用了kali2020,结果在执行命令python3 seeker.py的时候始终没有成功,之后进行了长达2小时的找问题工作发现没有一点进展,于是我考虑是kali版本的问题,因此我重新安装了kali2023虚拟机,发现命令python3 seeker.py可以正常运行。
2.6 经纬度查询地址
http://jingweidu.757dy.com/
三、开始实验
3.1连接Ngrok
找到ngrok,右键在这里打开终端
切换到root用户
命令:su root 输入密码(密码为暗文,正常输入即可)
将下列命令复制到终端来授权令牌:
./ngrok authtoken 2YEbnqTvt5QnHsbRG4sMvmHXW7X_12345679GyPM9PjQXCCsY
注意:authtoken后边应当是你本人的身份验证令牌,这里的令牌仅供参考,无法正常使用!
这里显示成功授权令牌
3.2 运行seeker
在seeker文件目录下打开终端,输入ls找到seeker.py
输入命令python3 seeker.py运行seeker,选择1,输入一个URL,这里的URL是将来被攻击者点开后访问到的页面,这里可以输入我的CSDN主页
https://blog.csdn.net/
显示正在启动客户端
3.3 开启隧道监听
在ngrok的根目录下打开终端,开启监听8080端口
输入命令:
./ngrok http 8080
可以看到生成的链接: https://7f75-218-201-127-126.ngrok-free.app
3.4 伪装链接
这时候就用到我们一开始准备的伪装链接的网站了:伪装后:https://s.yam.com/0v72A
3.5 被攻击者点开链接 获取定位
当有人点击我们这个链接时,我们这边就能够看到这个人的设备信息和ip地址信息
之后,我们可以将经纬度复制到经纬度查询网站上查询,查看被攻击者的位置。
本实验仅供参考,请勿模仿,后果自负!
四、问题及总结
在整个实验中,最头疼最无语的还是一开始kali版本选择上的问题,一定要选择kali2023,并且在清华大学镜像源中下载镜像。
其次还有如下几个问题:
4.1 苹果端系统
苹果ios系统无法查看到经纬度,只能看到设备信息。
4.2.安全性
在用手机浏览器访问短连接地址会有提示,内容为:短网址不对该网站内容承担任何责任,请小心填写账号。密码信息,这在一定程度上阻止了用户访问网站。
其次,在点击继续访问时,如果手机没有打开位置,那么手机会提示用户打开位置功能,这就一定程度上提醒了被攻击者可能要受到攻击。
从安全性角度来讲,有多道防御措施保护用户不点击此链接。但是最为攻击者,我们如何进一步伪装。
4.3总结
作为攻击者,我认为这种攻击方式还需要再进一步完善社工方面的问题,例如如何实现手机不提示开启位置功能,如何实现苹果端显示位置,如何不提示该网址是伪装网址等等,值得我们考虑和深思。
作为被攻击者,我们一定在日常使用互联网中,不要随意打开陌生链接!
那么最后,着重强调:此篇文章仅供技术交流和探讨,严禁利用该手段进行违法行为,出现一切问题后果自负!
不足之处敬请批评指正!