CTF SQL注入知识点
理解常用的登录判断
select * from user where username='admin' and password='123'
数据库元信息
infomation_schema
懂PHP
php://input
php://input可以读取没有处理过的POST数据。
相较于$HTTP_RAW_POST_DATA而言,它给内存带来的压力较小,并且不需要特殊的php.ini设置。
php://input不能用于enctype=multipart/form-data
file_get_contents("php://input")获取post数据的二进制流
with rollup:熟知偏门的SQL知识
select * from user group by id,name,age with rollup;
跟with rollup类似的还有with cube
获取当前数据库
select database()
获取当前数据库表
select table_name from information_schema.tables where table_schema='my_database'
SQL流程控制语句
SELECT Category =
CASE type
WHEN 'popular_comp' THEN 'Popular Computing'
WHEN 'mod_cook' THEN 'Modern Cooking'
WHEN 'business' THEN 'Business'
WHEN 'psychology' THEN 'Psychology'
WHEN 'trad_cook' THEN 'Traditional Cooking'
ELSE 'Not yet categorized'
END,
CAST(title AS varchar(25)) AS 'Shortened Title',
price AS Price
FROM titles
WHERE price IS NOT NULL
ORDER BY type, price
MySQL常用函数:不同数据库不一样
- ascii()
select ascii('1234');#返回1
SELECT ascii('1');#返回1
- substring(s from begIndex for length)
获取子串
计时攻击:服务器不返回具体信息
计时攻击巧妙绝伦,虽然有运行SQL语句的权限,但是却没办法获取SQL输出结果。
这时,可以通过时间来确定SQL输出结果。
你虽然什么都没说,但我看到你犹豫了。
case when (ascii(substring((select database()) from %d for 1))
& %d!=0)
then sleep(0.5)
else sleep(0)
end
对于长度为4的字符串,需要探测4×256次。
SQL中的空
select ''=0返回1
CTF SQL注入知识点的更多相关文章
- sql注入知识点整理(基础版)
sql注入知识点整理(基础版) 基本步骤 判断是否报错 判断闭合符号 判断注入类型 构建payload 手工注入或者编写脚本 基本注入类型 报错型注入 floor公式(结果多出一个1):and (se ...
- CTF SQL注入
目录 一.宽字节注入 二.基于约束的注入 三.报错注入 四.时间盲注 五.bool盲注 六.order by的注入 六.INSERT.UPDATE.DELETE相关的注入 七.堆叠注入 八.常用绕过 ...
- sql注入知识点
需找sql注入点1\无特定目标inurl:.php?id= 2\有特定目标:inurl:.php?id= site:target.com 3\工具爬取spider,对搜索引擎和目标网站的链接进行爬取 ...
- 一次简单的ctf SQL注入绕过
注入地址:http://103.238.227.13:10087/index.php?id=1 //过滤sql $array = array('table','union','and','or','l ...
- Sql注入测试--Sqlmap
慕课网sqlmap学习笔记: 一.SQL注入 所谓SQL注入,就是通过把SQL命令插入到Web表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令. 例如 (1)在url上 ...
- 基础Web漏洞-SQL注入入门(手工注入篇)
一.什么是SQL注入 SQL是操作数据库数据的结构化查询语言,网页的应用数据和后台数据库中的数据进行交互时会采用SQL.而SQL注入是将Web页面的原URL.表单域或数据包输入的参数,修改拼接成SQ ...
- CTF比赛中SQL注入的一些经验总结
ctf中sql注入下的一些小技巧 最近花了一点时间总结了各大平台中注入的trick,自己还是太菜了,多半都得看题解,就特此做了一个paper方便总结 注释符 以下是Mysql中可以用到的单行注释符: ...
- union注入的几道ctf题,实验吧简单的sql注入1,2,这个看起来有点简单和bugku的成绩单
这几天在做CTF当中遇到了几次sql注入都是union,写篇博客记录学习一下. 首先推荐一篇文章“https://blog.csdn.net/Litbai_zhang/article/details/ ...
- CTF—WEB—sql注入之宽字节注入
宽字节注入 宽字节注入是利用mysql的一个特性,mysql在使用GBK编码(GBK就是常说的宽字节之一,实际上只有两字节)的时候,会认为两个字符是一个汉字(前一个ascii码要大于128,才到汉字 ...
随机推荐
- Subset II leetcode java
题目: Given a collection of integers that might contain duplicates, S, return all possible subsets. No ...
- Hadoop家族学习路线图v
主要介绍Hadoop家族产品,常用的项目包括Hadoop, Hive, Pig, HBase, Sqoop, Mahout, Zookeeper, Avro, Ambari, Chukwa,新增加的项 ...
- offsetof与container_of宏[总结]
1.前言 今天在看代码时,遇到offsetof和container_of两个宏,觉得很有意思,功能很强大.offsetof是用来判断结构体中成员的偏移位置,container_of宏用来根据成员的地址 ...
- 腾讯下载的视频转换为MP4
第一步:首先找到腾讯视频下载设置中的缓存目录,如下图 打开这个目录,找到最近的,就是刚才你下载的文件夹 打开最近的文件夹,如下图,copy里面的内容到D盘的qlv目录中 第二部:进入D盘的qlv目录, ...
- [Git] Undo a commit that has already been pushed to the remote repository
If we pushed our changes already to the remote repository we have to pay attention to not change the ...
- 纪念google reader
2013年3月14日早上,谷歌在其官方博客宣布,2005年推出的 Google Reader 将在7月1号关闭. google reader的历史 以下搞自维基百科http://zh.wikipedi ...
- yii源码三 -- db
<AR> CActiveRecord:path:/framework/db/ar/CActiveRecord.phpoverview:is the base class for class ...
- C++实现一个web服务器, 弱智版服务器
监听本地的8888端口, 当在浏览器中访问这个地址的时候, 返回一堆HTML数据, 这种方式返回的数据不稳定,不同浏览器解析不同, 因为我们没有定义返回文件类型: #include <stdli ...
- Rust 的安装和使用举例
一.环境 二.安装 $curl -sSf https://static.rust-lang.org/rustup.sh | sh Welcome to Rust. This script will d ...
- SuperMap入门3——Hello World
Hello World程序很重要,对于入门来说,它可以检测我们的环境.配置是否正确,感受程序的易用性等. 添加工具 由于我是使用的VS2017+ SuperMap iObject绿色免安装版,所以新建 ...