aboutsummaryrefslogtreecommitdiffstats
path: root/security/cowrie
diff options
context:
space:
mode:
Diffstat (limited to 'security/cowrie')
-rw-r--r--security/cowrie/Makefile40
-rw-r--r--security/cowrie/distinfo6
-rw-r--r--security/cowrie/files/patch-pyproject.toml17
-rw-r--r--security/cowrie/pkg-descr14
4 files changed, 53 insertions, 24 deletions
diff --git a/security/cowrie/Makefile b/security/cowrie/Makefile
index 9aa076cee492..d71d319b3433 100644
--- a/security/cowrie/Makefile
+++ b/security/cowrie/Makefile
@@ -1,7 +1,6 @@
PORTNAME= cowrie
DISTVERSIONPREFIX= v
-DISTVERSION= 2.5.0
-PORTREVISION= 3
+DISTVERSION= 2.9.0
CATEGORIES= security python
MAINTAINER= yuri@FreeBSD.org
@@ -11,27 +10,30 @@ WWW= https://www.cowrie.org/
LICENSE= BSD3CLAUSE
LICENSE_FILE= ${WRKSRC}/docs/LICENSE.rst
-BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}click>0:devel/py-click@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}incremental>0:devel/py-incremental@${PY_FLAVOR}
+BUILD_DEPENDS= ${PY_SETUPTOOLS} \
+ ${PYTHON_PKGNAMEPREFIX}click>0:devel/py-click@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}setuptools-scm>=0:devel/py-setuptools-scm@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}wheel>0:devel/py-wheel@${PY_FLAVOR}
RUN_DEPENDS= bash:shells/bash \
- ${PYTHON_PKGNAMEPREFIX}appdirs>0:devel/py-appdirs@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}attrs>0:devel/py-attrs@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}bcrypt>0:security/py-bcrypt@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}configparser>0:devel/py-configparser@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}python-dateutil>0:devel/py-python-dateutil@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}incremental>0:devel/py-incremental@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}openssl>0:security/py-openssl@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}packaging>0:devel/py-packaging@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}attrs>=25.4.0:devel/py-attrs@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}bcrypt>=5.0.0:security/py-bcrypt@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}cryptography>=46.0.3:security/py-cryptography@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}hyperlink>=21.0.0:www/py-hyperlink@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}idna>=3.11:dns/py-idna@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}packaging>=25.0:devel/py-packaging@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pyasn1-modules>0:devel/py-pyasn1-modules@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}pyparsing>0:devel/py-pyparsing@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}service-identity>0:security/py-service-identity@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}tftpy>0:ftp/py-tftpy@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}twisted>0:devel/py-twisted@${PY_FLAVOR}
+ ${PYTHON_PKGNAMEPREFIX}requests>=2.32.5:www/py-requests@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}service-identity>=24.2.0:security/py-service-identity@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}tftpy>=0.8.6:ftp/py-tftpy@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}treq>0:www/py-treq@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}twisted>0:devel/py-twisted@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}urllib3>=2.5.0:net/py-urllib3@${PY_FLAVOR}
-USES= python shebangfix
-SHEBANG_FILES= bin/cowrie
+USES= python
USE_GITHUB= yes
-USE_PYTHON= autoplist cryptography noflavors distutils
+USE_PYTHON= pep517 cryptography autoplist noflavors
+
+MAKE_ENV= SETUPTOOLS_SCM_PRETEND_VERSION="${PORTVERSION}"
CONFLICTS_INSTALL= py*-asciinema # bin/asciinema
diff --git a/security/cowrie/distinfo b/security/cowrie/distinfo
index 02c115f0b33d..b0352c37f66a 100644
--- a/security/cowrie/distinfo
+++ b/security/cowrie/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1687315849
-SHA256 (cowrie-cowrie-v2.5.0_GH0.tar.gz) = 9db15102675729783a4d65617fb4355e366a7fdcd8f5705f6d41541eb1f5919b
-SIZE (cowrie-cowrie-v2.5.0_GH0.tar.gz) = 558231
+TIMESTAMP = 1764445977
+SHA256 (cowrie-cowrie-v2.9.0_GH0.tar.gz) = 877d2330e878196eed5dbc3fd1764766252be7bc0a9da32f1b2a4e91e8fc2419
+SIZE (cowrie-cowrie-v2.9.0_GH0.tar.gz) = 646368
diff --git a/security/cowrie/files/patch-pyproject.toml b/security/cowrie/files/patch-pyproject.toml
new file mode 100644
index 000000000000..eb1609e81434
--- /dev/null
+++ b/security/cowrie/files/patch-pyproject.toml
@@ -0,0 +1,17 @@
+--- pyproject.toml.orig 2025-11-28 09:45:07 UTC
++++ pyproject.toml
+@@ -1,13 +1,11 @@
+ [build-system]
+-requires = ["setuptools>=80", "setuptools-scm>=8"]
++requires = ["setuptools", "setuptools-scm>=8"]
+ build-backend = "setuptools.build_meta"
+
+ [project]
+ name = "cowrie"
+ dynamic = ["version"]
+ description="Cowrie SSH/Telnet Honeypot."
+-license="BSD-3-Clause"
+-license-files = [ "LICENSE.rst" ]
+ authors = [ {name = "Michel Oosterhof", email="michel@oosterhof.net"}, ]
+ maintainers = [ {name = "Michel Oosterhof", email="michel@oosterhof.net"}, ]
+ keywords=["ssh", "telnet", "honeypot"]
diff --git a/security/cowrie/pkg-descr b/security/cowrie/pkg-descr
index a8536940b22d..d311965587dd 100644
--- a/security/cowrie/pkg-descr
+++ b/security/cowrie/pkg-descr
@@ -1,2 +1,12 @@
-Cowrie is a medium interaction SSH and Telnet honeypot designed to log brute
-force attacks and the shell interaction performed by the attacker.
+Cowrie is a medium and high interaction SSH and Telnet honeypot.
+
+Cowrie is designed to log brute force attacks and the shell interaction
+performed by an attacker. In medium interaction mode, it emulates a shell
+and filesystem, while in high interaction mode, it proxies traffic to
+another host.
+
+Features:
+- Fake filesystem with the ability to add/remove files.
+- Session logging in a format compatible with `ttyrec`.
+- Stores files uploaded with SFTP and SCP for later analysis.
+- Logs events to JSON files for processing with tools like Elasticsearch.