随笔分类 -  SQL注入

摘要:第8关 ##手工 注入点 单引号 输入单引号页面不能正常显示 2.构造正确逻辑 页面正常显示 3.错误逻辑 页面什么不显示 补充:根据页面显示,本关可以用布尔盲注和时间注入;选择用布尔盲注,因为9-10是可以练习时间注入的 数据库长度 数据库 利用Burpsuite,帮助我们加快测试的流程 语句 ' 阅读全文
posted @ 2022-01-02 21:39 ceiling~ 阅读(392) 评论(0) 推荐(0)
摘要:读(导出)文件函数 函数名称 load_file(file_name) 使用条件 用户有权限读取 && 文件是可读的 读取文件在服务器上(可以理解为文件名是存在的) 必须指定完整路径(路径要正确) 读取文件小于max_allowed_packet(该文件不能超过sql文件里规定的文件大小) 演示环节 阅读全文
posted @ 2022-01-02 13:29 ceiling~ 阅读(237) 评论(0) 推荐(0)
摘要:基础补充 master..sysdatabases 系统数据表 unicode 获取输入字符串的整数值 exists 检验查询是否返回数据。exists并不在意具体数据,只会返回是否有数据 syscolums syscolums是系统的字段表,保存当前数据库中的所有字段 sysobjects 存放该 阅读全文
posted @ 2021-07-11 20:43 ceiling~ 阅读(294) 评论(0) 推荐(0)
摘要:可被注入的参数 cookie referer user-agent x-forward-for client-ip host 参数介绍 cookie 网站为了辨别⽤户⾝份、进⾏ session 跟踪⽽储存在⽤户本地终端上的数据(通常经过加密). referer 浏览器向 WEB 服务器表明⾃⼰是从哪 阅读全文
posted @ 2021-07-06 20:15 ceiling~ 阅读(386) 评论(0) 推荐(0)
摘要:执行指定sql语句 命令 --sql-query="sql语句" 示例 sqlmap.py -u "http://127.0.0.1/sql/Less-1?id=1" --sql-query="select @@version" sqlmap.py -u "http://127.0.0.1/sql/ 阅读全文
posted @ 2021-06-17 19:33 ceiling~ 阅读(694) 评论(0) 推荐(0)
摘要:原理 我们无法获取数据库存储的数据,但当我们请求网址时,浏览器会将网址发给DNS服务器,通过服务器找到对应的IP地址并且数据库会把自己的数据给dns服务器,于是我们可以请求自己的网址,并在dnslog上找到我们请求的记录 直接看到 使用函数 load_file() 关于load_file()函数的权 阅读全文
posted @ 2021-06-16 19:12 ceiling~ 阅读(455) 评论(0) 推荐(0)
摘要:原理 转义特殊字符('或者“)时,因为宽字节占用的字符长度,可以构造语句,从而消灭掉转义字符斜线/ 手工注入 sqli_labs 第32关 判断是否有注入点 1.以’构造,看页面是否报错 (假设我是不知道这关是宽字节注入) 以引号构造语句,没有报错 以双引号构造语句,没有报错 这个时候,通过我现在已 阅读全文
posted @ 2021-06-12 15:06 ceiling~ 阅读(91) 评论(0) 推荐(0)
摘要:延时函数 waitfor delay 语法 WAITFOR DELAY '0:0:N' 示例 WAITFOR DELAY '0:0:6'-- 延时6秒 IF exists()子句 语法 if exists() waitfor delay '0:0:6' 注入语句的位置在exists()内 阅读全文
posted @ 2021-02-24 11:50 ceiling~ 阅读(161) 评论(0) 推荐(0)
摘要:concert()函数 功能 把日期转换为新数据类型的通用函数 语法 CONVERT(date_type(length),data_to_be_convrted,style) date_type(length) 规定目标数据类型 data_to_be_converted 含有需要转换的值 style 阅读全文
posted @ 2021-02-22 14:45 ceiling~ 阅读(289) 评论(0) 推荐(0)
摘要:Mssql数据库特点 高性能设计,可充分利用WindowsNT的优势 系统管理先进,支持windowsNT的优势 强壮的事物处理功能 支持堆成多处理器结构、存储过程、ODBC,并具有资助的SQL语句。 Mssql数据库补充介绍 判断是都为Mssql数据库 and exists(select * fr 阅读全文
posted @ 2021-02-22 10:59 ceiling~ 阅读(116) 评论(0) 推荐(0)
摘要:读写操作需要的条件 正常条件 当前连接到数据库的用户是ROOT权限 网站物路径(可以用报错、phpinfo页面、猜、爆破) 版本条件 5.5.53之前:secure_file_priv变量默认为空,所以默认情况下是可以直接通过SQL语句来导出文件的 高于5.5:secure_file_priv的值为 阅读全文
posted @ 2021-02-18 10:45 ceiling~ 阅读(171) 评论(0) 推荐(0)
摘要:延时注入 mysql>=5.0 使用sleep()进行查询 mysql<5.0使用benchmark()进行查询 注入流程 1.判断是否存在延迟注入 id=1' and sleep(5)# 2.判断当前用户 id=1' and if(ascii(substr(user(),1,1))=114,sle 阅读全文
posted @ 2021-02-17 15:00 ceiling~ 阅读(137) 评论(0) 推荐(0)
摘要:#原理 语句正确,页面返回正确;语句错误,页面返回错误。 盲注常用的函数 函数 功能 length() 返回字符串的长度 substr() 用来截取字符串 ascii() 返回字符adcii码 sleep() if(ex1,ex2,ex3) 判断语句,ex1正确执行ex2,错误执行ex3 #注入流程 阅读全文
posted @ 2021-02-17 09:33 ceiling~ 阅读(556) 评论(0) 推荐(0)
摘要:什么时候用 页面没有回显示 常用的报错函数 1.floor() union select * from (select count(*),concat(floor(rand(0)==*==2),(select user()))a from information_schema.tables grou 阅读全文
posted @ 2021-02-14 10:53 ceiling~ 阅读(92) 评论(0) 推荐(0)
摘要:原理 ==union select==联合查询。即合并(取交集,结果中没有重复行)前后两个查询; 这里要注意以下两点 前后查询视图,必须拥有相同数量的列 列也必须拥有相同的数据类型(数据内省份三大类:数值、日期和时间、字符串) union联合查询注入基本流程 1.判断是否存在注入 ①单引号法 ’ ② 阅读全文
posted @ 2021-02-13 17:28 ceiling~ 阅读(522) 评论(0) 推荐(0)
摘要:灵魂三问 所有点都考虑到了吗 真的懂每一种注入原理了吗 真的会利用这种漏洞了吗 SQL注入 定义 通过将恶意的sql查询或添加语句插入到应用的输入参数中,再在后台sql服务器上解析执行进行的攻击 满足条件 要有参数值的传递(url的GET请求时、注册、留言板等) 参数值可控 带入数据库执行 ##威胁 阅读全文
posted @ 2021-02-13 14:47 ceiling~ 阅读(98) 评论(0) 推荐(0)