当前位置: 首页 > news >正文

Love-Yi情侣网站3.0存在SQL注入漏洞

目录

1. 前言

2. 网站简介

3. 寻找特征点

3.1 第一次尝试

 3.2 第二次尝试

4.资产搜索

5.漏洞复现

5.1 寻找漏洞点

 5.2 进行进一步测试

5.2.1 手动测试

1.寻找字段

2.寻找回显位

3.查询当前用户 

5.2.2 sqlmap去跑

6.总结


1. 前言

        朋友说自己建了一个情侣网站,看到这个网站很有趣,记得之前有看过这个网站的漏洞的文章,那就对网站进行测试一下吧,当然不能直接用好兄弟的网站来测啦,这种网站一般都是通用的网站,直接开始测试,最后也就只发现SQL注入漏洞,这种站可以测试的功能点太少了.

免责声明

        博文中涉及的方法可能带有危害性,仅供安全研究与教学之用,读者将其方法用作做其他用途,由读者承担全部法律及连带责任,文章作者不负任何责任.

2. 网站简介

    Love-Yi情侣网站3.0是一个基于php框架和爱情主题的表白网站。经个人修改和设计更加美观好看,适合哄女朋友开心。

3. 寻找特征点

        首先在网站的底部发现Copyright © 2024 XX科技. All Rights Reserved.验证这是一个通用的建站,接下来就是从主页的代码中,找每个网站的公用特征了

3.1 第一次尝试

1.首先看到网站上面的ico,既然是通用那么图标总可以吧,结果fofa和鹰图全都失败🥲🥲🥲

 3.2 第二次尝试

        自己比较喜欢图标去找,尤其是特殊的图标,一找一个准,这不给我找到了😋😋😋

4.资产搜索

用fofa进行查询,因为搜索出的资产有很多,为了方便测试,随机进行挑选找了国内的一个站

第一次进行尝试时候的语法 

"Style/img/like.svg" && country="CN"

最终测试版 

"img/like.svg" && "2022" && country="CN"

        结果又是一顿嘎嘎搞,发现站的功能点太少了唯一可能存在的漏洞就是有一个id参数,有可能存在SQL注入,于是开始进行测试,最终在测试时进行失败了,但是怎么能放弃呢,这个站应该有旧版本吧,最终在测试2022这个版本的时候发现了漏洞,于是语法又更新了.

 

5.漏洞复现

5.1 寻找漏洞点

        首先找到点点滴滴下的文章,点击文章后,发现url处出现一个id,php的站最喜欢的就是id这个参数了,这不就有了吗

文章页面详情

      直接在id后面尝试一个sql注入常用的单引号,发现页面闪了一个报错,然后消失了,没关系,F12查看页面源代码,发现sql注入的常见保存,漏洞+1.

id=6'

 5.2 进行进一步测试

        既然发现存在漏洞,那我们进行进一步利用的话,需要,首先尝试php最常见的union注入,发现存在,然后通过二分法发现,在尝试4个字段的时候,页面没有内容,而5个字段的时候页面会出现内容,确定数据库字段为5个字段.

5.2.1 手动测试

1.寻找字段

4个字段,页面回显错误,发现没有任何的页面数据

?id=6' union select 1,2,3,4 --+

尝试5个字段的时候,发现页面回显正常 

?id=6' union select 1,2,3,4,5 --+

2.寻找回显位

        通常的方式就是给id赋值一个不存在的页面,查看回显的数字,我喜欢直接用-号来表示

?id=-6' union select 1,2,3,4,5 --+

3.查询当前用户 

发现回显的字段为2,代表数据库在2处会进行回显,直接查询角色,证明存在漏洞然后点到为止

?id=-6' union select 1,user(),3,4,5 --+

 

5.2.2 sqlmap去跑

语法如下所示:

        尽量不用sqlmap去跑,毕竟用工具测试的话请求过多不仅容易被发现,而且对于小站来说容易跑崩,我自己就不进行测试了.

python sqlmap.py -u http://xxxxxxxxx/page.php?id=* --level=3

6.总结

        本次测试也是对自己手法的一次测试,虽然没有进行绕过,但是还是对于信息收集的思路有了更进一步的提升,测试很有趣,休息的时候玩玩也不错,继续加油

相关文章:

  • 如何在路由器上安装代理服务:详细教程
  • redis笔记1
  • 在 Qt Creator 上创建 ROS 项目并新建/导入 ROS 包
  • 探究MySQL中的“树”结构
  • 【TensorFlow深度学习】卷积层变种与深度残差网络原理
  • Java——二进制原码、反码和补码
  • xmake+xrepo自建仓库添加交叉编译工具链
  • 『大模型笔记』FlashAttention: 具有IO意识的快速且内存高效的精确注意力机制!
  • C++17新特性
  • bootstrapblazor小白笔记
  • 面试题--this关键字
  • 网络编程(三)
  • JVM类加载过程
  • linux进程加载和启动过程分析
  • 解决git status提示error bad signature 0x00000000
  • 11111111
  • co.js - 让异步代码同步化
  • java取消线程实例
  • java中的hashCode
  • Linux CTF 逆向入门
  • react 代码优化(一) ——事件处理
  • 从零开始在ubuntu上搭建node开发环境
  • 排序(1):冒泡排序
  • 使用Tinker来调试Laravel应用程序的数据以及使用Tinker一些总结
  • 视频flv转mp4最快的几种方法(就是不用格式工厂)
  • 物联网链路协议
  • 一个SAP顾问在美国的这些年
  • 一个完整Java Web项目背后的密码
  • MiKTeX could not find the script engine ‘perl.exe‘ which is required to execute ‘latexmk‘.
  • 3月27日云栖精选夜读 | 从 “城市大脑”实践,瞭望未来城市源起 ...
  • ​​​​​​​ubuntu16.04 fastreid训练过程
  • ​​​【收录 Hello 算法】9.4 小结
  • ###51单片机学习(2)-----如何通过C语言运用延时函数设计LED流水灯
  • #define、const、typedef的差别
  • #常见电池型号介绍 常见电池尺寸是多少【详解】
  • (01)ORB-SLAM2源码无死角解析-(56) 闭环线程→计算Sim3:理论推导(1)求解s,t
  • (delphi11最新学习资料) Object Pascal 学习笔记---第13章第6节 (嵌套的Finally代码块)
  • (rabbitmq的高级特性)消息可靠性
  • (Redis使用系列) Springboot 在redis中使用BloomFilter布隆过滤器机制 六
  • (Redis使用系列) SpringBoot 中对应2.0.x版本的Redis配置 一
  • (含笔试题)深度解析数据在内存中的存储
  • (一) storm的集群安装与配置
  • (一)Dubbo快速入门、介绍、使用
  • .【机器学习】隐马尔可夫模型(Hidden Markov Model,HMM)
  • .gitignore文件_Git:.gitignore
  • .gitignore文件—git忽略文件
  • .net访问oracle数据库性能问题
  • .NET设计模式(11):组合模式(Composite Pattern)
  • /var/lib/dpkg/lock 锁定问题
  • @RequestParam,@RequestBody和@PathVariable 区别
  • [ 隧道技术 ] 反弹shell的集中常见方式(四)python反弹shell
  • [04] Android逐帧动画(一)
  • [android] 天气app布局练习
  • [autojs]逍遥模拟器和vscode对接
  • [C#] 我的log4net使用手册