实战 | 记一次曲折的钓鱼溯源反制

2022-06-24 13:04:45 浏览数 (2)

故事起因

这天风和日丽,我正在摸鱼,忽然QQ群弹出一条消息,我打开一看,我感觉不简单。如下图:

扫码后发现跳转到了QQ邮箱登陆界面,确定为钓鱼网站,看到其域名为http://kak2.cn。

这里随便输入,页面跳转到如下界面。

好家伙,小伙子你挺会玩啊,收集完QQ邮箱账号密码,再来收集一波个人信息,做人不能太贪心啊。开始干活!

溯源钓鱼者

我们现在拿到了他的域名,现在收集一下域名的相关信息。使用站长工具,如下图。

可以查到域名注册人的姓名和邮箱。邮箱显示不全,这里再通过微步来进行一下查询。如下图

这里有两点可以关注一下,这里拿到了完整的邮箱和知道了这里是阿里云的。

进行一下邮箱反查,发现该邮箱下在五六月份注册多个域名,姓名都是刘聚达,大概率都是用来钓鱼的。

尝试添加QQ,发现查不到这个人,这就尴尬了。

关于钓鱼者的信息收集就告一段落,接下来开始干它网站。

进攻钓鱼网站

之前我们拿到了域名,现在对网站进行渗透,那思路是什么呢?我们可以进行一下子域名、目录等扫描,如果没什么信息,那就开始对钓鱼网站本身看看有没有能利用的地方。

首先进行一下子域名扫描,没什么发现,如下图:

然后开始对域名进行一下目录扫描,如下图

扫出来的目录,基本没有权限,都是403。没什么利用的点。

现在看来只能对网站本身进行一下渗透了,看看有没有能够利用的。现在打开收集个人信息的表单,按F12看看有没有我们值得关注的,如下:

之前目录扫描发现了uploads目录但是没有权限,这里找到了uploads/ads路径,尝试一下这里路径后端是否接收文件,构造上传数据包,发送数据,还是失败了。如下:

不要灰心,接着搞,我们还发现这里使用了form表单提交数据,然后自定义了一个函数chk(),现在我们跟进这个函数去看一眼。如下

在这里我们能够了解到,网站使用了ajax来进行数据传输,将数据提交到了本站的wap目录,然后身份证号码进行了一下简单的正则判断,规定输入为数字且位数为18位。既然是将数据提交到本站了,那么如果钓鱼者再后端接收数据时直接将参数拼接到SQL语句中,那么就可能存在SQL注入。现在我们构造数据,提交数据,然后抓取数据包来进行测试,抓取的数据包如下:

接下来开始测试是否存在SQL注入,name参数后添加单引号,发送数据,发现报错,存在SQL注入!

猜解一下数据库名,数据库版本,构造payload

代码语言:javascript复制
' and updatexml(1,concat(0x7e,(select database()),0x7e),1)#
and updatexml(1,concat(0x7e,(select @@version,0x7e),1)#

数据库名是a7,猜解一下表名,构造payload如下

代码语言:javascript复制
'and updatexml(1,concat(0x7e,(select table_name from information_schema.tables where table_schema='a7')),0)#

发现无法获取表名,我有一种不详的预感。

果然换用一些其他的函数,发现也是无法获取表名,可能是没有权限。真让人伤心,这个老六。

现在用sqlmap跑一下吧,结果如下

只能跑出来a7这个数据库,information_schema这个库获取不到,怪不得手工注入也拿不到表名呢。唉,现在尝试一下os-shell吧,看看有没有运气。如下

看来运气并不好,失败了。不过,虽然失败了,但是我们也知道了现在的服务器系统为Linux,并且有了路径,我们就把它当成绝对路径吧,死马当活马医,看看能不能写入文件,构造payload:

代码语言:javascript复制
into outfile '\www\wwwroot\p******7.a******ka.cn\config\wap\test.php' FIELDS TERMINATED BY '<?php phpinfo();?>'#

结果如下,还是失败了。

又尝试了一些其他的方法,发现收获不大。

峰回路转

真的拿不下它服务器了吗?我不信,晚上的时候,事情迎来了转机,当时我正在划水,一条好友申请打破了平静,当我同意时,大哥人狠话不多,直接URL和账号密码发了过来,包括源码的压缩包也扫出来了。在这里给大师傅递根烟。

这里大师傅也给我宽展了思路,扫目录的时候多尝试几个工具,可能会有不一样的惊喜。访问url使用账号密码登陆,界面如下。

登陆后,我们发现,这是一个帝国备份王的一个开源CMS。当我们知道是开源的时候,首先的思路是网上有没有一些公开的漏洞供我们使用。比如我们可以这样搜索 EmpireBak v2010  后台 RCE,结果如下

红箭头指的这篇文章就很合适,通过看文章,我们也了解了getshell的思路,就是替换文件内容。具体流程就是我们可以先备份数据,然后点击管理备份目录,点击替换文件内容。

思路是有了,但是现在还有问题,就是备份王链接不上mysql,导致备份功能无法使用,但是不着急,这里备份王提供了一个功能,就是参数设置。如下

如果我们知道了数据库的账号密码和数据库名,是不是就可以尝试连接数据库了。所以现在重点是获取数据库账号密码。这如何获取呢?不要忘记了,之前我们拿到了钓鱼网站的源码压缩包,现在来解压来分析一下源码。找一找配置文件,可能有我们需要的信息。源码目录如下

现在尝试找一下数据库的配置文件,如下,果然拿到的我们想要的信息

现在去网站尝试一下看看是否连接成功,果然不出所料,连接成功,如下

现在可以尝试拿shell了。喝口水压压惊,和大师傅同步一下信息,一个人孤军奋战,怎么能抵得上两个人一起日站的快乐呢。

进后台

之前咱们看源码,发现有一个a1文件夹,查看文件夹相关文件,知道这是后台的路径

我们访问一下,发现404

应该是把后台路径改掉了,不要紧,我们简单尝试一下,发现改为a7了,现在访问a7界面如下

还是尝试使用备份王的账号密码,发现登陆成功

后台也就拿下了。查看信息,发现大部分都是脏数据了。再去问大师傅看看他那里有没有什么信息。

登陆师傅提供的地址如下

这里还是有一些数据的,还是有上当受骗的,自己的个人信息被骗完了,最后还输入了自己的手机号,接到了验证码,还把验证码提交到了钓鱼网站。腾讯的防盗机制,二次认证也挡不住钓鱼网站套路多。在这里提醒大家一定要提高警惕,提示输入个人信息的地方一定要留个心眼。

Getshell

现在咱们按照之前的思路Getshell,先压缩,然后将压缩包下载下来。

然后遇到了新的问题,下载下来的文件都是空文件,

没有数据,所以也就无法替换,也就无法Getshell了。这是什么人间疾苦。现在问问大师傅,看看大师傅进行到哪一步了。

看来也卡住了,不要灰心,不要放弃任何一个细节,再去看看备份目录,尝试将最初备份文件下载下来,进行查看。

功夫不负有心人,成功。

到如下界面替换,上面填写原内容,替换内容填入冰蝎木马。

正要尝试替换config.php文件的内容。想着先访问一下,居然出现了大马界面,大师傅先我一步下手了?去问一下

果然是大师傅干的,没想到冰蝎和哥斯拉的马子已经上去了,爱了爱了。上冰蝎,查看文件管理如下

提权之路

上面我们拿到了webshell,完成了第一步,现在开始提权了,冰蝎为我们提供了反弹shell的功能,这里我们使用冰蝎将shell弹到MSF中。去瞅一眼大师傅进度。

这就是大腿的感觉吗?太幸福了。这里说一下提权的思路。msf里面有个可以自动提权的suggester,我们直接选择就可以了,如下

选择第一个后,开始提权!

在这里我们也是成功的拿到了服务器的root权限。如下图

拿到root权限就好办事了,查看账户,也是发现了ssh的端口和账号密码,登陆ssh如下:

因为钓鱼网站是用宝塔搭建的,所以这里看了看宝塔相关信息,包括面板登陆页,账号密码等等。大师傅也是贴心的把拿到的资产都整理好了。

第一个师傅发第一个json文件中有泄露的Access key 我们可以通过使用相关工具直接接管相关服务器。

网上有现成的工具,如下图,工具链接:https://github.com/mrknow001/aliyun-accesskey-Tools

最后,大师傅贴心的总结了文本,爱了。总结了宝塔,phpmyadmin,SSH等相关资产。

小结

关于钓鱼网站的相关内容就分享到这里啦,咱们从最开始的一个Web弱口令,到日穿钓鱼服务器,中间也是几经波折,最后还是幸不辱命,咱们下期见!

0 人点赞