前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >CS学习笔记 | 21、反向转发通道的建立

CS学习笔记 | 21、反向转发通道的建立

作者头像
TeamsSix
发布2020-09-18 17:01:32
1.1K0
发布2020-09-18 17:01:32
举报
文章被收录于专栏:TeamsSix的网络空间安全专栏

0x00 前言

这一节将介绍使用 ProxyChains 进行代理转发与使用反向转发的方法。

0x01 使用 ProxyChains 进行代理转发

介绍

使用 ProxyChains 可以使我们为没有代理配置功能的软件强制使用代理

  1. 和上一节中介绍的一致,开启一个 socks 代理服务
  2. 配置 /etc/proxychains.conf 文件
  3. 运行 proxychains + 待执行命令

演示

接下来继续上一节中的演示环境:

攻击机 IP:192.168.175.200 上线主机:外部IP 192.168.175.130、内部IP 192.168.232.133 攻击目标:192.168.232.0/24 地址段

1、设置 socks 代理

首先开启交互模式,之后开启 socks 代理

代码语言:javascript
复制
sleep 0socks 9527
代码语言:javascript
复制
beacon> sleep 0[*] Tasked beacon to become interactive[+] host called home, sent: 16 bytesbeacon> socks 9527[+] host called home, sent: 16 bytes[+] started SOCKS4a server on: 9527

2、配置 ProxyChains

在攻击机上,配置 /etc/proxychains.conf 文件的最后一行,根据当前攻击主机 IP 与设置的 Socks 端口,修改如下:

代码语言:javascript
复制
socks4 192.168.175.200 9527

3、开始使用 ProxyChains

根据上一节使用 Metasploit 的扫描可以知道,在 192.168.232.0/24 地址段中存在主机 192.168.232.132 ,接下来使用 nmap 扫描一下常见的端口,这里以 80,443,445,3389 作为演示。

代码语言:javascript
复制
proxychains nmap -sT -Pn 192.168.232.132 -p 80,443,445,3389

-sT:使用 TCP 扫描 -Pn:不使用 Ping -p:指定扫描端口 注:不加上 -sT -Pn 参数,将无法使用 proxychains 进行代理扫描

代码语言:javascript
复制
> proxychains nmap -sT -Pn 192.168.232.132 -p 80,443,445,3389                       [proxychains] config file found: /etc/proxychains.conf[proxychains] preloading /usr/lib/x86_64-linux-gnu/libproxychains.so.4[proxychains] DLL init: proxychains-ng 4.14Starting Nmap 7.80 ( https://nmap.org ) at 2020-09-07 23:05 EDT[proxychains] Strict chain  ...  192.168.175.200:9527  ...  192.168.232.132:80  ...  OK[proxychains] Strict chain  ...  192.168.175.200:9527  ...  192.168.232.132:445  ...  OK[proxychains] Strict chain  ...  192.168.175.200:9527  ...  192.168.232.132:3389  ...  OK[proxychains] Strict chain  ...  192.168.175.200:9527  ...  192.168.232.132:443 <--deniedNmap scan report for 192.168.232.132Host is up (0.19s latency).
PORT     STATE  SERVICE80/tcp   open   http443/tcp  closed https445/tcp  open   microsoft-ds3389/tcp open   ms-wbt-server
Nmap done: 1 IP address (1 host up) scanned in 14.35 seconds

通过扫描可以看到目标 80 端口是开放的,接下来使用 curl 作为对比示例。

代码语言:javascript
复制
curl 192.168.232.132proxychains curl 192.168.232.132
代码语言:javascript
复制
> curl 192.168.232.132curl: (7) Failed to connect to 192.168.232.132 port 80: No route to host
> proxychains curl 192.168.232.132[proxychains] config file found: /etc/proxychains.conf[proxychains] preloading /usr/lib/x86_64-linux-gnu/libproxychains.so.4[proxychains] DLL init: proxychains-ng 4.14[proxychains] Strict chain  ...  192.168.175.200:9527  ...  192.168.232.132:80  ...  OK<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />……内容太多,此处省略……

0x02 反向转发

反向转发顾名思义就是和上一节中提到的转发路径相反,之前我们设置的代理是 CS服务端 --> 上线主机 --> 内网主机,反向转发则是 内网主机 --> 上线主机 --> CS服务端

继续使用上面的演示环境,首先右击上线主机会话,选择 Pivoting --> Listener ,除了 Name 选项之外,CS 都会自动配置好,这里直接使用默认的配置信息。

之后生成一个 Windows 可执行文件,选择上一步生成的监听器,如果目标是 64 位则勾选使用 x64 Payload 的选项。

之后将该可执行文件在目标主机上执行即可,在现实环境中可以尝试使用钓鱼邮件的方式诱导目标执行。

当目标执行该文件后,就会发现当前不出网的 192.168.232.132 主机已经上线了。

有一说一,关于这部分网上大部分教程还是 CS 3.x 版本的教程,而在 4.0 的操作中个人感觉要方便很多。

网上关于这部分内容的 CS 4.0 教程真的是少之又少,一开始在参考 3.x 教程的时候踩了很多坑,最后终于某内部知识库发现了一篇关于这部分内容的 4.0 教程,在该教程的参考下才发现居然如此简单。

原文链接:https://www.teamssix.com/year/200419-150651.html 参考链接:https://www.bilibili.com/video/BV16b411i7n5

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-09-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 TeamsSix 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 0x01 使用 ProxyChains 进行代理转发
    • 介绍
      • 演示
        • 1、设置 socks 代理
        • 2、配置 ProxyChains
        • 3、开始使用 ProxyChains
    • 0x02 反向转发
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档