安全矩阵

 找回密码
 立即注册
搜索
查看: 800|回复: 0

NPS+Proxifier搭建socks5进行内网穿透

[复制链接]

179

主题

179

帖子

630

积分

高级会员

Rank: 4

积分
630
发表于 2023-3-22 21:05:10 | 显示全部楼层 |阅读模式
原文链接:NPS+Proxifier搭建socks5进行内网穿透
声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由用户承担全部法律及连带责任,文章作者不承担任何法律及连带责任。
在渗透过程中,我们需要快速实现内网穿透,从而绕过网络访问限制,直接从外网来访问内网。

0x01 关于代理

正向代理,服务器不出网。如拿下的web服务器,我们在上面ping baidu.com是ping不通的,即服务器不出网,此时需要使用正向代理工具。我们主动去连接服务器。
反向代理,服务器出网。如拿下的web服务器,我们在上面ping baidu.com是能ping通的,即服务器能出网,此时可以使用反向代理工具。让被拿下的服务器主动连接我们。
socks代理
代理ip分为HTTP代理,HTTPS代理,Socks代理。采用SOCKS协议(一种互联网协议)的代理服务器就是SOCKS服务器,socks代理可分为socks4和socks5两种,socks4只支持TCP协议,而socks5支持TCP/UDP协议,以及各种身份验证机制等。
优点
HTTP代理只能处理网页,但SOCKS5可以处理任何类型的流量
提高速度和性能
ps:nps不会被杀软查杀

0x02 Hetty特征
公网vps
攻击环境:处于公司内网,win10
被攻击环境:ubuntu2020(nat、vmnet1),win7(vmnet1), win2012(vmnet1)
可以将vmnet在真实机中禁用,这样就访问不到虚拟机中的vmnet1网络


如下情况,我们通过web打点的方式拿下了一台网路边界服务器,通过测试发现该服务器能出网。其有两个网段。其中192.168.10.x网段的机器是不出网的,我们不能够直接访问。



此时我们通过nps工具搭建socks5隧道。vps上开启nps服务端,被拿下的服务器上用nps客户端主动连接nps服务端。即也叫反向代理。

0x03 NPS

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

NPS工具由NPS服务器端和NPS客户端组成,我们一般将NPS服务器端放在具有公网IP的VPS上,并且会开启一个端口等待NPS的客户端进行连接。

NPS的客户端一般会被放在我们已经拿下的内网主机上,我们会指定NPS服务器的客户端需要连接的NPS服务器的IP和端口,这样,我们就成功的将NPS的服务器端和NPS的客户端连接了起来。
  1. 项目地址——> https://github.com/ehang-io/nps
复制代码

服务端配置
使用文档 ——> Document

1. 查看服务器版本
arch
如下为64位


2. 下载对应的版本



3. 上传到服务器进行解压
  1. tar -xvzf linux_amd64_server.tar.gz
复制代码


解压后会多在当前目录多出3个个文件 nps、web、conf

4. 安装nps

  1. ./nps install       #linux
  2. nps.exe install     #windows
复制代码


5. 查看配置文件
  1. /etc/nps/conf/nps.conf
复制代码
注意不是当前路径下的nps,是/etc/下的nps



其中一般需要注意的配置内容如下

  1. bridge_port=8024      #NPS的服务端和客户端进行连接的默认端口

  2. web_username=admin    #web界面管理账号
  3. web_password=123      #web界面管理密码
  4. web_port = 8080       #web管理端口,通过访问该端口可以访问NPS后台
复制代码
ps:
NPS的web页面默认端口是8080,默认用户名密码是admin/123。最好进行修改
NPS的服务端和客户端进行连接的默认端口是8024,这个端口可以进行修改,修改之后,在连接时注意使用修改后的端口
服务端详细配置文件 ——> https://ehang-io.github.io/nps/#/server_config

6. 启动nps
  1. nps start/stop     #启动或停止
复制代码

7. 登录nps后台管理界面


8. 新增客户端

进入如下,可以默认不填,点击新增

9. 为客户端添加socks5隧道

点击隧道进入,在点击新增



配置,这里服务端的端口就是待会我们攻击机去连接代理服务器的端口就,设置为9023



客户端配置
服务端叫nps,客户端叫npc

linux客户端启动

1.复制启动命令,点击客户端—符号—复制



2. 客户端启动连接

将客户端文件复制到被拿下的机器中



无需配置,直接执行复制的命令


此时我们在服务端,可看到已经上线



此时服务端与客户端就建立起来隧道



将npc注册到系统服务

上面直接启动连接,会一直显示一个连接的命令,容易被发现。现在将其注册到系统服务,做到更加隐蔽。其系统关机重启后也会自动启动服务进行连接服务端


对于linux、darwin

  1. 注册:sudo ./npc install 其他参数(例如-server=xx -vkey=xx或者-config=xxx)
  2. 启动:sudo npc start
  3. 停止:sudo npc stop
复制代码


如果需要更换命令内容需要先卸载./npc uninstall,再重新注册





windows客户端配置与启动

对于windows,使用管理员身份运行cmd。也是以注册服务的方式启动

  1. 注册:npc.exe install 其他参数(例如-server=xx -vkey=xx或者-config=xxx)
  2. 启动:npc.exe start
  3. 停止:npc.exe stop
复制代码


如果需要更换命令内容需要先卸载npc.exe uninstall,再重新注册




windows中如果不是管理员则不能注册到系统服务中,此时直接启动
  1. npc.exe -server=xxxxxxx
复制代码


0x04 Proxifiers使用

Proxifier是一款功能非常强大的socks5客户端,可以让不支持通过代理服务器工作的网络程序能通过HTTPS或SOCKS代理或代理链。

下载Proxifier 4.07:

  1. https://www.nite07.com/download/index.html?f=Proxifier_4.11.7z
复制代码


打开的时候发现窗口乱的,如下这样



将窗口进行重置



1. 添加代理服务器

菜单栏点击Proxy Servers图标—add,这里添加socks代理,填写socks服务端的ip和端口



2. 设置代理规则

单击Proxification Rules图标—add,这里设置如果访问192.168.10.*这个ip段则走socks5代理



勾选我们添加的代理规则,默认的代理规勾选为Direct!!!记得


这样我们就能直接访问目标内网的机器,像在本地一样开burp做渗透测试



可以在本地做端口扫描,sqlmap注入等,只要流量是发往192.168.10.0/24这个网段的都会走socks5代理,Proxifier流量如下



访问内网同网段机器的远程桌面





0x05 链接获取

文章来源:CSDN(山山而川)


原文链接:https://blog.csdn.net/qq_44159028/article/details/122719330


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|安全矩阵

GMT+8, 2024-11-28 20:49 , Processed in 0.013770 second(s), 19 queries .

Powered by Discuz! X4.0

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表