您现在的位置是:首页 > 密码破解

内网穿透及端口分享大合集

作者:果E安全网时间:2020-10-24 03:19:33分类:密码破解

简介0x00序言近期在学习培训内网穿透及端口分享,这儿就简易汇总一下一部分专用工具及指令,若有错误的地区,请多多指教。0x01代理学习培训内网穿透,我认为第一步必须先了解一下什么叫顺向代理和反方向代理。顺向代

0x00 序言

近期在学习培训内网穿透及端口分享,这儿就简易汇总一下一部分专用工具及指令,若有错误的地区,请多多指教。

0x01 代理

学习培训内网穿透,我认为第一步必须先了解一下什么叫顺向代理和反方向代理。

顺向代理

顺向代理就是手机客户端代理,代理手机客户端,服务器端不清楚具体进行要求的手机客户端。

例如vpn,中国不可以立即访问谷歌,但是代理网络服务器能够浏览,手机客户端能够将数据信息分享到代理网络服务器,再由代理网络服务器发送给Google获得到数据信息,再回到手机客户端。这儿代理的是手机客户端。

Client --> Proxy<-->Server

1.png

反方向代理

反方向代理就是服务端代理,代理网络服务器,手机客户端不清楚具体出示服务项目的网络服务器。

例如nginx,手机客户端浏览要想网络服务器的8080端口,但是网络服务器的8080端口不对外开放开发设计,这儿根据nginx代理端口,将全部浏览80端口的总流量都分享到8080端口,那样手机客户端只必须浏览80端口就等同于浏览了网络服务器的8080端口。这儿代理的是网络服务器。

Client<-->Proxy <-- Server

2.png

0x02 Lcx

内部网IP:192.168.183.168

公网IP:192.168.183.181

端口分享

内部网设备上运行命令:lcx.exe –slave 公网IP 端口 内部网IP 端口

将内部网的3389端口分享到公网的6666端口

lcx.exe -slave 192.168.183.181 6666 192.168.183.168 3389

lcx.exe -slave 192.168.183.181 6666 127.0.0.1 3389

3.png

公网设备上运行命令:lcx.exe -listen 监视端口 联接端口

将在6666端口接受到的数据信息分享到2222端口

lcx.exe -listen 6666 2222

4.png

应用指令mstsc /v:127.0.0.1:2222就可以联接到内部网3389端口

5.png

端口投射

假如内部网设备服务器防火墙严禁3389出站,能够应用tran指令将3389端口投射到别的端口上

内部网设备上运行命令:lcx.exe -tran 投射端口 联接IP 联接端口

lcx.exe -tran 66 192.168.183.168 3389

6.png

由于试验自然环境是内部网因此 立即联接66端口就可以浏览3389端口,公网还必须端口分享

7.png

0x03 EarthWorm

服务平台详细地址:http://rootkiter.com/EarthWorm/

EW 是一套携带式的互联网透过专用工具,具备 SOCKS v5服务项目搭建和端口分享两大关键作用,可在社会网络自然环境下进行互联网透过。工具箱中出示了多种多样可执行程序,适用Linux、Windows、MacOS、Arm-Linux 多种多样服务平台。

该专用工具现有 6 种指令文件格式(ssocksd、rcsocks、rssocks、lcx_slave、lcx_listen、lcx_tran)。

在其中SOCKS5服务项目的关键逻辑性适用由 ssocksd 和 rssocks 出示,各自相匹配顺向与反方向socks代理。

ssocksd 用于打开Socks5代理服务项目

rssocks 当地开启Socks5服务项目,并反跳到另一IP地址

rcsocks 接受反跳回来的Socks5服务项目,并转为另一端口

其他的 lcx 链接情况用以连通测试主机同 socks 集群服务器的通道。

lcx 类型管路:

lcx_slave,lcx_listen:端口分享

lcx_tran:端口投射

lcx_slave 该管路一侧根据反跳方法联接代理要求方,另一侧联接代理出示服务器。

lcx_tran 该管路,根据监视当地端口接受代理要求,并转交到代理出示服务器。

lcx_listen 该管路,根据监视当地端口读取数据,并将其转交到总体目标互联网回连的代理出示服务器。

根据组成lcx类型管路的特点,能够完成双层内部网自然环境下的网站渗透测试。

专用工具主要参数表明: -l 对外开放特定端口监视

-d 特定分享或反跳的主机地址

-e 特定分享或反跳的服务器端口

-f 特定联接或投射的主机地址

-g 特定联接或投射的服务器端口

-t 设定请求超时時间

一般网络空间

网络空间拓扑结构:

8.png

顺向socks5

当总体目标互联网(Server)界限存有公网IP且可随意开监视端口时

ew_for_Win.exe -s ssocksd -l 1080

在Server上根据该指令打开 1080 端口的 socks 代理

9.png

别的服务器能够根据设定代理为总体目标IP:1080加上代理,Windows能够应用SocksCap64,我这里是Kali立即改动/etc/proxychains.conf设定代理为总体目标互联网,应用proxychains指令扫描仪3389端口

10.png

11.png

数据流分析向:Kali -> 1080 -> Server

反方向socks5

当总体目标互联网界限(Client)不会有公网 IP,必须根据反跳方法建立socks代理

ew_for_Win.exe -s rcsocks -l 1080 -e 8888

在公网服务器中加上接转隧道施工,将1080接到的代理要求转交到反连8888端口的服务器

12.png

在Client服务器上打开socks代理,并反跳到公网的8888端口

ew_for_Win.exe -s rssocks -d 10.19.11.138 -e 8888

13.png

Kali根据浏览公网服务器的1080端口出示的socks5代理服务项目来浏览总体目标内部网

14.png

15.png

数据流分析向:Kali -> 1080 -> Server -> 8888 | 服务器防火墙 | <- Client

二级网络空间

自然环境一

网络空间拓扑结构:

16.png

在A服务器上打开端口为8888的socks代理

ew_for_Win.exe -s ssocksd -l 8888

在B服务器上把1080端口接到的socks代理要求发送给A服务器的8888端口

ew_for_Win.exe -s lcx_tran -l 1080 -f 192.168.44.128 -g 8888

17.png

Kali根据浏览B服务器的1080端口出示的socks5代理服务项目来浏览服务器A

18.png

数据流分析向:Kali -> 1080 -> Server B -> 8888 -> Server A

自然环境二

网络空间拓扑结构:

19.png

在VPS上加上接转隧道施工,将1080接到的代理要求转交到反连8888端口的服务器

ew_for_Win.exe -s lcx_listen -l 1080 -e 8888

20.png

在A服务器上打开端口为9999的socks代理

ew_for_Win.exe -s ssocksd -l 9999

21.png

在B服务器上运用专用工具的lcx_slave方法,连通服务器A和VPS中间的通信隧道施工

当代理取得成功时,回到VPS能够见到有rssocks cmd_socket OK! 的提醒

ew_for_Win.exe -s lcx_slave -d 10.19.11.138 -e 8888 -f 192.168.44.128 -g 9999

22.png

Kali根据浏览VPS的1080端口出示的socks5代理服务项目来浏览Server A

23.png

数据流分析向:Kali -> 1080 -> VPS -> 8888 | 服务器防火墙 | -> B -> 9999 -> A

0x04 SSH隧道施工

ssh主要参数详细说明:

-C Enable compression 缩小传输数据

-q Quiet mode. 清静方式

-T Disable pseudo-tty allocation. 不占有 shell

-f Requests ssh to go to background just before command execution. 后台程序,并强烈推荐再加上 -n 主要参数

{ X}  -N Do not execute a remote command. 不执行远程命令,端口转发就用它

  -L port:host:hostport 将本地机(客户机)的某个端口转发到远端指定机器的指定端口.

  -R port:host:hostport 将远程主机(服务器)的某个端口转发到本地端指定机器的指定端口.

  -D port 指定一个本地机器动态的应用程序端口转发.

  -g port 允许远程主机连接到建立的转发的端口,如果不加这个参数,只允许本地主机建立连接

  SSH本地转发

  语法格式:

  ssh -L [local_bind_addr:]local_port:remote:remote_port middle_host

  程管理服务器上的mysql,mysql不能直接root远程登陆。这时候就可以通过本地转发,通过ssh将服务器的3306端口转发到1234端口。

  ssh -CfNg -L 2222:127.0.0.1:3306 root@139.196.xx.xx

  工作原理:在本地指定一个由ssh监听的转发端口2222,将远程主机的3306端口(127.0.0.1:3306)映射到本地的2222端口,当有主机连接本地映射的2222端口时,本地ssh就将此端口的数据包转发给中间主机VPS,然后VPS再与远程主机端口(127.0.0.1:3306)通信。

  数据流向:Kali -> 2222 -> VPS -> 127.0.0.1:3306

  

24.png

  SSH远程转发

  语法格式:

  ssh -R [bind_addr:]remote1_port:host:port remote1

  假设kali开了一个80端口的web服务,外网无法访问,使用远程转发,将kali的80端口转发到外网的其他端口,这时候访问外网的端口,就访问到了内网的端口。

  

25.png

  ssh -CfNg -R 4444:127.0.0.1:80 root@192.168.183.195

  此时在192.168.183.195这台主机上访问127.0.0.1:4444端口即可访问到kali的80端口

  工作原理:kali在请求外网主机的sshd服务,在外网主机上建立一个套接字监听端口(4444),它是kali的80端口的映射,当有主机连接外网的4444端口时,连接的数据全部转发给kali,再由kali去访问127.0.0.1:80。

  

26.png

  这里要注意一点,远程端口转发是由远程主机上的sshd服务控制的,默认配置情况下,sshd服务只允许本地开启的远程转发端口(4444)绑定在环回地址(127.0.0.1)上,即使显式指定了bind_addr也无法覆盖。也就是这里访问127.0.0.1:4444端口可以访问成功,访问192.168.183.195:4444却不能访问成功。

  要允许本地的远程转发端口绑定在非环回地址上,需要在外网主机的sshd配置文件中启用"GatewayPorts"项,它的默认值为no,这里将它改为yes。然后重新远程转发一下即可用外网地址访问。

  

27.png

  SSH动态转发

  本地或远程转发端口和目标端口所代表的应用层协议是一对一的关系,不同的服务就要建立不同的端口,工作很是繁琐,而动态转发只需绑定一个本地端口,而目标端口是根据你发起的请求决定的,比如请求为445端口,通过ssh转发的请求也是445端口。

  语法格式:

  ssh -D [bind_addr:]port remote

  这里举一个最简单的列子:翻墙。国内正常情况下上不了Google,我们可以通过将流量转发到国外的vps上这样就可以正常访问了。

  在本地执行以下命令,并查看建立连接情况

  ssh -Nfg -D 3333 root@45.77.xx.xx

  连接建立成功,设置浏览器到本地主机的3333端口

  

28.png

  然后就可以访问Google了

  

  查看原文:https://xz.aliyun.com/t/6966#toc-22

  

  上一篇调查针对WordPress网站的攻击和技术下一篇Smominru僵尸网络发布受矿工感染的Taylor Swi

郑重声明:

果E安全网所有活动均为互联网所得,如有侵权请联系本站删除处理,转载请注明本站地址。

我来说两句