Crack Oracle Password
来源:互联网 发布:火狐 谷歌 知乎 编辑:程序博客网 时间:2024/06/06 02:53
来源:冷漠's Blog 注:本站授权首发,转载请注明来源 Oracle 不同的版本有大量的默认帐户密码。可是有些情况下,Oracle 数据库管理员把默认的密码给修改了, 我们就要选择暴力破解了 。如果帐户破解成功 ,登录上去,是 DBA 权限的话最好 ,不是的话,也可以利用 Oracle 的一些漏洞进行提权到 DBA。进入数据库后,我一般选择的是抓取其他用户的密码哈希值,然后本地 Rainbow 破解。如果同网段还有其他的 Oracle 数据库,可以抓包等待其他用户的 Oracle 登录验证,取出敏感 信息,然后破解。进一步扩大战果。下面我就分别讲讲这三种破解方法及相关工具的使用。 Quotation 1、标准的 Oracle 密码可以由英文字母,数字,#,下划线(_),美元字符($)构成,密码的最大长度为 30 字符;Oracle 密码不能以"$","#","_"或任何数字开头;密码不能包含像"SELECT","DELETE","CREATE"这类的 Oracle/SQL 关键字。 2、Oracle 的弱算法加密机制:两个相同的用户名和密码在两台不同的 Oracle 数据库机器中,将具有相同的哈希值。这些哈希值存储在 SYS.USER$表中。可以通过像 DBA_USERS 这类的视图来访问。 3、Oracle 默认配置下,每个帐户如果有 10 次的失败登录,此帐户将会被锁定。但是 SYS 帐户在 Oracle 数据库中具有最高权限,能够做任何事情,包括启动/关闭 Oracle 数据库。即使 SYS 被锁定,也依然能够访问数据库。 一、远程暴力破解 由前面的基础知识 3,可以得知选择远程破解 Oracle 的最好帐户是 SYS,因为此帐户永远有效。在 Oracle10g 可以使用 Orabrute 工具来进行远程破解,在使用这个工具的时候,需要系统提前安装好 Sqlplus,该工具的 原理很简单,就是不停的调用 Sqlplus 然后进行登录验证,帐户选择的是 SYS,密码则为 password.txt 中的密 码单词。只要登录成功 ,就会调用 selectpassword.sql 脚本抓取出在 SYS.USER$表中的其他用户的哈希值 , 然后退出程序。这里有个注意的地方,当第二次运行 Orabrute 的时候,需要删除或移动同目录下的前一次运行 Orabrute 时生成的 thepasswordsarehere .txt 和 output.txt 文件。 Orabrute 的使用方法为: orabrute <hostip> <port> <sid> <millitimewait> 效果如图 3,4 Orabrute 的破解速度比较慢,我们可以采取变通的方法来破解,如果 Oracle 的数据库版本为 Oracle10g。默 认自带个通过 8080 端口来远程管理数据库的 WEB 接口,如图 5 当我们访问 http://ip:8080/oradb/public/global_name 时,会弹出认证信息,这种 HTTP 的基本验证,有好 多的工具可以快速破解,可以选择著名的 Hydra,我这里选择的是图形界面的 wwwhack,设置好用户名为 SYS, 选择字典,就可以破解了。速度要比通过 Orabrute 来破解快许多。效果如图 6 所示 二、以 DBA 权限登录后的破解 当得到一个远程登录的帐号后,可以使用 Checkpwd 来验证数据库中所有的缺省用户的默认密码。Checkpwd 是采用远程破解的,速度比较慢。不过能清晰的看出每个帐户的状态(过期,锁定),Checkpwd 的使用方法为: checkpwdusername/password@//ip:port/sidpasswordfile 效果如图 7 所示 我们也可以使用 Sqlplus 直接登录到 Oracle 数据库,然后使用 select username,password form dba_users 命令查看数据库中的用户名和密码,然后本地用 Cain 来破解,如图 8 所示。 本地破解速度是非常快的,我推荐先选择字典破解,在 Cain 中点选的 Cracker 标签,然后右键点击先前导入 好的用户名和哈希值,选择"Dictionary Attack"选项,就可以字典破解了。效果如图 9,图 10。 字典攻击无效果的时候,可以采用 RainBow 破解,Cain 自带了 Rainbow 表生成器,打开 Winrtgen,点选"AddTable",在"Hash" 栏中选择 Oracle,在"Min Len" ,"Max Len" 分别表示是最小密码长度和最大密码长度 ,"Charset"选择密码中的字符集,然后点"Ok"按钮就能开始生成 Rainbow 表了,如图 11 生成表的时间要看你的 CPU 和你刚才的 Rainbow 配置了,生成的表会占用大量的硬盘空间。不过好处是一 次生成可以多次使用。使用 Rainbow 方法进行破解的时候,会占用大量的内存。可是速度非常的快,效率也 很高。 三、同交换机/集线器下的其他 Oracle 数据库破解 THC 组织新发布了一款叫 Orakel 的工具,该工具分析,破解 Oracle 数据库的脆弱远程认证机制。经我测试, 该工具仿佛只对 Oracle8i 的远程登录认证有效果。不过随软件附带的文档提供了一种攻击方法 。如果是在同 集线器(HUB)下的其他端口有 Oracle8i 数据库,我们知道集线器(HUB)是在同一个冲突域和广播域中的。可以 直接使用 Ethereal 此类的抓包工具抓取其他端口的用户连接 Oracle8i 数据库的认证信息。我测试的时候选择的是 Ethereal 抓包工具,因为该工具有个非常好的功能"Follow TCP Stream",可以利用这个功能,快速的找 出认证包中的 AUTH_SESSKEY,AUTH_PASSWORD,连接用户名的值 ,然后把相关的值填入 OrakelSniffert 工具中,就可以破解了,OrakelSniffert 工具支持字典破解和暴力破解,破解速度非常快。效果如图 12,图13 如果是在交换机的环境下 (SWITCH),每个端口都是一个冲突域 ,我们无法直接的捕捉到其他端口的信息 , 但可以利用 ARP 欺骗技术或配置交换机的端口分析功能(SPAN),让其他端口的数据包流量流经本地,实际应 用中,最常用的还是 ARP 欺骗技术,然后使用 Ethereal 抓取认证过程,破解的方法是一样的。 四、防护 由基础知识 1 得知,默认情况下设置标准的 Oracle 密码是很不复杂的, 但可以使用双引号来突破 Oracle 的 设置密码限制,通过使用双引号能够添加以下额外的字符 %^@$*()_+~`-=[{]}/|;:',<.> 在 Oracle 中添加并赋予用户 DBA 权限的命令如下: SQL> create user minnie identified by "%^@$*()_+~`=-[}[{/:'"; 效果如图 14 所示: 通过设置如此复杂的密码,可以在一定程度上防止密码的破解。 参考文献:
Author:Mickey
要连接远程的 Oracle 数据库,需要知道 SID,用户名, 密码,当然还有最重要的 IP 地址。SID 如果被管理 员修改的话,可以利用 sidguess 来进行破解,速度非常的快,至于成功与否,就要看你的字典配置了。破解 效果如图 1。
图 1
有关 Oracle 密码的基础知识
以前的版本在安装的时候并没有提示修改 SYS 的默认密码,Oracle10g 虽然提示修改密码了,但是并没有检查密码的复杂性。如图2
图 2
图 3
图 4
图 5
图 6
图 7
图 8
图 9
图 10
图 11
图 12
图 13
SQL> grant dba to minnie;
图 14
《OraclePasswordsAndOraBrute》
《TheNextLevelOfOracleAttack》
《TheOracleHackersHandbook》
- Crack Oracle Password
- Crack Oracle Password
- Crack Oracle Password
- How to Crack Oracle Applications password
- windows password crack
- Glossary-How Do They Crack Your Password?
- 转:《PC Magazine》- How Do They Crack Your Password?
- Crack Password with John the Ripper on Ubuntu 9.10
- John The Ripper to crack the Password (UNIX/LINUX)
- crack
- Crack
- Crack
- Oracle中password file
- oracle password cracker
- Oracle's password file
- Oracle Password File
- oracle hash password
- Oracle Default User/Password List
- 【叶子函数分享二十七】根据日期得到星期的函数
- 入侵oracle数据库的一些技巧
- 线程函数
- QString的中文初步。
- android的sqlite导出及数据操作经验分享
- Crack Oracle Password
- 位域(位段)
- Windows Phone7 Image控件显示网络图片的两种方式
- 华为重生:转战消费品市场 转型多元制造商
- 网格模型中级一
- IT从业人员必看的10个论坛【转载】
- linux系统中数据类型的来源:
- 子线程中创建对话框
- 网格模型中级二