记录一次wifi钓鱼的调试 ——新手
最近在学习一个wifi钓鱼的东西,模拟某网站(以下简称A)的登录,并在后台储存账号密码到数据库中。原理很简单,将A的网页下载下来放到本地服务器上,然后搭建wifi,使连接wifi的人访问登录界面时实际上是访问本地服务器。
本来模块挺成熟了,前两天测试正常,今天测试的时候发现点了登录没反应???
倒腾半天无果。但是不是完全没用。
当我输入A的ip时,点击登录没有反应,但是当我输入127.0.0.1访问A时,功能却是正常的。用手机测试也是正常的。
而当我用其他浏览器时,也是正常的,只有用我常用的谷歌浏览器没有反应。换了别人的电脑,发现别人的电脑也是这样,一度怀疑,难道谷歌浏览器还能自动辨别钓鱼网站???
然后打开F12进行调试,发现我在点击登录的时候,出现了一个404 的访问
然后深挖,发现有关的字符串在某个js文件里
但是我的服务器里没有放js文件啊,我只有php文件。
突然想到可能是浏览器的缓存,于是我立马删除一下试试
试了一下,果然好了!
这下我懂了,之所以谷歌浏览器不行,是因为我之前用它正常登陆过,缓存了js文件,所以直接访问该ip时仍会调用js,导致登录失败。而其他浏览器没有缓存,所以均可正常登陆。
而访问127.0.0.1时,由于ip不同,所以浏览器也不会调用js,也能正常运行。
我网站的思路是点击登录的button以后,会提交form表单通过action到另外一个1.php,这个php的功能是将账号密码写入数据库。但是js运行在action之前?
百度了一下明明是php先运行,为什么js会阻挡我的action呢?后来我发现了这么一篇博客:
于是我赶紧打开js文件看一看果然是submit函数
当认证不通过时,会返回false
就是这个false阻止了action的执行,无法跳转到用来储存账号密码的1.php中。
而由于本地并没有连接服务器,所以这个submit只能得到一个404,一直返回false。
好,知道问题的原因以后就得改了,不能清除浏览器的缓存了,这样只能指标不治本,得从根源上解决。
一个方法是直接删掉 index.php(即登录页面)里边的js调用的有关部分,
另一个思路就是把js文件也下载下来放到本地服务器,但是把return false改成 returntrue,哈哈有点像逆向里边直接把je改成jne一样。
但是为了防止其他错误产生,还是直接第一种吧。
欢迎大家一起交流。
tla2008 发表于 2019-11-9 08:20
能分享一下怎么搭建钓鱼场景么,我也想尝试玩一下
简单来说
1.配置路由器,将访问某页面的请求转发到你的电脑上,这里使用到iptables的一些命令即可完成
2.搭建本地服务器环境,搭建数据库,下载原始网页,做一些修改,网上都有集成的apache服务器环境,下载下来一键式安装,代码部分就得自己摸索着改了 对于一些警觉性比较高的人这个方法还有待改进,就拿我来说,遇到疑似钓鱼网站会随便输入账号密码,这样就骗不到了。不知这个设想能否实现:假如说想山寨LOL的官网(简称L),自己的网站为H,当点击登录时H用输入的账号密码去L登录,假如L返回正确就跳转到L,L返回错误H就返回和L错误时一样的界面,这样更具有迷惑性。 支持一下 学习一下 能分享一下怎么搭建钓鱼场景么,我也想尝试玩一下 虽然看不太懂,但是感觉好厉害的{:1_921:} 学习学习了年轻有为 虽然看不太懂,但是感觉好厉害的。想学习一下 谢谢楼主分享