Pentesting SAP

从零开始学习AWS黑客技术,成为专家 htARTE(HackTricks AWS红队专家)

支持HackTricks的其他方式:

SAP简介

SAP代表数据处理中的系统应用和产品。SAP从定义上来说,既是ERP(企业资源规划)软件的名称,也是公司的名称。 SAP系统由多个完全集成的模块组成,几乎涵盖了业务管理的各个方面。

每个SAP实例(或SID)由三层组成:数据库、应用和表示层),每个系统通常由四个实例组成:开发、测试、QA和生产。 每个层面都可以在一定程度上被利用,但攻击数据库可以获得最大的效果。

每个SAP实例被划分为客户端。每个客户端都有一个名为SAP*的用户,相当于应用程序中的“root”。 在初始创建时,此用户SAP*会获得一个默认密码:“060719992”(更多默认密码见下文)。 如果您知道在测试或开发环境中这些密码经常没有更改,您会感到惊讶!

尝试使用用户名adm访问任何服务器的shell。 暴力破解可能有所帮助,但可能存在账户锁定机制。

发现

下一节主要来自https://github.com/shipcod3/mySapAdventures用户shipcod3的内容!

  • 检查应用范围或程序简介以进行测试。注意主机名或系统实例,以连接到SAP GUI。

  • 如果应用程序面向互联网或公共,使用OSINT(开源情报)、Shodan和Google Dorks检查文件、子域和有趣的信息:

SAP 登录界面
  • 使用 nmap 检查开放端口和已知服务(sap 路由器,webdnypro,web 服务,web 服务器等)

  • 如果有 web 服务器运行,请爬取 URL。

  • 如果某些端口上有 web 服务器,请对目录进行模糊测试(可以使用 Burp Intruder)。以下是 SecLists 项目提供的一些良好字典,用于查找默认 SAP ICM 路径和其他有趣的目录或文件:

https://github.com/danielmiessler/SecLists/blob/master/Discovery/Web-Content/URLs/urls_SAP.txt https://github.com/danielmiessler/SecLists/blob/master/Discovery/Web-Content/CMS/SAP.fuzz.txt https://github.com/danielmiessler/SecLists/blob/master/Discovery/Web-Content/sap.txt

  • 使用 SAP SERVICE DISCOVERY 辅助 Metasploit 模块来枚举 SAP 实例/服务/组件:

测试厚客户端 / SAP GUI

以下是连接到 SAP GUI 的命令 sapgui <sap 服务器主机名> <系统编号>

  • 检查默认凭据(在 Bugcrowd 的漏洞评级分类中,这被视为 P1 -> 服务器安全配置错误 | 使用默认凭据 | 生产服务器):

  • 运行Wireshark,然后使用获取的凭据对客户端(SAP GUI)进行身份验证,因为一些客户端在没有SSL的情况下传输凭据。已知有两个Wireshark插件可以解析SAP DIAG协议使用的主要标头:SecureAuth Labs SAP dissection插件和Positive Research Center的SAP DIAG插件。

  • 检查特权升级,例如低权限用户使用某些SAP事务代码(tcodes):

    • SU01 - 创建和维护用户

    • SU01D - 显示用户

    • SU10 - 用于大规模维护

    • SU02 - 手动创建配置文件

    • SM19 - 安全审计 - 配置

    • SE84 - SAP R/3授权信息系统

  • 检查是否可以在客户端执行系统命令/运行脚本。

  • 检查是否可以在BAPI Explorer上执行XSS

测试Web界面

SAP Index Page
  • 寻找常见的Web漏洞(参考OWASP十大),因为某些地方存在XSS、RCE、XXE等漏洞。

  • 查看Jason Haddix的“The Bug Hunters Methodology”以测试Web漏洞。

  • 通过动词篡改进行身份验证绕过?也许:)

  • 打开http://SAP:50000/webdynpro/resources/sap.com/XXX/JWFTestAddAssignees#,然后点击“Choose”按钮,然后在打开的窗口中按“Search”。您应该能够看到SAP用户列表(漏洞参考:ERPSCAN-16-010

  • 凭据是否通过HTTP提交?如果是,则根据Bugcrowd的漏洞评级分类被视为P3:基于HTTP的身份验证和会话管理不安全 | 弱登录功能。提示:也可以查看http://SAP:50000/startPage或登录门户:)

SAP Start Page
  • 尝试/irj/go/km/navigation/以查看可能的目录列表或身份验证绕过

  • http://SAP/sap/public/info包含一些有趣的信息:

攻击!

  • 检查是否在旧服务器或技术上运行,如Windows 2000。

  • 计划可能的利用/攻击,有许多用于SAP发现(辅助模块)和利用的Metasploit模块:

  • 尝试使用一些已知的漏洞(查看Exploit-DB)或攻击,比如老但经典的“SAP ConfigServlet远程代码执行”在SAP门户中:

SAP配置Servlet RCE
  • 在执行发现阶段的bizploit脚本的start命令之前,您还可以添加以下内容以执行漏洞评估:

测试中其他有用的工具

参考资料

从零开始学习 AWS 黑客技术,成为专家 htARTE (HackTricks AWS Red Team Expert)!

支持 HackTricks 的其他方式:

最后更新于