目录
[1. 前言](#1. 前言)
[2. 网站简介](#2. 网站简介)
[3. 寻找特征点](#3. 寻找特征点)
[3.1 第一次尝试](#3.1 第一次尝试)
[3.2 第二次尝试](#3.2 第二次尝试)
[5.1 寻找漏洞点](#5.1 寻找漏洞点)
[5.2 进行进一步测试](#5.2 进行进一步测试)
[5.2.1 手动测试](#5.2.1 手动测试)
[5.2.2 sqlmap去跑](#5.2.2 sqlmap去跑)
1. 前言
朋友说自己建了一个情侣网站,看到这个网站很有趣,记得之前有看过这个网站的漏洞的文章,那就对网站进行测试一下吧,当然不能直接用好兄弟的网站来测啦,这种网站一般都是通用的网站,直接开始测试,最后也就只发现SQL注入漏洞,这种站可以测试的功能点太少了.
![](https://img-blog.csdnimg.cn/direct/ae859479f7a145d1979284306d4fd625.png)
免责声明
博文中涉及的方法可能带有危害性,仅供安全研究与教学之用,读者将其方法用作做其他用途,由读者承担全部法律及连带责任,文章作者不负任何责任.
2. 网站简介
Love-Yi情侣网站3.0是一个基于php框架和爱情主题的表白网站。经个人修改和设计更加美观好看,适合哄女朋友开心。
3. 寻找特征点
首先在网站的底部发现Copyright © 2024 XX科技. All Rights Reserved.验证这是一个通用的建站,接下来就是从主页的代码中,找每个网站的公用特征了
3.1 第一次尝试
1.首先看到网站上面的ico,既然是通用那么图标总可以吧,结果fofa和鹰图全都失败🥲🥲🥲
![](https://img-blog.csdnimg.cn/direct/3c39b0f4a6044cb6b3ce3c5e9aade953.png)
![](https://img-blog.csdnimg.cn/direct/3335fcdd16c444fa83163cee55b7538a.png)
![](https://img-blog.csdnimg.cn/direct/630f481be0514bf18e1dc4049df7ba5b.png)
3.2 第二次尝试
自己比较喜欢图标去找,尤其是特殊的图标,一找一个准,这不给我找到了😋😋😋
![](https://img-blog.csdnimg.cn/direct/4dc9a2a4fd9d47efbeb6e9f107e47a1d.png)
![](https://img-blog.csdnimg.cn/direct/fd2acabe62f8419eac5fb8ecfa35df1f.png)
4.资产搜索
用fofa进行查询,因为搜索出的资产有很多,为了方便测试,随机进行挑选找了国内的一个站
第一次进行尝试时候的语法
bash
"Style/img/like.svg" && country="CN"
最终测试版
bash
"img/like.svg" && "2022" && country="CN"
![](https://img-blog.csdnimg.cn/direct/e414f61930d84e60bd307dec5447c05b.png)
结果又是一顿嘎嘎搞,发现站的功能点太少了唯一可能存在的漏洞就是有一个id参数,有可能存在SQL注入,于是开始进行测试,最终在测试时进行失败了,但是怎么能放弃呢,这个站应该有旧版本吧,最终在测试2022这个版本的时候发现了漏洞,于是语法又更新了.
![](https://img-blog.csdnimg.cn/direct/3e3d90c855594397a134748ae14111e9.png)
5.漏洞复现
5.1 寻找漏洞点
首先找到点点滴滴下的文章,点击文章后,发现url处出现一个id,php的站最喜欢的就是id这个参数了,这不就有了吗
文章页面详情
![](https://img-blog.csdnimg.cn/direct/3c6616a87df04023930f039f857942d3.png)
直接在id后面尝试一个sql注入常用的单引号,发现页面闪了一个报错,然后消失了,没关系,F12查看页面源代码,发现sql注入的常见保存,漏洞+1.
bash
id=6'
![](https://img-blog.csdnimg.cn/direct/cf4f2d65f3584c2eb8208208e49ab492.png)
5.2 进行进一步测试
既然发现存在漏洞,那我们进行进一步利用的话,需要,首先尝试php最常见的union注入,发现存在,然后通过二分法发现,在尝试4个字段的时候,页面没有内容,而5个字段的时候页面会出现内容,确定数据库字段为5个字段.
5.2.1 手动测试
1.寻找字段
4个字段,页面回显错误,发现没有任何的页面数据
bash
?id=6' union select 1,2,3,4 --+
![](https://img-blog.csdnimg.cn/direct/1be235a2431c4a078a4ae38260abb9d3.png)
尝试5个字段的时候,发现页面回显正常
bash
?id=6' union select 1,2,3,4,5 --+
![](https://img-blog.csdnimg.cn/direct/2480727bb22248e48e663328a250e6f3.png)
2.寻找回显位
通常的方式就是给id赋值一个不存在的页面,查看回显的数字,我喜欢直接用-号来表示
bash
?id=-6' union select 1,2,3,4,5 --+
![](https://img-blog.csdnimg.cn/direct/88d998ce016f4818b43bca6023b37ffd.png)
3.查询当前用户
发现回显的字段为2,代表数据库在2处会进行回显,直接查询角色,证明存在漏洞然后点到为止
bash
?id=-6' union select 1,user(),3,4,5 --+
![](https://img-blog.csdnimg.cn/direct/7cd02f05f1984a53b4984a2dae676939.png)
5.2.2 sqlmap去跑
语法如下所示:
尽量不用sqlmap去跑,毕竟用工具测试的话请求过多不仅容易被发现,而且对于小站来说容易跑崩,我自己就不进行测试了.
bash
python sqlmap.py -u http://xxxxxxxxx/page.php?id=* --level=3
6.总结
本次测试也是对自己手法的一次测试,虽然没有进行绕过,但是还是对于信息收集的思路有了更进一步的提升,测试很有趣,休息的时候玩玩也不错,继续加油