公众号:泷羽Sec-Ceo
声明!
所提供的工具资料仅供学习之用。这些资料旨在帮助用户增进知识、提升技能,并促进个人成长与学习。用户在使用这些资料时,应严格遵守相关法律法规,不得将其用于任何非法、欺诈、侵权或其他不当用途。本人和团队不对用户因使用这些资料而产生的任何后果负责,包括但不限于因操作不当、误解资料内容或违反法律法规而导致的损失或损害。用户应自行承担使用这些资料的风险,并在使用前进行充分的了解和评估。
介绍
Viper是一款图形化的互联网攻击面管理和红队模拟平台
系统配置需求
支持的OS操作系统版本
Ubuntu:22.04及以上版本
注意:不推荐使用CentOS
项目地址
安装方法
手动安装
直接切换到root用户进行操作,因为使用sudo进行安装可能会遇到一些未知的问题。
su root
优化操作系统配置
网络配置优化
#TCP时间戳:禁用TCP时间戳以减少网络开销。
sysctl -w net.ipv4.tcp_timestamps=0
#TCP连接重用:启用TCP快速重用功能,以加速连接释放后的资源回收。
sysctl -w net.ipv4.tcp_tw_reuse=1
#TCP连接回收:启用TCP快速回收功能,以加快TIME-WAIT状态连接的回收速度。
sysctl -w net.ipv4.tcp_tw_recycle=1
#TCP连接终止超时:缩短TCP连接终止的超时时间,以提高资源利用率。
sysctl -w net.ipv4.tcp_fin_timeout=3
#TCP保活时间:设置TCP连接的保活时间为1800秒,以检测空闲连接。
sysctl -w net.ipv4.tcp_keepalive_time=1800
#TCP接收/发送缓冲区:调整TCP接收和发送缓冲区大小,以优化数据传输性能。
sysctl -w net.ipv4.tcp_rmem="4096 87380 8388608"
sysctl -w net.ipv4.tcp_wmem="4096 87380 8388608"
#SYN队列长度:增加SYN队列长度,以处理更多的并发连接请求。
sysctl -w net.ipv4.tcp_max_syn_backlog=262144
#本地端口范围:扩展本地端口范围,以提供更多的可用端口。
sysctl -w net.ipv4.ip_local_port_range="1024 65535"
#核心接收/发送缓冲区最大值:增加核心接收和发送缓冲区的最大值,以优化网络性能。
sysctl -w net.core.rmem_max=16777216
sysctl -w net.core.wmem_max=16777216
#TCP窗口缩放:禁用TCP窗口缩放功能,以避免潜在的性能问题。
sysctl -w net.ipv4.tcp_window_scaling=0
#TCP选择性应答:禁用TCP选择性应答(SACK),以减少网络开销。
sysctl -w net.ipv4.tcp_sack=0
资源管理优化
#网络设备接收队列:增加网络设备接收队列的最大长度,以提高网络吞吐量。
sysctl -w net.core.netdev_max_backlog=30000
#TCP度量保存:禁用TCP度量保存功能,以减少内存使用。
sysctl -w net.ipv4.tcp_no_metrics_save=1
#监听队列长度:增加监听队列长度,以处理更多的并发连接。
sysctl -w net.core.somaxconn=262144
#TCP同步Cookie:禁用TCP同步Cookie功能,以避免性能下降。
sysctl -w net.ipv4.tcp_syncookies=0
#TCP孤儿连接:增加TCP孤儿连接的最大数量,以处理更多的网络异常情况。
sysctl -w net.ipv4.tcp_max_orphans=262144
#TCP重试次数:减少TCP连接建立过程中的重试次数,以提高连接速度。
sysctl -w net.ipv4.tcp_synack_retries=2
sysctl -w net.ipv4.tcp_syn_retries=2
文件描述符限制
#系统级别:将系统级别的文件描述符限制设置为65535。
echo "ulimit -HSn 65535" >> /etc/rc.local
#root用户级别:将root用户的文件描述符限制设置为65535。
echo "ulimit -HSn 65535" >>/root/.bash_profile
#全局用户级别:将全局用户的文件描述符限制设置为65535。
echo "ulimit -SHn 65535" >> /etc/profile
#当前会话:在当前会话中立即应用文件描述符限制。
ulimit -SHn 65535
虚拟内存配置优化
#增加虚拟内存映射的最大数量,以支持更多的内存密集型应用。
sysctl -w vm.max_map_count=262144
安装 docker
curl -fsSL https://get.docker.com | bash -s docker –mirror Aliyun
service docker start
设置/生成/进入安装目录
export VIPER_DIR=/root/VIPER
mkdir -p $VIPER_DIR && cd $VIPER_DIR
生成docker-compose.yml
tee docker-compose.yml <<-'EOF'
services:
viper:
image: registry.cn-shenzhen.aliyuncs.com/toys/viper:latest
container_name: viper-c
network_mode: "host"
restart: always
volumes:
– ${PWD}/loot:/root/.msf4/loot
– ${PWD}/db:/root/viper/Docker/db
– ${PWD}/module:/root/viper/Docker/module
– ${PWD}/log:/root/viper/Docker/log
– ${PWD}/nginxconfig:/root/viper/Docker/nginxconfig
– ${PWD}/elasticsearch:/var/lib/elasticsearch
ulimits:
nofile:
soft: 65534
hard: 65534
nproc:
soft: 65534
hard: 65534
command: ["VIPER_PASSWORD"]
EOF
设置登录密码
Viper不允许使用默认密码,diypassword替换为自定义密码
export VIPER_PASSWORD=diypassword
写入密码到docker-compose.yml
sed -i "s/VIPER_PASSWORD/$VIPER_PASSWORD/g" docker-compose.yml
启动Viper
cd $VIPER_DIR
docker compose up -d
所有的docker compose命令必须在安装目录执行才会有效果
等待15s系统启动,访问 https://yourvpsip:60000 登录. 用户名:root 密码:自定义密码
脚本安装
f8x工具支持在全新的linux环境一键安装viper
curl -o f8x https://f8x.io/ # wget -O f8x https://f8x.io/
bash f8x -viper
f8x由 https://github.com/ffffffff0x/f8x 提供
更新版本
小版本更新(例如1.2.1更新到1.2.2)
docker compose所有命令在/root/VIPER目录执行
删除原有容器
cd /root/VIPER # viper安装目录
docker compose down # 删除现有容器
更新 docker 镜像
docker compose pull
新建并启动容器
docker compose up -d
访问 https://vpsip:diyport 登录服务器.用户名:root 密码:自定义密码
密码可以通过 cat /root/VIPER/docker-compose.yml 查看
diyport可通过 cat /root/VIPER/nginxconfig/viper.conf 查看
跨版本更新(例如1.2.6更新到1.3.0)
docker compose所有命令在/root/VIPER目录执行
Viper高版本不兼容低版本已有数据,跨版本更新需要清空已有数据
删除原有容器
cd /root/VIPER # viper安装目录
docker compose down
清空已有数据及自定义模块
rm -f ./db/*
rm -f ./module/*
更新 docker 镜像
docker compose pull
新建并启动容器
docker compose up -d
访问 https://vpsip:diyport 登录服务器.用户名:root 密码:自定义密码
密码可以通过 cat /root/VIPER/docker-compose.yml 查看
diyport可通过 cat /root/VIPER/nginxconfig/viper.conf 查看
Web界面
平台首页
可通过浏览器访问的图形化操作界面,轻松进行内网渗透测试。
基础功能
集成了多项基础功能,包括杀软绕过技术、内网隧道构建、文件管理操作以及命令行执行等。
集成模块
内置70+个模块,全面覆盖初始访问、持久化维持、权限提升、防御机制绕过、凭证访问获取、信息收集分析以及横向移动等多个关键领域。
可视化拓扑
可视化的内网网络拓扑展示
MSF
msfconsole命令行,支持颜色显示,Tab提示
用户协同
支持多用户协同
智能助手
基于LLM的智能助手
评论前必须登录!
注册