当前位置:首页>软件介绍>实战ERP系统攻击 查询:
     
实战ERP系统攻击
来源:名易软件

基于我们以前的工作,当一家大型政府机构寻找一个独立第三方来对一个大型ERP部署(超过10万名终端用户)实施安全评估时,我们的名字——PivotPointSecurity——被选中了。

通过和PMQA制造商协调,我们向机构的执行管理团队保证该计划将达成重要的安全目的。因此我们的努力集中于提供保证上,保证他们的ERP能适当的确保敏感雇员数据安全(举例来说,薪水册,社会保险号等)。

该合约由下述部分组成:一个全面的安全评估,包括一个漏洞评估,以及对系统和程序运行所在子网的渗透测试,对管理程序的网络的渗透测试,以及对程序自己本身的安全测试。我们也执行一个控制审核,审核那些相信对达到秘密目的非常重要的控制。

准备起跑?

在运行了一个针对程序所在子网的漏洞评估后,我们整个团队开始坐下来研究数据,并阐明我们的渗透测试计划。注意漏洞评估数据是我们通常很典型的做法,以帮助我们识别何种漏洞组合能提供最可能的路径,从而完成渗透测试的目标——在本例中,则是访问机密数据。子网和系统看起来非常的安全。我们挑出了WEB服务器以及一些网络设备,因为它们看起来可能有一些潜在的漏洞。不过,我们还没乐观到认为我们能够“直接攻入”该程序数据。

基本上,在直接存取不可能的情况下,目标就变成了获得系统的存取权限以及系统地逐步增强优先级,这样我们可以通过最终获得系统管理员权限来控制系统。这会给予我们非常丰富的选择,包括:

从注册表中释放加密口令的能力。

对敏感数据或应用软件的权限

一个跳板系统,可用于攻击其他系统。通常适当位置的技术控制比“信任的”系统更低。

修改系统安全功能,以便通过后门进入系统的能力。

在系统中植入按键记录器,以便秘密记录用户行动的能力

这些选择提供了逐步提高特权级的能力,直到在一个域级别或重要系统上获得管理员级别的权限。

要点-对应物

我们感兴趣的WEB服务器运行着开放的SSL,我们认为对它也许可以进行暴力口令破解攻击。连接被拒绝,对该机器的一个快速重新扫描显示打开了一下的端口立刻又关闭了。我们猜想我们的活动被监控了,一个系统管理员正在守护着这台服务器(尽管管理层的指令是不要这么做)。我们检查了这台服务器上运行的FTP和SMTP服务,通过这个我们发现存在一个用户帐户叫做“ERPadmin”,但是我们的枚举口令猜测攻击在5次尝试猜测失败后就被锁定了,从而宣告了攻击的失败。我们通过推断这个帐户的存在,是因为对该帐户的回应,明显和一个已知不存在的帐户(比如Pivotpoint!)的回应不同。帐户的锁定,加上技术漏洞很少,加强了我们认为子网非常安全的观点。

因为我们感兴趣的网络设备同时还支持其他产品的应用程序,所以我们推迟了评估这些设备,取而代之的是企业的局域网。

差点错过的机会

在合约的一开始,当我们建议安全评估应当包括局域网时,我们遇到了极其强大的抵制。我们的信念(基于类似情景的多个合约所形成)是那些可能有存取优先权的局域网段,或者是有不同优先级用户的网段,都是一个特别的风险来源,即使应用程序是在一个完全不同的子网上。

我们在局域网上进行的漏洞扫描,和我们在产品所在子网上的结果一样,干干净净。这几乎是同类的Windows网络(2000服务器,XP主机),所有的主机配置本质上都一样。这个“几乎”成了我们的一大难题,直到我们意识到在局域网中有台孤零零的NT4服务器,运行了一个古老的传统程序。口令复杂性设置是由WindowsSMS中央分发的,不幸的是对NT4并不适用。这导致我们用一个Netbios列举工具(NBTEnum),通过该工具寻找常见的口令缺陷,从而找到了那些使用同一用户名密码(jimmyjimmy)的帐户。当我们发现到jimmy帐户是一个本地域的管理帐户时,我们意识到我们有了第一个落脚点。

上升,继续

一旦在一个系统上获得了本地管理权限,就可能使用一个工具(比如,PWDump)来获得机器上的SAM。SAM是一个口令的加密列表。我们使用一个口令破解软件来对付SAM(比如,LOphtCrack5),并执行一个词典攻击。词典攻击破解了另外2个用户帐号,但是没有一个帐户比我们已经获得的权限更高。另外还有一个帐号,我们根据它的名字,猜测它是一个通用局域网管理帐号。我们对这个帐户扔了一个暴力破解上去,然后就走开了。在破解工具进行暴力破解时,我们开始喝咖啡。

等我们喝完咖啡回来,我们找到并获得了许可,对一个有趣的网络交换机实施我们的渗透测试活动。这台机器运行的是一个较老版本的CiscoIOS,我们认为可能存在有ARPSpoof(ARP欺骗)漏洞。果然,ARPSpoof哄骗该交换机,让它相信我们的攻击主机就是所有该局域网段上所有通信的目标主机。本质上来说,这导致我们的攻击主机成为了一台交换机,所有的网络通讯都要经过我们的主机。

通过留意网络数据,我们注意到,所有的网络用户都使用NTLM(WindowsNT与2000的默认加密)进行认证。我们发回经过修改的数据包到终端用户的工作站上,告诉他们“我们不明白NTLM,请发送未经加密的密码”。可惜,这招骗术并没有生效。而“请发送使用LM认证的密码给我们”却成功了。LM使用一种较弱的加密认证,破解的可能较大。我们收集了这些加密的密码,留着日后破解。缓慢而有系统的,我们在不断拓宽我们的优先级提升之路,而确信我们的行动将得到奖励的自信心也在不断增长。

加油以及本地admin权限

早餐吃起来略有点甜,然后我们注意到通过整晚口令破解器的工作,我们已经破解了其他的本地管理权限帐户密码,而该密码后来被证明是一个管理局域网上所有机器的通用密码。这大大拓宽了我们所需的获取管理员级别权限的道路。不过首先我们需要确认,是否有一个按键记录器能逃过我们客户反病毒方案的监查(在本例中,该反病毒方案来自于一个行业中非常卓越的企业安全公司)。

基于我们对反病毒制造商网站,多个按键记录器网站,以及多个黑客论坛的研究,我们选择了一个不曾大范围流行,高度隐蔽的键盘记录器。我们通过RDP连接到我们的目标工作站上,通过手指交叉,我们将记录器放到一台非技术人员的电脑上,这样万一产生警报信息,我们可以将目标指到此人身上,从而混淆视听。当键盘记录器开始报告用户的活动时——我们知道,我们只剩下最后一步了。等到了午餐时间(这样可以避免被人发现),我们又在另外4台工作站上放进了键盘记录器;这4台机器分别属于一个ERP管理员,一个数据库管理员,以及一个AIX管理员。一个小时之内,每个用户已经分别作为自己所管理系统的管理员进行了登录,于是我们的键盘记录器向我们报告了他们的密码。在使用我们新找到的管理权限登陆进入系统后,我们已经拥有完全的能力危及的安全,包括它的所有系统,以及其中保存的数据。我们已经拥有完全的,无拘无束的权限,可以获得客户保存在数据库中的所有高度机密信息,包括姓名,地址,社会保险号,薪水信息——信息之丰富,足可以让别有用心的人以无数的方法去利用它。

当场被抓

为了测试那些已经被我们危及安全的个人帐号的威力,我们使用我们的本地管理权限继续登录在他们的机器上。结果,我们的活动,包括我们的按键记录器迅速被人发现了,其速度之快令我们印象深刻。管理员颇有见地,他运行了一个软件来获取该组合中所有运行进程的视图,以及一个监控网络连接的软件(比如,Vision和netstat)。当他注意到他的机器连到我们的IP上时,我们被当场擒获。

这次ERP安全的真实练习说明了,那些对软件本身,对数据库,以及局域子网加密的重大努力,会如何被企业局域网控制环境中一个表面上小小的弱点彻底推翻。技术控制的强力集合(本例中,是ERP软件整体的高安全级别)会被一个内部控制的软弱集合而相对迅速的破坏,本例中,没有对“jimmy”账户强迫执行强力口令的疏忽,造成了一系列扩大的问题,最终居然导致企业重要数据被暴露的危险。我们的ARP欺骗奏效,也导致了一个整体系统的安全受到威胁。

这很重要,要注意到我们也实施了程序级别的渗透测试,以及对重要控制的深度审核,包括数据隔离区域,数据库所有者,认证,授权,以及修改管理。这些努力提供给管理层一个高级担保——关键的安全目标已经达到。

根据我们对管理层所递交的“发现”,该政府机构将那台拥有“jimmy”账户的NT机器断网,并在一个相似的Windows2000环境中有效地强制执行安全策略,更新了他们所有电脑中的系统和反病毒引擎,以检测按键记录器,还更新了所有Cisco设备上的IOS,以避免再受到ARP欺骗攻击。

作为我们所用方法和所获发现正式报告的结果,组织的管理层获得了一个保证,那就是因部署该ERP系统而暴露敏感雇员信息的风险已经被减轻到了一个可接受的低水平上。注意到这次练习的价值,以及面向最佳实践的进步,客户已经计划在所有未来的项目阶段中安排安全评估活动。(zdnet)


软件开发项目需求管理简述如何确保应用软件的成功实施
分布式网络化制造系统构想有中国特色的HRM系统制度设计
分布式任务域工作流系统的设计和实现如何挑选视频点播(VOD)软件
掀开幕布看PDM:产品数据管理系统的概念与应用合理选择财务管理软件项目实施方法
合肥OA系统实施的“成本控制”路线流程图企业战略执行系统有效运行应注意的几个核心问题
合肥OA与审计管理软件交叉融合迎来高峰期小软件项目开发的管理
SaaS模式孕育内部软件产品之外的替代方案解析合肥OA系统中控制职能的运用与实施
企业信息化:ERP中基于协同制造网格的高级计划系统基于SOA&Web的PDM系统异地协同研究
信息发布:广州名易软件有限公司 http://www.myidp.net
  • 名易软件销售服务
  • 名易软件销售服务
  • 名易软件技术服务

  • 实战ERP系统攻击