nps内网穿透工具使用
题记
昨天和红队大哥讨论了一下他的渗透经验,他说现在内网用nps比较多,今天来玩一下。大部分是其他文章的复现,记录一下,方便日后个人翻阅。
一些其他细节
前些天抽到一台3个月的vps,出了一些问题,换了个Debian的系统,搞得我不要不要的,在大哥指点下换了个centos,真方便啊,先安装个cs,yum install -y java*。Java环境就好了,然后cs就好使了。连不上的大概率是防火墙没关,记得关上。然后下面开始nps玩耍。
准备工作
一台外网ip的vps,一台内网靶场的win8虚拟机,ip:192.16.7.132,我原来的目的是把这个靶场通过vps转发出来,后来搞到下午才玩通透,通过对比成功对比出差别,他的优势是把代理的各种功能集成了,比如单个端口转发,http代理,sockets代理等,一个端口对应一个代理功能都行。Frp是一个代理要单独设置。
Nps下载地址:http://github.com/ehang-io/nps/releases/tag/v0.26.10
服务端配置
这次实验为同时开启http代理、sockets代理、端口转发。测试各个功能。
服务端总的来说就是在你的vps上开启服务端的服务,他会有一个web端让你配置各种你想要的代理模式。默认web控制端端口为8080,默认账户密码为admin与123,可在conf文件夹里nps.conf文件里看到。在#web下面可以看到,而8024端口为客户端对服务端发送连接请求的端口,需要在客户端配置文件配置,只有先连上此端口,才可以使用代理。
在有外网的vps上执行以下命令。
wget https://github.com/ehang-io/nps/releases/download/v0.26.10/linux_amd64_server.tar.gz
tar -zxf linux_amd64_server.tar.gz
./nps install
nps start
成功开启后在web端访问vpsip:8080,进入npsweb控制端。
然后点击客户端,新建一个客户端的链接方式。
点击隧道,添加各种自己想设置的代理。
http代理
在1903端口配置http代理。
Sockets代理
Sockets代理设为1998端口。
端口转发
把内网靶机的8006端口(是个网站)转发到vps的8889端口,这样就可以在外网直接访问这个网站了。
客户端连接
那个靶机是我开的虚拟机,我利用蚁剑把nps的客户端上传到靶机上的。
客户端配置文件设置,一定要指向你的vps。
靶机132上运行
npc.exe -server=23.xx.xx.120:8024 -vkey=123456
可在web端点加号直接把客户端命令复制过来。
成功连接。
结果
服务端和客户端都配置好了,剩下就是你想连哪个就连哪个了。代理工具我用的proxifier,就不详细介绍了。
http端口:1903
proxifier代理配置http,端口写vps的ip与1903端口,账号密码认证为我一开始设的admin 、123456。
sockets端口:1998
proxifier代理配置sockets,端口写vps的ip与1998端口,账号密码认证为我一开始设的admin 、123456。
端口转发:8889
直接访问vps:8889就是访问的内网8006端口。
小tip
这里就不挂图了,当初想搞这个是因为有个客户需要扫一个内网的网站,让我们远程支持一下。我们打算把网站nps穿透出来,在外网拿xray进行扫描。这里说一下,因为bp联动xray是靠被动抓包转发到本地7777端口,然后xray在扫。这里解决方式是bp与xray同时挂代理。
参考文章
NPS使用:http://blog.csdn.net/koloper/article/details/110087618
自己摸坑