mirror of
https://github.com/telekom-security/tpotce.git
synced 2025-07-02 01:27:27 -04:00
tweaking
multi stage build for dicompot rebuild fatt, glutton, hellpot, honeypots for alpine 3.19 bump glutton, hellpot, honeypots to latest master
This commit is contained in:
@ -1,52 +1,52 @@
|
||||
FROM alpine:3.17
|
||||
FROM alpine:3.19
|
||||
#
|
||||
# Include dist
|
||||
COPY dist/ /root/dist/
|
||||
#
|
||||
# Install packages
|
||||
RUN apk -U --no-cache add \
|
||||
build-base \
|
||||
freetds \
|
||||
freetds-dev \
|
||||
gcc \
|
||||
git \
|
||||
hiredis \
|
||||
jpeg-dev \
|
||||
libcap \
|
||||
libffi-dev \
|
||||
libpq \
|
||||
musl-dev \
|
||||
openssl \
|
||||
openssl-dev \
|
||||
postgresql-dev \
|
||||
py3-chardet \
|
||||
py3-click \
|
||||
py3-cryptography \
|
||||
py3-dnspython \
|
||||
py3-flask \
|
||||
py3-future \
|
||||
py3-hiredis \
|
||||
py3-impacket \
|
||||
py3-itsdangerous \
|
||||
py3-jinja2 \
|
||||
py3-ldap3 \
|
||||
py3-markupsafe \
|
||||
py3-netifaces \
|
||||
py3-openssl \
|
||||
py3-packaging \
|
||||
py3-paramiko \
|
||||
py3-pip \
|
||||
py3-psutil \
|
||||
py3-psycopg2 \
|
||||
py3-pycryptodomex \
|
||||
py3-requests \
|
||||
py3-service_identity \
|
||||
py3-twisted \
|
||||
py3-werkzeug \
|
||||
py3-wheel \
|
||||
python3 \
|
||||
python3-dev \
|
||||
zlib-dev && \
|
||||
build-base \
|
||||
freetds \
|
||||
freetds-dev \
|
||||
gcc \
|
||||
git \
|
||||
hiredis \
|
||||
jpeg-dev \
|
||||
libcap \
|
||||
libffi-dev \
|
||||
libpq \
|
||||
musl-dev \
|
||||
openssl \
|
||||
openssl-dev \
|
||||
postgresql-dev \
|
||||
py3-chardet \
|
||||
py3-click \
|
||||
py3-cryptography \
|
||||
py3-dnspython \
|
||||
py3-flask \
|
||||
py3-future \
|
||||
py3-hiredis \
|
||||
py3-impacket \
|
||||
py3-itsdangerous \
|
||||
py3-jinja2 \
|
||||
py3-ldap3 \
|
||||
py3-markupsafe \
|
||||
py3-netifaces \
|
||||
py3-openssl \
|
||||
py3-packaging \
|
||||
py3-paramiko \
|
||||
py3-pip \
|
||||
# py3-psutil \
|
||||
py3-psycopg2 \
|
||||
py3-pycryptodomex \
|
||||
py3-requests \
|
||||
py3-service_identity \
|
||||
py3-twisted \
|
||||
py3-werkzeug \
|
||||
py3-wheel \
|
||||
python3 \
|
||||
python3-dev \
|
||||
zlib-dev && \
|
||||
#
|
||||
# Install honeypots from GitHub and setup
|
||||
mkdir -p /opt \
|
||||
@ -54,12 +54,12 @@ RUN apk -U --no-cache add \
|
||||
cd /opt/ && \
|
||||
git clone https://github.com/qeeqbox/honeypots && \
|
||||
cd honeypots && \
|
||||
# git checkout bee3147cf81837ba7639f1e27fe34d717ecccf29 && \
|
||||
git checkout 1ad37d7e07838e9ad18c5244d87b9e49d90c9bc3 && \
|
||||
cp /root/dist/setup.py . && \
|
||||
pip3 install --upgrade pip && \
|
||||
pip3 install . && \
|
||||
setcap cap_net_bind_service=+ep /usr/bin/python3.10 && \
|
||||
# git checkout bee3147cf81837ba7639f1e27fe34d717ecccf29 && \
|
||||
git checkout 5b3bfbecbf85c1f5235b320b333bdeff2d312372 && \
|
||||
# cp /root/dist/pyproject.toml . && \
|
||||
pip3 install --break-system-packages --upgrade pip && \
|
||||
pip3 install --break-system-packages . && \
|
||||
setcap cap_net_bind_service=+ep $(readlink -f $(type -P python3)) && \
|
||||
#
|
||||
# Setup user, groups and configs
|
||||
addgroup -g 2000 honeypots && \
|
||||
@ -70,14 +70,14 @@ RUN apk -U --no-cache add \
|
||||
#
|
||||
# Clean up
|
||||
apk del --purge build-base \
|
||||
freetds-dev \
|
||||
git \
|
||||
jpeg-dev \
|
||||
libffi-dev \
|
||||
openssl-dev \
|
||||
postgresql-dev \
|
||||
python3-dev \
|
||||
zlib-dev && \
|
||||
freetds-dev \
|
||||
git \
|
||||
jpeg-dev \
|
||||
libffi-dev \
|
||||
openssl-dev \
|
||||
postgresql-dev \
|
||||
python3-dev \
|
||||
zlib-dev && \
|
||||
rm -rf /root/* /var/cache/apk/* /opt/honeypots/.git
|
||||
|
||||
#
|
||||
|
75
docker/honeypots/dist/config.json
vendored
75
docker/honeypots/dist/config.json
vendored
@ -45,7 +45,7 @@
|
||||
"log_file_name":"http.log",
|
||||
"max_bytes":0,
|
||||
"backup_count":10,
|
||||
"options":["capture_commands","fix_get_client_ip"]
|
||||
"options":["capture_commands","fix_get_client_ip"]
|
||||
},
|
||||
"https":{
|
||||
"port":443,
|
||||
@ -55,7 +55,7 @@
|
||||
"log_file_name":"https.log",
|
||||
"max_bytes":0,
|
||||
"backup_count":10,
|
||||
"options":["capture_commands","fix_get_client_ip"]
|
||||
"options":["capture_commands","fix_get_client_ip"]
|
||||
},
|
||||
"imap":{
|
||||
"port":143,
|
||||
@ -65,7 +65,7 @@
|
||||
"log_file_name":"imap.log",
|
||||
"max_bytes":0,
|
||||
"backup_count":10,
|
||||
"options":["capture_commands"]
|
||||
"options":["capture_commands"]
|
||||
},
|
||||
"mysql":{
|
||||
"port":3306,
|
||||
@ -75,7 +75,7 @@
|
||||
"log_file_name":"mysql.log",
|
||||
"max_bytes":0,
|
||||
"backup_count":10,
|
||||
"options":["capture_commands"]
|
||||
"options":["capture_commands"]
|
||||
},
|
||||
"pop3":{
|
||||
"port":110,
|
||||
@ -85,7 +85,7 @@
|
||||
"log_file_name":"pop3.log",
|
||||
"max_bytes":0,
|
||||
"backup_count":10,
|
||||
"options":["capture_commands"]
|
||||
"options":["capture_commands"]
|
||||
},
|
||||
"postgres":{
|
||||
"port":5432,
|
||||
@ -95,7 +95,7 @@
|
||||
"log_file_name":"postgres.log",
|
||||
"max_bytes":0,
|
||||
"backup_count":10,
|
||||
"options":["capture_commands"]
|
||||
"options":["capture_commands"]
|
||||
},
|
||||
"redis":{
|
||||
"port":6379,
|
||||
@ -105,7 +105,7 @@
|
||||
"log_file_name":"redis.log",
|
||||
"max_bytes":0,
|
||||
"backup_count":10,
|
||||
"options":["capture_commands"]
|
||||
"options":["capture_commands"]
|
||||
},
|
||||
"smb":{
|
||||
"port":445,
|
||||
@ -115,7 +115,7 @@
|
||||
"log_file_name":"smb.log",
|
||||
"max_bytes":0,
|
||||
"backup_count":10,
|
||||
"options":["capture_commands"]
|
||||
"options":["capture_commands"]
|
||||
},
|
||||
"smtp":{
|
||||
"port":25,
|
||||
@ -125,7 +125,7 @@
|
||||
"log_file_name":"smtp.log",
|
||||
"max_bytes":10000,
|
||||
"backup_count":10,
|
||||
"options":["capture_commands"]
|
||||
"options":["capture_commands"]
|
||||
},
|
||||
"socks5":{
|
||||
"port":1080,
|
||||
@ -135,7 +135,7 @@
|
||||
"log_file_name":"socks5.log",
|
||||
"max_bytes":0,
|
||||
"backup_count":10,
|
||||
"options":["capture_commands"]
|
||||
"options":["capture_commands"]
|
||||
},
|
||||
"ssh":{
|
||||
"port":22,
|
||||
@ -145,7 +145,7 @@
|
||||
"log_file_name":"ssh.log",
|
||||
"max_bytes":0,
|
||||
"backup_count":10,
|
||||
"options":["capture_commands", "interactive"]
|
||||
"options":["capture_commands", "interactive"]
|
||||
},
|
||||
"telnet":{
|
||||
"port":23,
|
||||
@ -155,7 +155,7 @@
|
||||
"log_file_name":"telnet.log",
|
||||
"max_bytes":0,
|
||||
"backup_count":10,
|
||||
"options":["capture_commands"]
|
||||
"options":["capture_commands"]
|
||||
},
|
||||
"vnc":{
|
||||
"port":5900,
|
||||
@ -165,7 +165,7 @@
|
||||
"log_file_name":"vnc.log",
|
||||
"max_bytes":0,
|
||||
"backup_count":10,
|
||||
"options":["capture_commands"]
|
||||
"options":["capture_commands"]
|
||||
},
|
||||
"elastic":{
|
||||
"port":9200,
|
||||
@ -175,7 +175,7 @@
|
||||
"log_file_name":"elastic.log",
|
||||
"max_bytes":0,
|
||||
"backup_count":10,
|
||||
"options":["capture_commands"]
|
||||
"options":["capture_commands"]
|
||||
},
|
||||
"mssql":{
|
||||
"port":1433,
|
||||
@ -185,7 +185,7 @@
|
||||
"log_file_name":"mssql.log",
|
||||
"max_bytes":0,
|
||||
"backup_count":10,
|
||||
"options":["capture_commands"]
|
||||
"options":["capture_commands"]
|
||||
},
|
||||
"ldap":{
|
||||
"port":389,
|
||||
@ -195,7 +195,7 @@
|
||||
"log_file_name":"ldap.log",
|
||||
"max_bytes":0,
|
||||
"backup_count":10,
|
||||
"options":["capture_commands"]
|
||||
"options":["capture_commands"]
|
||||
},
|
||||
"ntp":{
|
||||
"port":123,
|
||||
@ -205,7 +205,7 @@
|
||||
"log_file_name":"ntp.log",
|
||||
"max_bytes":0,
|
||||
"backup_count":10,
|
||||
"options":["capture_commands"]
|
||||
"options":["capture_commands"]
|
||||
},
|
||||
"memcache":{
|
||||
"port":11211,
|
||||
@ -215,7 +215,7 @@
|
||||
"log_file_name":"memcache.log",
|
||||
"max_bytes":0,
|
||||
"backup_count":10,
|
||||
"options":["capture_commands"]
|
||||
"options":["capture_commands"]
|
||||
},
|
||||
"oracle":{
|
||||
"port":1521,
|
||||
@ -225,7 +225,7 @@
|
||||
"log_file_name":"oracle.log",
|
||||
"max_bytes":0,
|
||||
"backup_count":10,
|
||||
"options":["capture_commands"]
|
||||
"options":["capture_commands"]
|
||||
},
|
||||
"snmp":{
|
||||
"port":161,
|
||||
@ -235,7 +235,7 @@
|
||||
"log_file_name":"snmp.log",
|
||||
"max_bytes":0,
|
||||
"backup_count":10,
|
||||
"options":["capture_commands"]
|
||||
"options":["capture_commands"]
|
||||
},
|
||||
"sip":{
|
||||
"port":5060,
|
||||
@ -253,11 +253,41 @@
|
||||
"username":"",
|
||||
"password":"",
|
||||
"log_file_name":"irc.log",
|
||||
"max_bytes":10000,
|
||||
"max_bytes":0,
|
||||
"backup_count":10,
|
||||
"options":["capture_commands"]
|
||||
},
|
||||
"pjl":{
|
||||
"port":9100,
|
||||
"ip":"0.0.0.0",
|
||||
"username":"",
|
||||
"password":"",
|
||||
"log_file_name":"pjl.log",
|
||||
"max_bytes":0,
|
||||
"backup_count":10,
|
||||
"options":["capture_commands"]
|
||||
},
|
||||
"ipp":{
|
||||
"port":631,
|
||||
"ip":"0.0.0.0",
|
||||
"username":"",
|
||||
"password":"",
|
||||
"log_file_name":"ipp.log",
|
||||
"max_bytes":0,
|
||||
"backup_count":10,
|
||||
"options":["capture_commands"]
|
||||
},
|
||||
"rdp":{
|
||||
"port":3389,
|
||||
"ip":"0.0.0.0",
|
||||
"username":"",
|
||||
"password":"",
|
||||
"log_file_name":"rdp.log",
|
||||
"max_bytes":0,
|
||||
"backup_count":10,
|
||||
"options":["capture_commands"]
|
||||
}
|
||||
},
|
||||
},
|
||||
"custom_filter":{
|
||||
"honeypots":{
|
||||
"change":{
|
||||
@ -282,4 +312,3 @@
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
150
docker/honeypots/dist/pyproject.toml
vendored
Normal file
150
docker/honeypots/dist/pyproject.toml
vendored
Normal file
@ -0,0 +1,150 @@
|
||||
[build-system]
|
||||
requires = [
|
||||
"setuptools>=61.2",
|
||||
]
|
||||
build-backend = "setuptools.build_meta"
|
||||
|
||||
[project]
|
||||
name = "honeypots"
|
||||
version = "0.65"
|
||||
authors = [
|
||||
{ name = "QeeqBox", email = "gigaqeeq@gmail.com" },
|
||||
]
|
||||
description = "30 different honeypots in one package! (dhcp, dns, elastic, ftp, http proxy, https proxy, http, https, imap, ipp, irc, ldap, memcache, mssql, mysql, ntp, oracle, pjl, pop3, postgres, rdp, redis, sip, smb, smtp, snmp, socks5, ssh, telnet, vnc)"
|
||||
readme = "README.rst"
|
||||
requires-python = ">=3.8"
|
||||
dependencies = [
|
||||
"twisted",
|
||||
"psutil",
|
||||
"psycopg2-binary",
|
||||
"pycryptodome",
|
||||
"requests",
|
||||
"requests[socks]",
|
||||
"impacket",
|
||||
"paramiko",
|
||||
"scapy",
|
||||
"service_identity",
|
||||
"netifaces",
|
||||
]
|
||||
license = {text = "AGPL-3.0"}
|
||||
|
||||
[project.urls]
|
||||
Homepage = "https://github.com/qeeqbox/honeypots"
|
||||
|
||||
[project.optional-dependencies]
|
||||
dev = [
|
||||
"dnspython==2.4.2",
|
||||
"elasticsearch",
|
||||
"ldap3",
|
||||
"mysql-connector",
|
||||
"pre-commit",
|
||||
"pymssql",
|
||||
"pysnmplib",
|
||||
"pytest",
|
||||
"redis",
|
||||
"redis",
|
||||
"vncdotool",
|
||||
]
|
||||
|
||||
[project.scripts]
|
||||
honeypots = "honeypots.__main__:main_logic"
|
||||
|
||||
[tool.setuptools]
|
||||
packages = [
|
||||
"honeypots",
|
||||
"honeypots.data",
|
||||
]
|
||||
include-package-data = true
|
||||
|
||||
[tool.setuptools.package-data]
|
||||
"honeypots.data" = [
|
||||
"*.html",
|
||||
]
|
||||
|
||||
[tool.ruff]
|
||||
select = [
|
||||
"F",
|
||||
"E",
|
||||
"W",
|
||||
"C90",
|
||||
"N",
|
||||
"UP",
|
||||
"B",
|
||||
"A",
|
||||
"C4",
|
||||
"EXE",
|
||||
"FA",
|
||||
"ISC",
|
||||
"PIE",
|
||||
"T20",
|
||||
"PT",
|
||||
"Q",
|
||||
"RET",
|
||||
"SIM",
|
||||
"TCH",
|
||||
"ARG",
|
||||
"PTH",
|
||||
"ERA",
|
||||
"PL",
|
||||
"PLR",
|
||||
"PLW",
|
||||
"PERF",
|
||||
"RUF",
|
||||
]
|
||||
ignore = [
|
||||
"A003",
|
||||
"PERF203",
|
||||
"PERF401",
|
||||
"RUF001",
|
||||
"RUF002",
|
||||
"RUF003",
|
||||
"RUF015",
|
||||
# pydantic only supports these from python>=3.9
|
||||
"UP006",
|
||||
"UP007",
|
||||
# rules may cause conflicts when used with the formatter
|
||||
"ISC001",
|
||||
"Q001",
|
||||
]
|
||||
fixable = [
|
||||
"F",
|
||||
"E",
|
||||
"W",
|
||||
"C90",
|
||||
"N",
|
||||
"UP",
|
||||
"B",
|
||||
"A",
|
||||
"C4",
|
||||
"EXE",
|
||||
"FA",
|
||||
"ISC",
|
||||
"PIE",
|
||||
"T20",
|
||||
"PT",
|
||||
"Q",
|
||||
"RET",
|
||||
"SIM",
|
||||
"TCH",
|
||||
"ARG",
|
||||
"PTH",
|
||||
"ERA",
|
||||
"PL",
|
||||
"PLR",
|
||||
"PLW",
|
||||
"PERF",
|
||||
"RUF",
|
||||
]
|
||||
exclude = [
|
||||
".git",
|
||||
".ruff_cache",
|
||||
".venv",
|
||||
"venv",
|
||||
"data",
|
||||
]
|
||||
line-length = 99
|
||||
target-version = "py38"
|
||||
|
||||
[tool.ruff.lint.per-file-ignores]
|
||||
# don't check for "magic value" in tests
|
||||
"tests/*" = ["PLR2004"]
|
@ -32,19 +32,22 @@ services:
|
||||
- "389:389"
|
||||
- "443:443"
|
||||
- "445:445"
|
||||
- "631:631"
|
||||
- "1080:1080"
|
||||
- "1433:1433"
|
||||
- "1521:1521"
|
||||
- "3306:3306"
|
||||
- "3389:3389"
|
||||
- "5060:5060"
|
||||
- "5432:5432"
|
||||
- "5900:5900"
|
||||
- "6379:6379"
|
||||
- "6667:6667"
|
||||
- "8080:8080"
|
||||
- "9100:9100"
|
||||
- "9200:9200"
|
||||
- "11211:11211"
|
||||
image: "dtagdevsec/honeypots:alpha"
|
||||
read_only: true
|
||||
volumes:
|
||||
- /data/honeypots/log:/var/log/honeypots
|
||||
- $HOME/tpotce/data/honeypots/log:/var/log/honeypots
|
||||
|
Reference in New Issue
Block a user