ERP安全|Oracle EBS渗透测试工具

直到今天仍有许多的企业忽视了IT安全的重要性。随着网络的发展,网络犯罪也日益严重化和多样化,加上一些企业安全意识的淡薄,随时都有可能成为被攻击的对象,并给企业带来巨大的经济损失。这就是为什么我们需要更多的关注网络犯罪问题,以及提升网络意识的根本原因所在。

ERP安全是IT安全的独立部分。如今,ERP代表了各种基于不同技术编写的各种工具和服务。在安全领域拥有适当的知识和便于管理的工具是至关重要的。

当我们在探索Oracle电子商务套件安全性时,我们注意到市场上缺乏可以帮助我们简化安全评估,便利且免费的安全工具。有很多各种各样的模块或脚本也只是随随便随便的检查一两个问题。为此,我们决定开发自己的解决方案,第一个免费的Oracle电子商务套件安全扫描器 – ERPSCAN EBS Pentesting tool。

这是一个由我们研究团队开发的对多种EBS exploits的“封装”。所有模块都用python语言表示。目前,有四个主要模块(其中1个使用EBS用户密码解密器):

  • EBS DB用户爆破;
  • EBS用户爆破;
  • EBS Java序列化测试;
  • EBS XML序列化测试。

目前,我们只发布了其中的四个。如果这款工具反馈良好,我们将继续这个项目并发布更多我们的私有模块。

测试Oracle EBS数据库

Oracle EBS DB用户爆破

脚本使用预定义的密码爆破标准DB用户。此外,它可以从APPS.fnd_user表中获取EBS用户的密码,如果密码被哈希加密,则会使用ebsDecrypt.py模块对其解密。所有发现将会被保存在dbCheckResults.txt文件中。

Help

你应该安装cx_Oracle进行操作。

usage: dbUsersBforce.py [-h] [-H HOST] [-P PORT] [-s SID] [-d DEC] [-v]

EBS DB Users brute-force Python Script. It tests for default DB users with the predefined passwords. Also it can check
whether any bruted DB user can decrypt EBS Users passwords (of course if Password Hashing is not implemented).

optional arguments:
  -h, --help            显示帮助信息并退出
  -H HOST, --host HOST  DB host (默认: 127.0.0.1). 示例: ebs.example.com
  -P PORT, --port PORT  DB port (默认: 1521)
  -s SID, --sid SID     DB SID (默认: EBSDB)
  -d DEC, --dec DEC     尝试解密EBS用户密码? Y/N
  -v, --verbose         详细模式

Usage

应用程序用户密码应该大写。

$ decrypt.py -k APPS -d ZH4715DC7E9C2213F7CD56D44CE1CB8625FB71D0F4935EFEAE5B8CA66117B9C2D6A1E733BA80005F4CD19706A03218E8C5E4

测试Oracle EBS应用程序

EBS用户爆破

脚本使用预定义的密码爆破EBS默认用户。它处理两种类型的身份验证版本(不要与SSO混合!)。

Help

usage: ebsUsersBforce.py [-h] [-H HOST] [-P PORT] [-s] [-t TIMEOUT] [-v]

EBS Users brute-force python script brutes EBS default users with predefined passwords.

optional arguments:
  -h, --help            显示帮助信息并退出
  -H HOST, --host HOST  EBS host (默认: 127.0.0.1). 示例: ebs.example.com
  -P PORT, --port PORT  EBS web port (默认:8000)
  -s, --ssl             启用SSL
  -t TIMEOUT, --timeout TIMEOUT
                        HTTP连接超时秒数 (默认:10)
  -v, --verbose         详细模式

Usage

$ ebsUsersBforce.py -H ebs.example.com -P 8000

Oracle EBS Java序列化测试

EBS python脚本,基于Apache Commons Collections 3的Java序列化sleep payloads测试。它会发送特殊的sleep payloads并检查响应时间值。如果响应时间值超过10秒,则表明测试主机极易可能受到Java反序列化的攻击。

Help

usage: javaSerDetect.py [-h] [-H HOST] [-P PORT] [-u URL] [-s] [-t TIMEOUT]
                        [-v]

EBS python script for Java Serialization sleep payloads testing based on Apache Commons Collections 3.

optional arguments:
  -h, --help            显示帮助信息并退出
  -H HOST, --host HOST  EBS host (默认: 127.0.0.1). 示例: ebs.example.com
  -P PORT, --port PORT  EBS web port (默认: 8000)
  -u URL, --url URL     EBS目标URL (默认: OA_HTML/iesRuntimeServlet)
  -s, --ssl             启用SSL
  -t TIMEOUT, --timeout TIMEOUT
                        HTTP连接超时秒数 (默认: 15)
  -v, --verbose         详细模式

Usage

$ javaSerDetect.py -H ebs.example.com -P 8000

Oracle WebLogic级别检查

Oracle EBS XML序列化测试

Python脚本,基于CVE-2017-3506&10271的XML序列化sleep payloads测试。它会发送特殊的sleep payloads并检查响应时间值。如果响应时间值超过10秒,则表明测试主机极易可能受到XML反序列化的攻击。

Help

usage: xmlSerDetect.py [-h] [-H HOST] [-P PORT] [-u URL] [-s] [-t TIMEOUT]
                       [-v]

EBS python script for XML Serialization sleep payload testing based on `CVE-2017-3506 & 10271`.

optional arguments:
  -h, --help            显示帮助信息并退出
  -H HOST, --host HOST  WebLogic host (默认: 127.0.0.1). 示例: ebs.example.com
  -P PORT, --port PORT  WebLogic port (默认: 7001)
  -u URL, --url URL     WebLogic目标URL (默认: wls-wsat/CoordinatorPortType)
  -s, --ssl             启用SSL
  -t TIMEOUT, --timeout TIMEOUT
                        HTTP连接超时秒数 (default: 15)
  -v, --verbose         详细模式

Usage

$ xmlSerDetect.py -H ebs.example.com -P 7001

你可以从这里下载我们的工具。最后欢迎大家关注我们的Twitter,Facebook以及LinkedIn,以便从我们的ERPScan研究团队获取更多的信息。

*参考来源:erpscan,FB小编 secist 编译,转载请注明来自FreeBuf.COM

你可能感兴趣的:(java-hack)