sqli-labs学习笔记 DAY7
DAY7 sqli-labs阶段总结
基本步骤
- 判断是否报错
- 判断闭合符号
- 判断注入类型
- 构建payload
- 手工注入或者编写脚本
基本注入类型
- 报错型注入
- floor公式(结果多出一个1):
and (select 1 from (select count(*),concat((payload),floor(rand(0)*2))x from information_schema.tables group by x)a) - extractvalue公式(首尾各有一个波浪号):
and extracvalue(1,concat(0x7e,(payload),0x7e)
- floor公式(结果多出一个1):
- 布尔型注入
- 联合查询语句
- 回显点查询:UNION SELECT 1,2,3;
- 延时注入
其他注入技巧
- HPP绕过WAF
- 宽字节注入绕过引号过滤
- CHAR函数绕过引号过滤
- ||与&&绕过and和or的过滤
- 分割字符绕过一次字符串过滤
- 二次注入
- Linux特殊字符绕过空格过滤
- 括号法绕过空格过滤
常用SQL语句与函数
- 取子字符串:
mid(string, start, length) - 取子字符串:
left(string, length) - 取ASCII:
ascii(char) - 查询当前数据库:
database() - 查询当前用户:
user() - 当前数据库版本:
@@version - 数据库文件路径:
@@datadir - 爆表:
select table_name from information_schema.tables where table_schema='database' - 爆库:
select column_name from information_schema.columns where table_schem='database' and table_name='table' - 字符串连接:
concat() - 字符串按组输出:
group_concat() - 按照分隔符连接:
concat_ws(char,...) - 字段数猜解:
ORDER BY x
sqlmap使用基础
- -u指定url
- -p指定参数
- -D指定数据库
- -T指定表
- -C指定字段
- –current-db当前数据库
- –current-user当前用户
- –dbs查询所有数据库
- –tables查询所有表
- –columns查询所有字段名
- –dump查询记录
- –techniques X(X=B布尔型,E报错型,U联合注入型,T延迟型):指定注入类型
注意点
- 一些特殊符号需要编码,如&
- +在GET参数中会变成空格
sqli-labs学习笔记 DAY7的更多相关文章
- Sqli - Labs 靶场笔记(一)
Less - 1: 页面: URL: http://127.0.0.1/sqli-labs-master/Less-1/ 测试: 1.回显正常,说明不是数字型注入, http://127.0.0.1/ ...
- python学习笔记-Day7
class Province: # 静态字段(类变量/属性) country = '中国' def __init__(self, name): # 普通字段(实例变量/属性) self.name = ...
- JS学习笔记Day7
一.ES5扩展方法 1.严格模式"use strict" 1)必须加在作用域的开头 2.数组扩展方法 1)indexOf(元素,从哪个下标开始查找) 作用:在数组中查找指定的元素第 ...
- HTML学习笔记Day7
一.position定位属性,检索对象的定位方式 1.语法:{position:static(无特殊定位)/absolute(绝对定位)/relative(相对定位)/fixed(固定定位):} 1) ...
- Python学习笔记 - day7 - 类
类 面向对象最重要的概念就是类(Class)和实例(Instance),比如球类,而实例是根据类创建出来的一个个具体的“对象”,每个对象都拥有相同的方法,但各自的数据可能不同.在Python中,定义类 ...
- 【目录】Python学习笔记
目录:Python学习笔记 目标:坚持每天学习,每周一篇博文 1. Python学习笔记 - day1 - 概述及安装 2.Python学习笔记 - day2 - PyCharm的基本使用 3.Pyt ...
- python笔记 - day7
python笔记 - day7 参考: http://www.cnblogs.com/wupeiqi/articles/5501365.html 面向对象,初级篇: http://www.cnblog ...
- go语言,golang学习笔记1 官网下载安装,中文社区,开发工具LiteIDE
go语言,golang学习笔记1 官网下载安装,中文社区,开发工具LiteIDE Go语言是谷歌2009发布的专门针对多处理器系统应用程序的编程进行了优化,使用Go编译的程序可以媲美C或C++代码的速 ...
- C51学习笔记
转自:http://blog.csdn.net/gongyuan073/article/details/7856878 单片机C51学习笔记 一, C51内存结构深度剖析 二, reg51.头 ...
随机推荐
- javascript 中isPrototypeOf 、hasOwnProperty、constructor、prototype等用法
hasOwnProperty:是用来判断一个对象是否有你给出名称的属性或对象,此方法无法检查该对象的原型链中是否具有该属性,该属性必须是对象本身的一个成员. isPrototypeOf是用来判断要检查 ...
- 4、JVM-虚拟机性能监控与故障处理工具
前言: Java与C++之间有一堵由内存动态分配和垃圾收集技术所围成的“高墙”,墙外面的人想进去,墙里面的人却想出来. 4.1.概述 给一个系统定位问题的时候,知识.经验是关键基础,数据是依据,工具是 ...
- Python之Flask框架使用
Flask和Django.Bottle号称Python中的强大又简单的Web框架. Flask是一个使用Python编写的轻量级Web应用框架.基于Werkzeug WSGI工具箱和Jinja2 模板 ...
- 集合之fail-fast机制
在JDK的Collection中我们时常会看到类似于这样的话: 例如,ArrayList: 注意,迭代器的快速失败行为无法得到保证,因为一般来说,不可能对是否出现不同步并发修改做出任何硬性保证.快速失 ...
- vs未能正确加载XXX包,编译时停止工作问题
出现这个问题的原因可能是配置更改或安装了另一个扩展,幸好之前用的不多,重新进行用户配置代价也不高,打开Visual Studio Tools: 选择VS2013 开发人员命令提示: 输入deven ...
- C++矩阵库 Eigen 简介
最近需要用 C++ 做一些数值计算,之前一直采用Matlab 混合编程的方式处理矩阵运算,非常麻烦,直到发现了 Eigen 库,简直相见恨晚,好用哭了. Eigen 是一个基于C++模板的线性代数库, ...
- 使用putty进行ssh tunnel远程内网机器
通常我们通过登录具有外网ip的远程机器来连接内网的机器:本文介绍,通过putty进行ssh tunnel,进而达到使用本机直接连接远程内网机器: 1,在putty中创建一个session,输入具有外网 ...
- 1.1《想成为黑客,不知道这些命令行可不行》(Learn Enough Command Line to Be Dangerous)——运行终端
终端是个允许我们运行命令行的程序,运行命令前,先打开它.在MacOS系统上,可以使用macOS应用 Spotlight来打开终端窗口,Spotlight也有其他两种方式触发,一种是键入⌘␣(comma ...
- python3爬虫-知乎登陆
py文件: from fake_useragent import UserAgent import requests from http import cookiejar import base64 ...
- VS2010调试和头文件路径设置
1:VS2010 release 调试C/C++ -> 常规 -> 调试信息格式, 修改为程序数据库(/Zi)C/C++ ->优化 -> 优化,修改为已禁用(/Od)链接器 - ...