attacking oracle with metasploit

测试机器:

1、win 2003 安装oracle  配实例 起监听

2、kali linux  metasploit armitage


数据库常见漏洞:

1.默认、空白及弱用户名/密码

2.SQL注入

3.启用不必要的数据库功能

4.缓冲区溢出

5.特权升级

6.拒绝服务攻击

7.数据库未打补丁

8.敏感数据未加密


SQL数据库典型攻击方式:

1.强力(或非强力)破解弱口令或默认的用户名及口令

2.特权提升

3.利用未用的和不需要的数据库服务和和功能中的漏洞

4.针对未打补丁的数据库漏洞

5.SQL注入

6.窃取备份(未加密)的磁带


测试内容:

1metasploit中集成了很多oracle测试工具,包括扫描、分析、渗透等

wKiom1MAeBzjThmcAAEQs3FEL3I147.jpg

2、采用auxiliary/admin/oracle/oracle_loginoracle弱口令进行扫描

wKioL1MAeAbTV89kAAIgrdX1Rh4180.jpg

3、采用auxiliary/admin/oracle/oracle_sqloracle进行相关查询,需要用户名密码

查看版本信息select * from v$version

wKiom1MAeEKTkFmmAAEvQJk3Fms638.jpg

查看所有账号情况Select username,password,account_status from dba_users

wKioL1MAeC3DGOP2AALqPvuJi1M190.jpg

4、采用auxiliary/admin/oracle/sid_bruteoracle实例进行猜解

wKiom1MAeHDBbtlRAAEBNnzy29s643.jpg

我的目标机器里面只创建了orclorcl2两个实例,这里为什么多了一个“PLSExtProc”呢?

oracle装好后默认的PLSExtProc是什么意思
默认安装时,会安装一个PL/SQL外部程序(ExtProc)条目在listener.ora中,是oracle为调用外部程序默认配置的监听,它的名字通常是ExtProcPLSExtProc,但一般不会使用它,可以直接从listener.ora中将这项移除,因为对ExtProc已经有多种攻击手段了,在不使用外部程序时,oracle也是建议删除的。
PLSExtPro pl/sql external  procdure 的意思,就是在pl/sql中调用外部语句,如c,java写的过程。

现在,Oracle已经全面支持JAVA了,这东西也就过时了,之所以继续保留是考虑到兼容以前老版本的数据库实例。
有时可能会在多个数据库实例之间拷贝listener.ora,请检查拷贝来的文件中是否含有不需要的服务,确保只留下的确需要的服务项目,减少监听器受攻击的面。

5、采用auxiliary/scanner/oracle/tnslsnr_version查看oracle运行环境和版本

wKioL1MAeGHwx1A2AADNAVjm9X4240.jpg

采用auxiliary/admin/oracle/tnscmd得到更多信息

wKiom1MAeJex3FbcAAH8R9huSAA227.jpg

6、采用auxiliary/admin/oracle/post_exploitation/win32exec执行系统命令,一直出错,下次另找台机器试试

wKioL1MAeIOD9rNqAAHovkgiM-I925.jpg


你可能感兴趣的:(oracle,linux,Attack,kali,metasploit)