登陆框select绕过
0x00 原理
思路来自美团杯2021,本来说出题人已经把select通过正则过滤了,就不该总是往用select进行查询那方面想-》 select id from users where username='admin' and password='admin'
0x01 绕过方法
首先我们测出or没被过滤,and被过滤,||没被过滤,异或没被过滤,但是select被过滤了,如果纠结于用盲注,那么就必须要用到select。
然后题目还过滤了单引号,可以用到之前那篇随笔我提到的方法。通过 username=admin\ 去注释掉查询语句中的单引号进行绕过,然后再到密码栏插入payload。
一开始我采用的payload: username=admin&password=|| 1=1 通过这种判断 得到了 页面的提示 no flag here,但是感觉提示的不是很明白。
之后构造了 username=admin&password=(ord(left(database(),1))/**/regexp/**/0x67)1 得到了数据库名的第一个字符是g 最后一个字符是p ,然后 测得数据库有3个字符。
但其实仔细一想这样不行, 因为 select 根本没法用,后面如果要查表 或者 查列都必须用到select。 所以必须换种思路。
0x02 技巧
- 如果是密码框,而且过滤了if,可通过case...when...else...end替换
如果没过滤的话,猜测密码列就是 password ,所以可在那构造判断,原payload是or//if(password//regexp//0x67,1,0) ,因为前面的用户名是错的,所以是0,实际上是0 or if(password regexp 0x67,1,0) ,
语句逻辑为 如果password列中有0x67转成的字符就返回1,否则返回0
实验:

通过这样构造 查询到了匹配成功时的id, 但是 这样的话 不管 是否匹配 都有查询结果,所以页面可能显示是一样的 难以判断。
所以我们需要改成延时盲注

如果过滤了if 和 逗号 需要改成
or//case//when//password//regexp//binary//0x67//when//sleep(3)//else//112//end;
语句逻辑为 如果 密码匹配到了某个十六进制,实际上就是匹配到了某个确切的字符 就 休眠3秒,通过这种方式判断密码列中的flag,且区分大小写。
binary 是为了防止 出现大小写相同匹配


使用了binary时 是区分大小写的
反之


登陆框select绕过的更多相关文章
- [js开源组件开发]模拟下拉选项框select
模拟下拉选项框select 在css3流行的情况下,下拉框还是无法满足PD的需求,所以有了autosearch,有了模拟下拉框.效果如下图: select DEMO请案例点击这里查看.http://w ...
- jQuery对下拉框Select操作总结
jQuery对下拉框Select操作总结 转自网络,留做备用 jQuery获取Select元素,并选择的Text和Value: 1. $("#select_id").change( ...
- struts2 jsp表单提交后保留表单中输入框中的值 下拉框select与input
原文地址:struts2 jsp表单提交后保留表单中输入框中的值 下拉框select与input jsp页面 1 function dosearch() {2 if ($(&q ...
- AngularJS(6)-选择框Select
1.在 AngularJS 中我们可以使用 ng-option 指令来创建一个下拉列表,列表项通过对象和数组循环输出 <!DOCTYPE html> <html lang=" ...
- JQuery操作下拉框 select
要实现这种效果: html代码 1<script src="js/jquery-1.7.2.min.js"></script> 2 <table> ...
- php 品牌全车零件订购平台( 带采集数据 及 账号自动登陆【已绕过https证书加密】,php源码 ,QQ: 876635409 )
php捷豹路虎 品牌全车零件订购平台 ( 带采集数据 及 账号自动登陆[已绕过https证书加密],php源码 ,QQ: 876635409 [由于咨询用户太多,请备注:汽车配件]) 一.php+m ...
- 下拉框select中option居中样式
下拉框select中option居中样式 text-align:center;text-align-last:center;
- 基于jQuery鼠标点击弹出登陆框效果
基于jQuery鼠标点击弹出登陆框效果.这是一款扁平样式风格的jQuery弹出层登陆框特效.效果图如下: 在线预览 源码下载 实现的代码. html代码: <input type=" ...
- jQuery中下拉框select的操作方法详解
最近在写页面的时候常常遇到要动态增删改下拉框select的情况,由于我比较习惯用jquery框架来架构我的前端js,所以就顺便把各种jquery操作下拉框select的方法总结了一下,收藏起来以便下次 ...
随机推荐
- Java学习之数组的简单用法
•概念 其实所谓的数组指的就是一组相关类型的变量集合,并且这些变量可以按照统一的方式进行操作. 数组本身属于引用数据类型,那么既然是引用数据类型,这里面实际又会牵扯到内存分配: 而数组的定义语法有两种 ...
- istio sidecar使用自定义镜像源
Istio 和 sidecar 配置保存在 istio 和 istio-sidecar-injector 这两个 ConfigMap 中,其中包含了 Go template,所谓自动 sidecar ...
- [深搜]C. 【例题3】虫食算
C . [ 例 题 3 ] 虫 食 算 题目解析 正解 : Dfs + 剪枝 依题意,把样例以加法的形式展现出来. 根据加法的性质,可以得出有两种情况:有进位和没有进位的. 而从百位到最高位的结果,又 ...
- SparkStreaming使用mapWithState时,设置timeout()无法生效问题解决方案
前言 当我在测试SparkStreaming的状态操作mapWithState算子时,当我们设置timeout(3s)的时候,3s过后数据还是不会过期,不对此key进行操作,等到30s左右才会清除过期 ...
- 翻译:《实用的Python编程》09_01_Packages
目录| 上一节 (8.3 调试) | 下一节 (9.2 第三方包) 9.1 包 如果编写一个较大的程序,我们并不真的想在顶层将其组织为一个个独立文件的大型集合.本节对包(package)进行介绍. 模 ...
- leetcode 刷题(数组篇)4题 寻找两个正序数组的中位数(二分查找)
题目描述 给定两个大小分别为 m 和 n 的正序(从小到大)数组 nums1 和 nums2.请你找出并返回这两个正序数组的 中位数 . 示例 1: 输入:nums1 = [1,3], nums2 = ...
- 一文简述Java IO
Java IO 本文记录了在学习Java IO过程中的知识点,用于复习和快速查阅,不够详细的部分可能会在后续补充. 什么是流 流:内存与存储设备(外存)之间传输数据的通道 IO:输入流输出流(如rea ...
- [ERROR]: gitstatus failed to initialize.
1 问题描述 Manjaro升级后,zsh的主题p10k出现的问题. Your git prompt may disappear or become slow. Run the following c ...
- 在Linux CentOS上搭建Jmeter压测环境
本文的主要内容是介绍如何在Linux CentOS 服务器上面搭建Jmeter的压测环境整个详细的流程,来满足我们日常工作中对于压力测试环境搭建.压力测试执行过程的需求. 一.首先我们要准备四个东西, ...
- 【Spring】循环依赖
@ 目录 循环依赖 是什么? Spring是如何解决的? 源码分析 细节 循环依赖 是什么? 简单的来说就是对象a的属性中引用了对象b,对象b的属性中引用了对象c......最后引用到a. < ...