第70篇:某银行外网打点到核心业务区红队评估项目复盘

admin 2023年7月24日13:16:39评论73 views字数 4812阅读16分2秒阅读模式

第70篇:某银行外网打点到核心业务区红队评估项目复盘

 Part1 前言 

大家好,我是ABC_123。前一阵子都在写APT技战术分析的文章,好久没写红队评估方面的文章了,本期分享一篇ABC_123曾经做过的针对一家银行的红队评估项目,持续时间两周,难度非常大,但是最终打到了银行核心业务区,今天就复盘一下全过程。

建议大家把公众号“希潭实验室”设为星标,否则可能就看不到啦!因为公众号现在只对常读和星标的公众号才能展示大图推送。操作方法:点击右上角的【...】,然后点击【设为星标】即可。

第70篇:某银行外网打点到核心业务区红队评估项目复盘


 Part2 具体过程复盘 

首先放出一张ABC_123绘制的关于此次红队评估项目的流程图,接下来依据此流程图,详细讲解整个红队评估过程。

第70篇:某银行外网打点到核心业务区红队评估项目复盘


  • 外网打点过程

一般来讲,针对银行项目,如果不用0day是很难打穿的。本次红队评估项目,在外网打点方面,付出的代价是用了3个0day:1、某学堂java反序列化代码执行漏洞;2、某微移动平台远程代码执行漏洞;3、银行某客服系统表达式注入漏洞。

第70篇:某银行外网打点到核心业务区红队评估项目复盘


 1   外网某云学堂0day漏洞

首先在外网发现了一个某云学堂的系统,通过github找到了该系统很旧的代码,审计出一个未授权的Java反序列化漏洞,通过这个漏洞获取了外网的第1个webshell。从中获取了一些有价值的信息,比如员工的中文姓名列表、工号列表等,这些信息对我们后期渗透很有帮助。可惜这个系统放在阿里云上,打内网意义不大,也没有发现阿里云AK/SK访问秘钥。


 2   某微OA系统0day漏洞

利用此系统的代码执行漏洞获取了第2个webshell,绕waf方面可以用unicode编码+超大数据包掺杂的方式绕过。本机Iptables配置如下,由于是银行的生产系统,不能也不允许修改iptables。在内网横向过程中,阻力非常大,网络隔离做得非常好,对于内网其它ip,基本上是只能ping通,但是端口不通,因此只能重新进行外网打点

iptables -F INPUT

iptables -A INPUT -p ICMP -j ACCEPT

iptables -A INPUT -s 10.1.x.151 -j ACCEPT

iptables -A INPUT -s 10.1.x.154 -j ACCEPT

iptables -A INPUT -s 10.1.x.128/26 -j DROP

iptables -P INPUT ACCEPT


 3   银行客服系统表达式注入0day漏洞

通过在银行测试区获取到的java代码,审计发现一个表达式注入漏洞。顶着白天巨大的防守强度去搞,肯定是不行的,最终选择了晚上8点钟开始进行webshell获取工作。在绕过waf方面,通过unicode编码+超大包数据+分块传输,这几种方法混着用就可以绕过waf了。

获取这个webshell之后,直接可以获取服务器的root权限,这台服务器的网络隔离方面做得很有缺陷,而且是多网卡机器,可以通很多网段。在这个webshell上面,发现了将近10套业务系统的代码,应该是后期业务下线,代码却没有及时删除。提取这些系统源码中的配置文件,将数据库加密密码解密,最终获取了大量的Oracle数据库权限,主要分布在10.1.x.1/24网段,这是核心业务网段。在内网简单地探测,还发现有很多weblogic的服务器,继续获取到了EPay电子支付、HIS业务系统、银企对账签约、P2BPlat前置、RA服务器等系统的权限。及时跟客户沟通之后,客户觉得危害太大,不建议继续内网横向。

第70篇:某银行外网打点到核心业务区红队评估项目复盘


  • 外网其它漏洞

除了通过0day漏洞打点,在外网还发现了很多Web应用层面的漏洞,其中包括SQL注入漏洞、短信炸弹、越权下载、遍历交易记录、爆破弱口令等等,通过这些漏洞获取一些敏感信息,对后期渗透提供很大帮助。接下来我挑选几个比较有代表性的漏洞讲一讲。

第70篇:某银行外网打点到核心业务区红队评估项目复盘


 1   培训系统上传html文件漏洞

如下图所示,上传扩展名做了校验,但是仍然可以直接上传html文件。如果在html文件里插入XSS攻击代码,就相当于变相创造一个存储型XSS漏洞,也可以上传一个钓鱼页面,用作水坑攻击。以下本机虚拟机中的截图,是效果图。

第70篇:某银行外网打点到核心业务区红队评估项目复盘


 2   业务逻辑漏洞

原报告的截图就不贴出来了,因为逻辑漏洞的截图打码是很容易遗漏的。我大体看了一下,企业网银和个人网银总共有6个逻辑漏洞、越权遍历漏洞,包括交易记录平行越权访问、还款计划平行越权访问、查询账单平行越权访问、交易账单平行越权访问等。

所有的越权遍历漏洞,触发点基本上都集中在acctNumbr=orderFlowNo=payAccount=这几个参数上,对于业务系统进行抓包,遇到这两个参数就进行修改,例如对于acctNumbr=68220004122000000(该数字是我随意生成的),可以把中间的4位数字进行修改,可以造成越权查看交易记录、越权查看他人的贷款信息等等。


 3   DOM型XSS漏洞

由于DOM型XSS其特殊机制,可以绕过所有的waf拦截。

https://www.xxx.com/P2BPlat/include/resources/reload.html#vbscript:msgbox(1)

第70篇:某银行外网打点到核心业务区红队评估项目复盘


 4   任意文件读取漏洞

这是外网的一个系统,存在任意文件读取漏洞,绕过waf的方法如下:

第70篇:某银行外网打点到核心业务区红队评估项目复盘


 5   其它Web应用漏洞

发现的其它的Web应用漏洞如下:

1.  几处SQL注入漏洞,但都是Mysql数据库,而且非root权限,进一步利用非常困难,但是获取到的一些员工的工号、邮箱列表还是很有用的。

2.  短信炸弹漏洞。

3.  内网ip泄露漏洞,在后渗透中被用来定位内网ip段。

4.  结合前面漏洞成果的信息收集,爆破枚举了协同OA的很多弱口令。登录之后,可以直接点开Web邮箱,获取邮箱权限,在邮件中可以找到个人电子证书,并且登录VPN,但是获取到的几个VPN的权限非常有限,无法开展内网横向。


  • 社会工程学攻击

如下图所示,以下是社会工程学攻击过程,总体来说,不太成功,因为该银行严格限制了出网规则,由于不出网,针对客服系统的XSS钓鱼及针对银行员工的邮件钓鱼均没有成功。

第70篇:某银行外网打点到核心业务区红队评估项目复盘


 1   在线客服系统XSS尝试获取Cookie

个人网上银行在线客服系统存在跨站脚本攻击XSS漏洞,可用于网络钓鱼、窃取Cookie等。接下来构造带有恶意代码的图片链接通过网银聊天工具发送给客户,验证确认客服已经点击查看图片。最终由于不出网,所以无法获取Cookie。

第70篇:某银行外网打点到核心业务区红队评估项目复盘


由于报告原图较为敏感,不能贴出来。为了给大家演示,以下是我参考原始报告,用两个qq互相模拟的社工客服的聊天过程,给大家一些参考。

第70篇:某银行外网打点到核心业务区红队评估项目复盘


 2   邮箱仿冒发信人钓鱼

通过对邮件系统的检测,发现邮件系统存在伪造任意源邮箱地址漏洞,结合Kali Linux的swaks工具可以仿冒任意管理员身份发送钓鱼邮件,并且可以绕过防钓鱼邮件网关。此次红队评估过程,成功假冒银行信息部管理员([email protected])身份发送了钓鱼邮件,但是最后居然一个都没有上线的,后来了解到,员工登录邮箱环境不通外网。

swaks工具的大致命令如下:

swaks --to [email protected] -f [email protected] --server mail.xxbank.com.cn -p 2525 -au--ehlo xxbank.com.cn --h-From "XXX银行信息部<[email protected]>" --header "Subject:XXX银行信息部" --body "hello,您的邮件我已收到."

第70篇:某银行外网打点到核心业务区红队评估项目复盘


  • 物理渗透阶段

在得到客户的授权许可情况下,和几个同事一起开车去总行周边转了好几圈,强行进入总行内部看起来可能性不大,于是把重心放在wifi热点上。经过探测,发现总共有3个wifi热点,分别是BANKOFXXXXXXBankXbank,发现还是存在很大的安全问题的。

第70篇:某银行外网打点到核心业务区红队评估项目复盘


1.  BANKOFXXX这个是提供给普通用户访客的热点,使用手机号+短线验证码连上之后,可以访问互联网区,也就是说可以上网。但是无意中发现了存在逻辑漏洞,如果连上这个热点之后,再切换到只有内部人员才能用的热点XXXBank,随后不需要二次用户名密码认证,即可访问银行的测试区。

2.  Xbank的密码已经被万能钥匙收录,该热点可以直接访问互联网区及内网测试区域。随后将平板电脑连上wifi,接入银行测试区,然后反弹出一个socks5代理,交给后面同事们对内网测试区进行横向渗透。非常遗憾的是,测试区放置的都是一些测试系统,网络隔离非常严格,测试区与生产区完全隔离,无法连到总行的办公网或者业务网。但是在测试区系统上存在一些银行业务系统的源代码,这是最大收获。

接下来对银行测试区开展了横向渗透,主要发现了以下这些漏洞,可以看出,测试区漏洞很多。但是由于银行的网络隔离非常严格,所以测试区这些漏洞,对生产系统没有危害


 1  多个MS17-010漏洞

在测试区进行445端口的漏洞扫描,存在多个MS17-010漏洞,通过原版方程式工具包拿到2台服务器权限。

第70篇:某银行外网打点到核心业务区红队评估项目复盘


如下图所示,后门安装成功。

第70篇:某银行外网打点到核心业务区红队评估项目复盘


 2   禅道系统弱口令

测试区还有一个禅道系统,使用弱口令admin:123456即可登录。在后台可以查看项目管理信息,但是里面应该都是测试数据,此外还可以找到大量的测试人员、开发人员、项目经理等信息,类似于通讯录,这些用户名列表有可能是真的,对于了解银行的用户名规则很有帮助。

第70篇:某银行外网打点到核心业务区红队评估项目复盘


 3   Jboss反序列化漏洞

发现测试区域一处Web网站,存在Jboss 反序列化漏洞,成功获取webshell,提权获得10.1.x.100权限,经过分析,这些bak文件都是测试数据。

第70篇:某银行外网打点到核心业务区红队评估项目复盘


  • SSRF漏洞控制50多个业务关停

这是第2次红队评估项目中,通过代码审计发现的SSRF漏洞,详细过程在我之前的文章《红队第3篇:银行Java站SSRF"组合洞"打法造成的严重危害》中有介绍,这里不过多叙述

第70篇:某银行外网打点到核心业务区红队评估项目复盘


该SSRF漏洞可以直接获取网页返回数据包,但是代码中限制了它只能发起GET请求,然而还是可以结合其它系统的未授权访问漏洞,可控制51个银行业务暂停和执行,危害非常大。

第70篇:某银行外网打点到核心业务区红队评估项目复盘


为了给客户更好地展示此SSRF漏洞的危害,我用java swing写了一个针对该漏洞的SSRF代理工具,如下图所示,输入内网业务地址,可以直接访问,并通过浏览器显示出来页面内容。

第70篇:某银行外网打点到核心业务区红队评估项目复盘


 Part3 总结 

1.  银行红队评估项目一般难度都非常大,多数都得靠0day,靠代码审计,靠供应链的漏洞挖掘打进去。

2.  外网的那些无法拿权限的漏洞,在后渗透阶段,会提供很好的信息支持。sql注入、弱口令可以帮助红队人员了解业务系统用户名的命名方式,内网ip地址泄露在后渗透阶段可以用于快速定位ip段。

3.  银行的测试区里面的一些测试系统的源代码,对于红队工作可以提供很大帮助。

4.  Java的SSRF漏洞很多只能发GET请求,但是结合内网的未授权访问漏洞,还是能造成很大危害。

5.  物理渗透的Wifi热点的安全问题也很常见,有时候装一个万能钥匙之类的APP软件,就能起到很大效果。

6.  本次案例为什么去打放在云上的系统,因为有些云上系统的代码中,会有阿里云、腾讯云的AK/SK等,如果碰到一个,一下子拿下很多服务器权限。

7.  至于为什么客户系统的webshell网络隔离没有做好,可以联通那么多内网网段,而且上面竟然还留有10几套系统的源代码。后来了解到,这10几个系统都下线了之后,这个服务器就疏于管理了。

8.  第3次红队评估项目,漏洞就非常少了,从而转向对公众号、小程序、手机APP、供应链的打点,后期我再继续写文章叙述,敬请期待。


第70篇:某银行外网打点到核心业务区红队评估项目复盘

公众号专注于网络安全技术分享,包括APT事件分析、红队攻防、蓝队分析、渗透测试、代码审计等,每周一篇,99%原创,敬请关注。

Contact me: 0day123abc#gmail.com(replace # with @)


原文始发于微信公众号(希潭实验室):第70篇:某银行外网打点到核心业务区红队评估项目复盘

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2023年7月24日13:16:39
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   第70篇:某银行外网打点到核心业务区红队评估项目复盘https://cn-sec.com/archives/1899978.html

发表评论

匿名网友 填写信息