1 前言
谈到内网转发,在我们日常的渗透测试过程中经常会用到端口转发,可以利用代理脚本将内网的流量代理到本地进行访问,这样极大的方便了我们对内网进行横向渗透。
那为什么不直接通过登陆服务器来对内网中其他机器进行渗透,而是通过内网转发呢?意义何在呢?
因为.........
大部分时候拿到权限不够,无法直接登录。
而且如果在内网服务器中进行操作,我们需要上传工具进行很多操作,如果服务器缺少对应的环境变量或者组件,会导致渗透受阻。
而且直接远程登录会留下比较明显的痕迹。
因此内网转发是我们最好的选择,在本地进行操作是最方便的,也比较安全~~~
说这么多,不知道大家有没有听过"代理"这个词,这个东西和我们要说的内网转发有很大的关系~
2 正向和反向代理
那接下来咱们唠一下什么是正向/反向代理?
正向代理中,Proxy和Client同属一个区域,对Server是透明的;反向代理中,Proxy和Server同属一个区域,对Client透明。但其实这不管是正向还是反向代理都有一个共同的特点,都是代替收发请求和响应,不过从结构上来看正好左右互换了下,所以把前者那种代理方式叫做正向代理,后面那个玩意叫做反向代理。
2.1正向代理(Forward Proxy)
Lhost--->proxy--->Rhost
Lhost为了访问到Rhost,向proxy发送了一个请求并且指定目标是Rhost,然后proxy向Rhost转交请求并将获得的内容返回给Lhost,简单来说正向代理就是proxy代替了我们去访问Rhost。
2.2反向代理(Reverse Proxy)
LhostproxyfirewallRhost
和正向代理相反(废话),一般情况下,防火墙肯定不能让外网机器随便访问地访问内网机器,所以就提出反向代理。
Lhost只向proxy发送普通的请求,具体让他转到哪里,proxy自己判断,然后将返回的数据递交回来,这样的好处就是在某些防火墙只允许proxy数据进出的时候可以有效的进行穿透。
简单区分
正向代理的是客户端,反向代理的是服务端,可以理解为正向代理是就比如年少时期喜欢那个Ta,当时很羞涩需要我自己(Lhost)写一份信(proxy)去告诉Ta,反向代理就是喜欢的那个Ta(Rhost)知道并且主动(proxy)过来告诉自己(Lhost)。
有人要问了,代理本质又是基于什么"何方神圣"呢?
那就是Socks协议~~
3 Socks协议
什么是Socks协议??
中文意思:防火墙安全会话转换协议,工作在OSI参考模型的第5层(会话层)。
它是一种可以穿透防火墙的协议,很多场景都会用到。比如Fan墙,你们懂得~~
因为Socks介于传输层与表示层之间,使用TCP协议传输数据,因而不提供如传递ICMP信息之类的网络层相关服务。
目前有两个版本:SOCKS4和SOCKS5
SOCKS4支持TELNET、FTPHTTP等TCP协议;
SOCKS5支持TCP与UDP,并支持安全认证方案。
Ps: Socks不支持ICMP,不能使用ping命令。。记住哦~~~
领取专属 10元无门槛券
私享最新 技术干货