From nobody Thu Oct 26 01:10:19 2023 X-Original-To: dev-commits-ports-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4SG7580n17z4yHq9; Thu, 26 Oct 2023 01:10:20 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4SG7580Dw9z4QPL; Thu, 26 Oct 2023 01:10:20 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1698282620; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=cH294K2sBkAT8ePQQUe3/Xc3Db9f+zMDTPufl0+eT1o=; b=J7nYKtXOlYQsRzZvJr3BllfPoXHIIcR5XgrJ/MuENairQnDEgw4NVv39mNUzC0i9VG2YTF Rs2tHugRId7EKAWS2iJ5enDtEtLma6la1Gy0O7+1N3DHLYCK7ZF7wW11i5i7AnXUeV1x55 0ZrcCvf4fqNTkKP19CHugzgIKd9QyOl0evHgbwJCDE8FIWAh+G3680wQP7/40MnKbCaePh v5pf+d2EEOh+PiOiRh/9SFpFi/a2kPS/sflL/JhTz2bMpjZwx0LIZPH5tMsNrWfbHvPT8k cDvvw5ggBxb8vbYDDDhoVtPxiJ4eYxu8eM9iqJQFHH/HxDSJTPXDsyWCZDpINA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1698282620; a=rsa-sha256; cv=none; b=LmPkREBh4Ivw9qqa97k+WdnUIkVL9UVmUWY8rHS240UKDW0DTkOeVDJEMLrQbC2gs4dEGB l+dGkZushRYXXhlnCqqY1OjxD0ftDV8gYI2VIfyvz8oqKPfyo/qSoB+BgzN7Sdp50+VXG2 Y0hcvuBZmoOET5GgqV3kPcpisWehviFy8kO5hcheQsBFN7lXc5/pgp/1RgVgpckNXHirRJ 0NFEgteEEoiF409rBZzK1Afibk4X0GSrMmD0ylhE7GT2cV3ASu8X4ExqScwTJpVJGGPrJN vDrYRFc+HNVKHyzvnrceywUgHJHZhYZeu3nN+dwe2cRS/4LcTImGYIFqhgCAZg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1698282620; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=cH294K2sBkAT8ePQQUe3/Xc3Db9f+zMDTPufl0+eT1o=; b=DvX1hBJ86kma73whcIEC5zAnaNxFjzpKf8jYqD+UuT+RtbF+jhsO/UnyBd60B3TiI5MBA9 9eOXDyWfaOBGNVYTtefGcvjGjCc9Iv6HaQ7GNn11yH7ouDki1R2+hDxbKm1qBcXM2Bdn59 SM4PFyZM7PDIZ2E7Vn8hj4TxijRTNijYK4ts4r0UX7ko7Qv0H4LAbaS44fbacm2W8E7Ovh OdjvbeOprD+C+CFbPJ9ajtTflsjnz5+kPokgRcsRxL5wkTWyd44fw5ibymnF6k1vrqm8GI K1FeboKtd0VnRwGt+uxZXMTd5lj6bp5cWaqdWnF8fNle5cdYgf9uFzlk+xbVIQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4SG7576Pndz1QSV; Thu, 26 Oct 2023 01:10:19 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39Q1AJrd048839; Thu, 26 Oct 2023 01:10:19 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39Q1AJAT048836; Thu, 26 Oct 2023 01:10:19 GMT (envelope-from git) Date: Thu, 26 Oct 2023 01:10:19 GMT Message-Id: <202310260110.39Q1AJAT048836@gitrepo.freebsd.org> To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org From: Jose Alonso Cardenas Marquez Subject: git: 5a0c6e41bf4b - main - security/caldera-ot: New port: caldera OT plugin and capabilities List-Id: Commits to the main branch of the FreeBSD ports repository List-Archive: https://lists.freebsd.org/archives/dev-commits-ports-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-ports-main@freebsd.org X-BeenThere: dev-commits-ports-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: acm X-Git-Repository: ports X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 5a0c6e41bf4b7d2d515b875aa146825bb5d17ae8 Auto-Submitted: auto-generated The branch main has been updated by acm: URL: https://cgit.FreeBSD.org/ports/commit/?id=5a0c6e41bf4b7d2d515b875aa146825bb5d17ae8 commit 5a0c6e41bf4b7d2d515b875aa146825bb5d17ae8 Author: Jose Alonso Cardenas Marquez AuthorDate: 2023-10-26 01:07:53 +0000 Commit: Jose Alonso Cardenas Marquez CommitDate: 2023-10-26 01:07:53 +0000 security/caldera-ot: New port: caldera OT plugin and capabilities A collection of plugins that extend Caldera to the Operational Technology (OT) environment. --- security/Makefile | 1 + security/caldera-ot/Makefile | 73 +++++ security/caldera-ot/distinfo | 9 + ...ection_1811b7f2-3a73-11eb-adc1-0242ac120002.yml | 21 ++ ...ection_47432648-5678-11eb-ae93-0242ac130002.yml | 23 ++ ...ection_73a8f024-656d-11eb-ae93-0242ac130002.yml | 21 ++ ...covery_b93bd80e-3a70-11eb-adc1-0242ac120002.yml | 21 ++ ...impact_1a2faf5a-4601-11eb-b378-0242ac130002.yml | 23 ++ ...impact_7888f6a0-454e-11eb-b378-0242ac130002.yml | 21 ++ ...yloads_17f06fa2-44e1-11eb-b378-0242ac130002.yml | 29 ++ ...ection_001e21ea-61b5-4b78-b79e-9d5687d819bd.yml | 22 ++ ...ection_3946b6da-c570-47cd-b63f-c13875297cb4.yml | 22 ++ ...ection_bc8961a2-7534-4b2a-bbc3-2456f58243be.yml | 22 ++ ...ection_d80b9cd5-b1d8-482a-a745-71d74f9d0885.yml | 22 ++ ...impact_056e6289-4cbf-417f-928a-d75125e4db4f.yml | 22 ++ ...impact_0f16b341-9730-4553-b6d6-8eb8def02c81.yml | 22 ++ ...impact_2a6e8c8e-f350-11ed-9156-23436b8f0e58.yml | 22 ++ ...impact_40f78a8f-2aaa-4b1b-872f-7c6b0f1ddf3e.yml | 22 ++ ...impact_d6991b6b-d3b2-4398-ad3f-d736ae09acf9.yml | 22 ++ ...impact_fe321da2-e183-44a3-b423-b8cba9a8bda0.yml | 22 ++ ...yloads_58aaab96-7191-4978-acec-a3b1deb03332.yml | 12 + security/caldera-ot/files/pkg-message.in | 18 ++ security/caldera-ot/pkg-descr | 2 + security/caldera-ot/pkg-plist | 321 +++++++++++++++++++++ 24 files changed, 815 insertions(+) diff --git a/security/Makefile b/security/Makefile index 5864a1775588..6a9a8b3e540b 100644 --- a/security/Makefile +++ b/security/Makefile @@ -66,6 +66,7 @@ SUBDIR += ca_root_nss SUBDIR += caesarcipher SUBDIR += caldera + SUBDIR += caldera-ot SUBDIR += calife SUBDIR += cardpeek SUBDIR += cargo-audit diff --git a/security/caldera-ot/Makefile b/security/caldera-ot/Makefile new file mode 100644 index 000000000000..60b56bdef547 --- /dev/null +++ b/security/caldera-ot/Makefile @@ -0,0 +1,73 @@ +PORTNAME= caldera-ot +DISTVERSION= 4.2.0 +CATEGORIES= security python + +MAINTAINER= acm@FreeBSD.org +COMMENT= caldera OT plugin and capabilities +WWW= https://github.com/mitre/caldera-ot + +LICENSE= APACHE20 +LICENSE_FILE= ${WRKSRC}/LICENSE + +BUILD_DEPENDS= bacnet-stack>0:devel/bacnet-stack \ + nuitka3:devel/nuitka +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}aiohttp>0:www/py-aiohttp@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}pymodbus>0:comms/py-pymodbus@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}pyserial>0:comms/py-pyserial@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}six>0:devel/py-six@${PY_FLAVOR} \ + ${LOCALBASE}/www/caldera/app/__init__.py:security/caldera + +USE_GITHUB= yes +GH_ACCOUNT= mitre +GH_PROJECT= ${PORTNAME} +GH_TAGNAME= 6c6b971d96de121da33f27aa6f80806835346b23 +GH_TUPLE= mitre:bacnet:745432c:bacnet/bacnet \ + mitre:dnp3:01e3748:dnp3/dnp3 \ + mitre:modbus:e47e259:modbus/modbus + +USES= compiler:c++11-lang dos2unix python + +DOS2UNIX_REGEX= .*\.([yml]) +CALDERA_USER= caldera +CALDERA_GROUP= caldera +USERS= ${CALDERA_USER} +GROUPS= ${CALDERA_GROUP} + +WWWDIR= ${PREFIX}/www/caldera + +SUB_FILES= pkg-message +SUB_LIST= WWWDIR=${WWWDIR} + +post-extract: + ${RM} -R ${WRKSRC}/.github + cd ${WRKSRC} && ${RM} -f .coveragerc .dockerignore .eslintrc.js .flake8 \ + .git* .pre* .stylelintrc.json Dockerfile + +post-patch: + ${REINPLACE_CMD} -i "" -e 's|.sync|.tcp|g' ${WRKSRC}/modbus/src/src/modbus/client.py + cd ${WRKSRC} && \ + ${FIND} . -type f -name "*.orig" -exec ${RM} "{}" \; + +do-build: + @${MKDIR} ${WRKDIR}/modbus_cli-build + cd ${WRKSRC}/bacnet/src/bacnet-stack/apps && \ + ${CC} readprop/main.c -I${LOCALBASE}/include -L${LOCALBASE}/lib \ + -lbacnet-stack -o ${WRKSRC}/bacnet/payloads/bacrp-freebsd + cd ${WRKSRC}/bacnet/src/bacnet-stack/apps && \ + ${CC} readprop/main.c -I${LOCALBASE}/include -L${LOCALBASE}/lib \ + -lbacnet-stack -o ${WRKSRC}/bacnet/payloads/bacwp-freebsd + cd ${WRKSRC}/modbus/src/src && \ + ${LOCALBASE}/bin/nuitka3 --standalone --onefile \ + --output-filename=modbus_cli-freebsd --output-dir=${WRKDIR}/modbus_cli-build modbus_cli.py + +do-install: + @${MKDIR} ${STAGEDIR}${WWWDIR}/plugins/bacnet + @${MKDIR} ${STAGEDIR}${WWWDIR}/plugins/dnp3 + @${MKDIR} ${STAGEDIR}${WWWDIR}/plugins/modbus + @cd ${WRKSRC}/bacnet && ${COPYTREE_SHARE} . ${STAGEDIR}/${WWWDIR}/plugins/bacnet + @cd ${WRKSRC}/dnp3 && ${COPYTREE_SHARE} . ${STAGEDIR}/${WWWDIR}/plugins/dnp3 + @cd ${WRKSRC}/modbus && ${COPYTREE_SHARE} . ${STAGEDIR}/${WWWDIR}/plugins/modbus + ${INSTALL_PROGRAM} ${WRKDIR}/modbus_cli-build/modbus_cli-freebsd \ + ${STAGEDIR}/${WWWDIR}/plugins/modbus/payloads/ + +.include diff --git a/security/caldera-ot/distinfo b/security/caldera-ot/distinfo new file mode 100644 index 000000000000..15e419584f6c --- /dev/null +++ b/security/caldera-ot/distinfo @@ -0,0 +1,9 @@ +TIMESTAMP = 1698267655 +SHA256 (mitre-caldera-ot-4.2.0-6c6b971d96de121da33f27aa6f80806835346b23_GH0.tar.gz) = a4568765b1a373870ae00b781aa251ac94af089b46a3239bf743b0430405844e +SIZE (mitre-caldera-ot-4.2.0-6c6b971d96de121da33f27aa6f80806835346b23_GH0.tar.gz) = 5887 +SHA256 (mitre-bacnet-745432c_GH0.tar.gz) = 60763dc1f3670124f3ec0caf11dd2a3c71def7689c6e90af66864e9924853ad7 +SIZE (mitre-bacnet-745432c_GH0.tar.gz) = 2493167 +SHA256 (mitre-dnp3-01e3748_GH0.tar.gz) = 5324a9910b22dd101ef52b2b48334f67d4e9d1f05a1abaa02b7b097a96dbee64 +SIZE (mitre-dnp3-01e3748_GH0.tar.gz) = 97589582 +SHA256 (mitre-modbus-e47e259_GH0.tar.gz) = 2094210dbf96c0f60d7d5146e4ec7855e19b4bc23b47d51b906aa5961222c14d +SIZE (mitre-modbus-e47e259_GH0.tar.gz) = 38272647 diff --git a/security/caldera-ot/files/patch-bacnet-data-abilities-collection_1811b7f2-3a73-11eb-adc1-0242ac120002.yml b/security/caldera-ot/files/patch-bacnet-data-abilities-collection_1811b7f2-3a73-11eb-adc1-0242ac120002.yml new file mode 100644 index 000000000000..e0c317f9e378 --- /dev/null +++ b/security/caldera-ot/files/patch-bacnet-data-abilities-collection_1811b7f2-3a73-11eb-adc1-0242ac120002.yml @@ -0,0 +1,21 @@ +--- bacnet/data/abilities/collection/1811b7f2-3a73-11eb-adc1-0242ac120002.yml 2023-10-25 16:29:02.618965000 -0500 ++++ bacnet/data/abilities/collection/1811b7f2-3a73-11eb-adc1-0242ac120002.yml 2023-10-25 16:35:40.258610000 -0500 +@@ -10,6 +10,11 @@ + name: Automated Collection + repeatable: True + platforms: ++ freebsd: ++ sh: ++ timeout: 360 ++ command: | ++ bacepics #{bacnet.device.instance} + linux: + sh: + timeout: 360 +@@ -23,4 +28,4 @@ + command: | + .\bacepics.exe #{bacnet.device.instance} + payloads: +- - bacepics.exe +\ No newline at end of file ++ - bacepics.exe diff --git a/security/caldera-ot/files/patch-bacnet-data-abilities-collection_47432648-5678-11eb-ae93-0242ac130002.yml b/security/caldera-ot/files/patch-bacnet-data-abilities-collection_47432648-5678-11eb-ae93-0242ac130002.yml new file mode 100644 index 000000000000..eed1e7e34f18 --- /dev/null +++ b/security/caldera-ot/files/patch-bacnet-data-abilities-collection_47432648-5678-11eb-ae93-0242ac130002.yml @@ -0,0 +1,23 @@ +--- bacnet/data/abilities/collection/47432648-5678-11eb-ae93-0242ac130002.yml 2023-10-25 16:29:10.047474000 -0500 ++++ bacnet/data/abilities/collection/47432648-5678-11eb-ae93-0242ac130002.yml 2023-10-25 16:36:11.635820000 -0500 +@@ -10,6 +10,13 @@ + name: Point & Tag Identification + repeatable: True + platforms: ++ freebsd: ++ sh: ++ timeout: 360 ++ command: | ++ ./bacrp-freebsd #{bacnet.device.instance} #{bacnet.obj.type} #{bacnet.obj.instance} #{bacnet.obj.property} #{bacnet.read.index} ++ payloads: ++ - bacrp-freebsd + linux: + sh: + timeout: 360 +@@ -23,4 +30,4 @@ + command: | + .\bacrp.exe #{bacnet.device.instance} #{bacnet.obj.type} #{bacnet.obj.instance} #{bacnet.obj.property} #{bacnet.read.index} + payloads: +- - bacrp.exe +\ No newline at end of file ++ - bacrp.exe diff --git a/security/caldera-ot/files/patch-bacnet-data-abilities-collection_73a8f024-656d-11eb-ae93-0242ac130002.yml b/security/caldera-ot/files/patch-bacnet-data-abilities-collection_73a8f024-656d-11eb-ae93-0242ac130002.yml new file mode 100644 index 000000000000..b2832e7d38d6 --- /dev/null +++ b/security/caldera-ot/files/patch-bacnet-data-abilities-collection_73a8f024-656d-11eb-ae93-0242ac130002.yml @@ -0,0 +1,21 @@ +--- bacnet/data/abilities/collection/73a8f024-656d-11eb-ae93-0242ac130002.yml 2023-10-25 16:29:17.712333000 -0500 ++++ bacnet/data/abilities/collection/73a8f024-656d-11eb-ae93-0242ac130002.yml 2023-10-25 16:36:42.766893000 -0500 +@@ -9,6 +9,11 @@ + attack_id: T0801 + name: Monitor Process State + platforms: ++ freebsd: ++ sh: ++ timeout: 360 ++ command: | ++ bacarf #{bacnet.device.instance} #{bacnet.file.instance} #{bacnet.read.local_name} + linux: + sh: + timeout: 360 +@@ -22,4 +27,4 @@ + command: | + .\bacarf.exe #{bacnet.device.instance} #{bacnet.file.instance} #{bacnet.read.local_name} + payloads: +- - bacarf.exe +\ No newline at end of file ++ - bacarf.exe diff --git a/security/caldera-ot/files/patch-bacnet-data-abilities-discovery_b93bd80e-3a70-11eb-adc1-0242ac120002.yml b/security/caldera-ot/files/patch-bacnet-data-abilities-discovery_b93bd80e-3a70-11eb-adc1-0242ac120002.yml new file mode 100644 index 000000000000..5cf9f6a5e6eb --- /dev/null +++ b/security/caldera-ot/files/patch-bacnet-data-abilities-discovery_b93bd80e-3a70-11eb-adc1-0242ac120002.yml @@ -0,0 +1,21 @@ +--- bacnet/data/abilities/discovery/b93bd80e-3a70-11eb-adc1-0242ac120002.yml 2023-10-25 16:36:50.057204000 -0500 ++++ bacnet/data/abilities/discovery/b93bd80e-3a70-11eb-adc1-0242ac120002.yml 2023-10-25 16:38:29.989935000 -0500 +@@ -10,6 +10,11 @@ + name: Remote System Discovery + repeatable: True + platforms: ++ freebsd: ++ sh: ++ timeout: 360 ++ command: | ++ bacwi + linux: + sh: + timeout: 360 +@@ -23,4 +28,4 @@ + command: | + .\bacwi.exe + payloads: +- - bacwi.exe +\ No newline at end of file ++ - bacwi.exe diff --git a/security/caldera-ot/files/patch-bacnet-data-abilities-impact_1a2faf5a-4601-11eb-b378-0242ac130002.yml b/security/caldera-ot/files/patch-bacnet-data-abilities-impact_1a2faf5a-4601-11eb-b378-0242ac130002.yml new file mode 100644 index 000000000000..086565779810 --- /dev/null +++ b/security/caldera-ot/files/patch-bacnet-data-abilities-impact_1a2faf5a-4601-11eb-b378-0242ac130002.yml @@ -0,0 +1,23 @@ +--- bacnet/data/abilities/impact/1a2faf5a-4601-11eb-b378-0242ac130002.yml 2023-10-25 16:38:37.618186000 -0500 ++++ bacnet/data/abilities/impact/1a2faf5a-4601-11eb-b378-0242ac130002.yml 2023-10-25 16:39:38.892194000 -0500 +@@ -10,6 +10,13 @@ + name: Manipulation of Control + repeatable: True + platforms: ++ freebsd: ++ sh: ++ timeout: 360 ++ command: | ++ ./bacwp-freebsd #{bacnet.device.instance} #{bacnet.obj.type} #{bacnet.obj.instance} #{bacnet.obj.property} #{bacnet.write.priority} #{bacnet.write.index} #{bacnet.write.tag} #{bacnet.write.value} ++ payloads: ++ - bacwp-freebsd + linux: + sh: + timeout: 360 +@@ -23,4 +30,4 @@ + command: | + .\bacwp.exe #{bacnet.device.instance} #{bacnet.obj.type} #{bacnet.obj.instance} #{bacnet.obj.property} #{bacnet.write.priority} #{bacnet.write.index} #{bacnet.write.tag} #{bacnet.write.value} + payloads: +- - bacwp.exe +\ No newline at end of file ++ - bacwp.exe diff --git a/security/caldera-ot/files/patch-bacnet-data-abilities-impact_7888f6a0-454e-11eb-b378-0242ac130002.yml b/security/caldera-ot/files/patch-bacnet-data-abilities-impact_7888f6a0-454e-11eb-b378-0242ac130002.yml new file mode 100644 index 000000000000..ad84f14a2429 --- /dev/null +++ b/security/caldera-ot/files/patch-bacnet-data-abilities-impact_7888f6a0-454e-11eb-b378-0242ac130002.yml @@ -0,0 +1,21 @@ +--- bacnet/data/abilities/impact/7888f6a0-454e-11eb-b378-0242ac130002.yml 2023-10-25 16:39:44.749679000 -0500 ++++ bacnet/data/abilities/impact/7888f6a0-454e-11eb-b378-0242ac130002.yml 2023-10-25 16:40:15.061949000 -0500 +@@ -9,6 +9,11 @@ + attack_id: T0831 + name: Manipulation of Control + platforms: ++ freebsd: ++ sh: ++ timeout: 360 ++ command: | ++ bacawf #{bacnet.device.instance} #{bacnet.file.instance} #{bacnet.write.local_name} #{bacnet.write.octet_offset} + linux: + sh: + timeout: 360 +@@ -22,4 +27,4 @@ + command: | + .\bacawf.exe #{bacnet.device.instance} #{bacnet.file.instance} #{bacnet.write.local_name} #{bacnet.write.octet_offset} + payloads: +- - bacawf.exe +\ No newline at end of file ++ - bacawf.exe diff --git a/security/caldera-ot/files/patch-bacnet-payloads_17f06fa2-44e1-11eb-b378-0242ac130002.yml b/security/caldera-ot/files/patch-bacnet-payloads_17f06fa2-44e1-11eb-b378-0242ac130002.yml new file mode 100644 index 000000000000..8856a69d707c --- /dev/null +++ b/security/caldera-ot/files/patch-bacnet-payloads_17f06fa2-44e1-11eb-b378-0242ac130002.yml @@ -0,0 +1,29 @@ +--- bacnet/payloads/17f06fa2-44e1-11eb-b378-0242ac130002.yml 2023-10-25 18:28:04.475705000 -0500 ++++ bacnet/payloads/17f06fa2-44e1-11eb-b378-0242ac130002.yml 2023-10-25 18:29:24.972817000 -0500 +@@ -21,6 +21,9 @@ + id: 6ecaedd8-656c-11eb-ae93-0242ac130002 + + # WriteProp ++ bacwp-freebsd: ++ description: BACnet WriteProperty Service - FreeBSD ++ id: 3781c3ee-738e-11ee-9734-8851fb56e3b2 + bacwp: + description: BACnet WriteProperty Service - Linux + id: 1a2faf5a-4601-11eb-b378-0242ac130002 +@@ -29,6 +32,9 @@ + id: 82b101d4-656c-11eb-ae93-0242ac130002 + + # ReadProp ++ bacrp-freebsd: ++ description: BACnet ReadProperty Service - FreeBSD ++ id: 4b6ce399-738e-11ee-9734-8851fb56e3b2 + bacrp: + description: BACnet ReadProperty Service - Linux + id: 748d5c80-5679-11eb-ae93-0242ac130002 +@@ -50,4 +56,4 @@ + id: e2e4d612-656b-11eb-ae93-0242ac130002 + bacarf.exe: + description: BACnet AtomicReadFile - Windows +- id: 938f09a6-656c-11eb-ae93-0242ac130002 +\ No newline at end of file ++ id: 938f09a6-656c-11eb-ae93-0242ac130002 diff --git a/security/caldera-ot/files/patch-modbus-data-abilities-collection_001e21ea-61b5-4b78-b79e-9d5687d819bd.yml b/security/caldera-ot/files/patch-modbus-data-abilities-collection_001e21ea-61b5-4b78-b79e-9d5687d819bd.yml new file mode 100644 index 000000000000..8a1355cd7026 --- /dev/null +++ b/security/caldera-ot/files/patch-modbus-data-abilities-collection_001e21ea-61b5-4b78-b79e-9d5687d819bd.yml @@ -0,0 +1,22 @@ +--- modbus/data/abilities/collection/001e21ea-61b5-4b78-b79e-9d5687d819bd.yml 2023-10-25 17:55:53.170972000 -0500 ++++ modbus/data/abilities/collection/001e21ea-61b5-4b78-b79e-9d5687d819bd.yml 2023-10-25 17:56:52.419868000 -0500 +@@ -12,6 +12,12 @@ + name: Point & Tag Identification + repeatable: True + platforms: ++ freebsd: ++ sh: ++ command: ++ './modbus_cli-freebsd #{modbus.all.deviceip} --port #{modbus.all.deviceport} read_di #{modbus.read_di.start} #{modbus.read_di.count}' ++ payloads: ++ - modbus_cli-freebsd + linux: + sh: + command: +@@ -23,4 +29,4 @@ + command: + '.\modbus_cli.exe #{modbus.all.deviceip} --port #{modbus.all.deviceport} read_di #{modbus.read_di.start} #{modbus.read_di.count}' + payloads: +- - modbus_cli.exe +\ No newline at end of file ++ - modbus_cli.exe diff --git a/security/caldera-ot/files/patch-modbus-data-abilities-collection_3946b6da-c570-47cd-b63f-c13875297cb4.yml b/security/caldera-ot/files/patch-modbus-data-abilities-collection_3946b6da-c570-47cd-b63f-c13875297cb4.yml new file mode 100644 index 000000000000..82d5e4f480a5 --- /dev/null +++ b/security/caldera-ot/files/patch-modbus-data-abilities-collection_3946b6da-c570-47cd-b63f-c13875297cb4.yml @@ -0,0 +1,22 @@ +--- modbus/data/abilities/collection/3946b6da-c570-47cd-b63f-c13875297cb4.yml 2023-10-25 17:55:59.073472000 -0500 ++++ modbus/data/abilities/collection/3946b6da-c570-47cd-b63f-c13875297cb4.yml 2023-10-25 17:57:16.281999000 -0500 +@@ -12,6 +12,12 @@ + name: Point & Tag Identification + repeatable: True + platforms: ++ freebsd: ++ sh: ++ command: ++ './modbus_cli-freebsd #{modbus.all.deviceip} --port #{modbus.all.deviceport} read_ir #{modbus.read_ir.start} #{modbus.read_ir.count}' ++ payloads: ++ - modbus_cli-freebsd + linux: + sh: + command: +@@ -23,4 +29,4 @@ + command: + '.\modbus_cli.exe #{modbus.all.deviceip} --port #{modbus.all.deviceport} read_ir #{modbus.read_ir.start} #{modbus.read_ir.count}' + payloads: +- - modbus_cli.exe +\ No newline at end of file ++ - modbus_cli.exe diff --git a/security/caldera-ot/files/patch-modbus-data-abilities-collection_bc8961a2-7534-4b2a-bbc3-2456f58243be.yml b/security/caldera-ot/files/patch-modbus-data-abilities-collection_bc8961a2-7534-4b2a-bbc3-2456f58243be.yml new file mode 100644 index 000000000000..3c188059c9ea --- /dev/null +++ b/security/caldera-ot/files/patch-modbus-data-abilities-collection_bc8961a2-7534-4b2a-bbc3-2456f58243be.yml @@ -0,0 +1,22 @@ +--- modbus/data/abilities/collection/bc8961a2-7534-4b2a-bbc3-2456f58243be.yml 2023-10-25 17:56:05.290153000 -0500 ++++ modbus/data/abilities/collection/bc8961a2-7534-4b2a-bbc3-2456f58243be.yml 2023-10-25 17:57:41.726715000 -0500 +@@ -12,6 +12,12 @@ + name: Point & Tag Identification + repeatable: True + platforms: ++ freebsd: ++ sh: ++ command: ++ './modbus_cli-freebsd #{modbus.all.deviceip} --port #{modbus.all.deviceport} read_hr #{modbus.read_hr.start} #{modbus.read_hr.count}' ++ payloads: ++ - modbus_cli-freebsd + linux: + sh: + command: +@@ -23,4 +29,4 @@ + command: + '.\modbus_cli.exe #{modbus.all.deviceip} --port #{modbus.all.deviceport} read_hr #{modbus.read_hr.start} #{modbus.read_hr.count}' + payloads: +- - modbus_cli.exe +\ No newline at end of file ++ - modbus_cli.exe diff --git a/security/caldera-ot/files/patch-modbus-data-abilities-collection_d80b9cd5-b1d8-482a-a745-71d74f9d0885.yml b/security/caldera-ot/files/patch-modbus-data-abilities-collection_d80b9cd5-b1d8-482a-a745-71d74f9d0885.yml new file mode 100644 index 000000000000..53774dac07e7 --- /dev/null +++ b/security/caldera-ot/files/patch-modbus-data-abilities-collection_d80b9cd5-b1d8-482a-a745-71d74f9d0885.yml @@ -0,0 +1,22 @@ +--- modbus/data/abilities/collection/d80b9cd5-b1d8-482a-a745-71d74f9d0885.yml 2023-10-25 17:56:17.950262000 -0500 ++++ modbus/data/abilities/collection/d80b9cd5-b1d8-482a-a745-71d74f9d0885.yml 2023-10-25 17:58:08.150392000 -0500 +@@ -12,6 +12,12 @@ + name: Point & Tag Identification + repeatable: True + platforms: ++ freebsd: ++ sh: ++ command: ++ './modbus_cli-freebsd #{modbus.all.deviceip} --port #{modbus.all.deviceport} read_c #{modbus.read_c.start} #{modbus.read_c.count}' ++ payloads: ++ - modbus_cli-freebsd + linux: + sh: + command: +@@ -23,4 +29,4 @@ + command: + '.\modbus_cli.exe #{modbus.all.deviceip} --port #{modbus.all.deviceport} read_c #{modbus.read_c.start} #{modbus.read_c.count}' + payloads: +- - modbus_cli.exe +\ No newline at end of file ++ - modbus_cli.exe diff --git a/security/caldera-ot/files/patch-modbus-data-abilities-impact_056e6289-4cbf-417f-928a-d75125e4db4f.yml b/security/caldera-ot/files/patch-modbus-data-abilities-impact_056e6289-4cbf-417f-928a-d75125e4db4f.yml new file mode 100644 index 000000000000..513df5f3c7b6 --- /dev/null +++ b/security/caldera-ot/files/patch-modbus-data-abilities-impact_056e6289-4cbf-417f-928a-d75125e4db4f.yml @@ -0,0 +1,22 @@ +--- modbus/data/abilities/impact/056e6289-4cbf-417f-928a-d75125e4db4f.yml 2023-10-25 17:58:18.590805000 -0500 ++++ modbus/data/abilities/impact/056e6289-4cbf-417f-928a-d75125e4db4f.yml 2023-10-25 17:59:11.454596000 -0500 +@@ -12,6 +12,12 @@ + name: Manipulation of Control + repeatable: true + platforms: ++ freebsd: ++ sh: ++ command: ++ './modbus_cli-freebsd #{modbus.all.deviceip} --port #{modbus.all.deviceport} write_c #{modbus.write_c.start} #{modbus.write_c.value}' ++ payloads: ++ - modbus_cli-freebsd + linux: + sh: + command: +@@ -23,4 +29,4 @@ + command: + '.\modbus_cli.exe #{modbus.all.deviceip} --port #{modbus.all.deviceport} write_c #{modbus.write_c.start} #{modbus.write_c.value}' + payloads: +- - modbus_cli.exe +\ No newline at end of file ++ - modbus_cli.exe diff --git a/security/caldera-ot/files/patch-modbus-data-abilities-impact_0f16b341-9730-4553-b6d6-8eb8def02c81.yml b/security/caldera-ot/files/patch-modbus-data-abilities-impact_0f16b341-9730-4553-b6d6-8eb8def02c81.yml new file mode 100644 index 000000000000..fda2f8fb2761 --- /dev/null +++ b/security/caldera-ot/files/patch-modbus-data-abilities-impact_0f16b341-9730-4553-b6d6-8eb8def02c81.yml @@ -0,0 +1,22 @@ +--- modbus/data/abilities/impact/0f16b341-9730-4553-b6d6-8eb8def02c81.yml 2023-10-25 17:58:23.307634000 -0500 ++++ modbus/data/abilities/impact/0f16b341-9730-4553-b6d6-8eb8def02c81.yml 2023-10-25 17:59:48.668864000 -0500 +@@ -12,6 +12,12 @@ + name: Manipulation of Control + repeatable: True + platforms: ++ freebsd: ++ sh: ++ command: ++ './modbus_cli-freebsd #{modbus.all.deviceip} --port #{modbus.all.deviceport} write_multi_r #{modbus.write_multi_r.start} #{modbus.write_multi_r.value} #{modbus.write_multi_r.count}' ++ payloads: ++ - modbus_cli-freebsd + linux: + sh: + command: +@@ -23,4 +29,4 @@ + command: + '.\modbus_cli.exe #{modbus.all.deviceip} --port #{modbus.all.deviceport} write_multi_r #{modbus.write_multi_r.start} #{modbus.write_multi_r.value} #{modbus.write_multi_r.count}' + payloads: +- - modbus_cli.exe +\ No newline at end of file ++ - modbus_cli.exe diff --git a/security/caldera-ot/files/patch-modbus-data-abilities-impact_2a6e8c8e-f350-11ed-9156-23436b8f0e58.yml b/security/caldera-ot/files/patch-modbus-data-abilities-impact_2a6e8c8e-f350-11ed-9156-23436b8f0e58.yml new file mode 100644 index 000000000000..e3782766543b --- /dev/null +++ b/security/caldera-ot/files/patch-modbus-data-abilities-impact_2a6e8c8e-f350-11ed-9156-23436b8f0e58.yml @@ -0,0 +1,22 @@ +--- modbus/data/abilities/impact/2a6e8c8e-f350-11ed-9156-23436b8f0e58.yml 2023-10-25 17:58:29.045645000 -0500 ++++ modbus/data/abilities/impact/2a6e8c8e-f350-11ed-9156-23436b8f0e58.yml 2023-10-25 18:00:22.668282000 -0500 +@@ -13,6 +13,12 @@ + name: Manipulation of Control + repeatable: True + platforms: ++ freebsd: ++ sh: ++ command: ++ './modbus_cli-freebsd #{modbus.all.deviceip} --port #{modbus.all.deviceport} fuzz_r #{modbus.fuzzreg.start} #{modbus.fuzzreg.end} #{modbus.fuzzreg.count} --min #{modbus.fuzzreg.min} --max #{modbus.fuzzreg.max} --wait #{modbus.fuzzreg.wait}' ++ payloads: ++ - modbus_cli-freebsd + linux: + sh: + command: +@@ -24,4 +30,4 @@ + command: + '.\modbus_cli.exe #{modbus.all.deviceip} --port #{modbus.all.deviceport} fuzz_r #{modbus.fuzzreg.start} #{modbus.fuzzreg.end} #{modbus.fuzzreg.count} --min #{modbus.fuzzreg.min} --max #{modbus.fuzzreg.max} --wait #{modbus.fuzzreg.wait}' + payloads: +- - modbus_cli.exe +\ No newline at end of file ++ - modbus_cli.exe diff --git a/security/caldera-ot/files/patch-modbus-data-abilities-impact_40f78a8f-2aaa-4b1b-872f-7c6b0f1ddf3e.yml b/security/caldera-ot/files/patch-modbus-data-abilities-impact_40f78a8f-2aaa-4b1b-872f-7c6b0f1ddf3e.yml new file mode 100644 index 000000000000..cf02689d28c4 --- /dev/null +++ b/security/caldera-ot/files/patch-modbus-data-abilities-impact_40f78a8f-2aaa-4b1b-872f-7c6b0f1ddf3e.yml @@ -0,0 +1,22 @@ +--- modbus/data/abilities/impact/40f78a8f-2aaa-4b1b-872f-7c6b0f1ddf3e.yml 2023-10-25 17:58:36.482653000 -0500 ++++ modbus/data/abilities/impact/40f78a8f-2aaa-4b1b-872f-7c6b0f1ddf3e.yml 2023-10-25 18:00:59.579356000 -0500 +@@ -13,6 +13,12 @@ + name: Manipulation of Control + repeatable: True + platforms: ++ freebsd: ++ sh: ++ command: ++ './modbus_cli-freebsd #{modbus.all.deviceip} --port #{modbus.all.deviceport} fuzz_c #{modbus.fuzzcoil.start} #{modbus.fuzzcoil.end} #{modbus.fuzzcoil.count} --wait #{modbus.fuzzcoil.wait}' ++ payloads: ++ - modbus_cli-freebsd + linux: + sh: + command: +@@ -24,4 +30,4 @@ + command: + '.\modbus_cli.exe #{modbus.all.deviceip} --port #{modbus.all.deviceport} fuzz_c #{modbus.fuzzcoil.start} #{modbus.fuzzcoil.end} #{modbus.fuzzcoil.count} --wait #{modbus.fuzzcoil.wait}' + payloads: +- - modbus_cli.exe +\ No newline at end of file ++ - modbus_cli.exe diff --git a/security/caldera-ot/files/patch-modbus-data-abilities-impact_d6991b6b-d3b2-4398-ad3f-d736ae09acf9.yml b/security/caldera-ot/files/patch-modbus-data-abilities-impact_d6991b6b-d3b2-4398-ad3f-d736ae09acf9.yml new file mode 100644 index 000000000000..591bf61d499b --- /dev/null +++ b/security/caldera-ot/files/patch-modbus-data-abilities-impact_d6991b6b-d3b2-4398-ad3f-d736ae09acf9.yml @@ -0,0 +1,22 @@ +--- modbus/data/abilities/impact/d6991b6b-d3b2-4398-ad3f-d736ae09acf9.yml 2023-10-25 17:58:41.923095000 -0500 ++++ modbus/data/abilities/impact/d6991b6b-d3b2-4398-ad3f-d736ae09acf9.yml 2023-10-25 18:01:23.478626000 -0500 +@@ -12,6 +12,12 @@ + name: Manipulation of Control + repeatable: true + platforms: ++ freebsd: ++ sh: ++ command: ++ './modbus_cli-freebsd #{modbus.all.deviceip} --port #{modbus.all.deviceport} write_r #{modbus.write_r.start} #{modbus.write_r.value}' ++ payloads: ++ - modbus_cli-freebsd + linux: + sh: + command: +@@ -23,4 +29,4 @@ + command: + '.\modbus_cli.exe #{modbus.all.deviceip} --port #{modbus.all.deviceport} write_r #{modbus.write_r.start} #{modbus.write_r.value}' + payloads: +- - modbus_cli.exe +\ No newline at end of file ++ - modbus_cli.exe diff --git a/security/caldera-ot/files/patch-modbus-data-abilities-impact_fe321da2-e183-44a3-b423-b8cba9a8bda0.yml b/security/caldera-ot/files/patch-modbus-data-abilities-impact_fe321da2-e183-44a3-b423-b8cba9a8bda0.yml new file mode 100644 index 000000000000..c0a9f140d4fc --- /dev/null +++ b/security/caldera-ot/files/patch-modbus-data-abilities-impact_fe321da2-e183-44a3-b423-b8cba9a8bda0.yml @@ -0,0 +1,22 @@ +--- modbus/data/abilities/impact/fe321da2-e183-44a3-b423-b8cba9a8bda0.yml 2023-10-25 17:58:47.295322000 -0500 ++++ modbus/data/abilities/impact/fe321da2-e183-44a3-b423-b8cba9a8bda0.yml 2023-10-25 18:01:58.004852000 -0500 +@@ -12,6 +12,12 @@ + name: Manipulation of Control + repeatable: True + platforms: ++ freebsd: ++ sh: ++ command: ++ './modbus_cli-freebsd #{modbus.all.deviceip} --port #{modbus.all.deviceport} write_multi_c #{modbus.write_multi_c.start} #{modbus.write_multi_c.value} #{modbus.write_multi_c.count}' ++ payloads: ++ - modbus_cli-freebsd + linux: + sh: + command: +@@ -23,4 +29,4 @@ + command: + '.\modbus_cli.exe #{modbus.all.deviceip} --port #{modbus.all.deviceport} write_multi_c #{modbus.write_multi_c.start} #{modbus.write_multi_c.value} #{modbus.write_multi_c.count}' + payloads: +- - modbus_cli.exe +\ No newline at end of file ++ - modbus_cli.exe diff --git a/security/caldera-ot/files/patch-modbus-payloads_58aaab96-7191-4978-acec-a3b1deb03332.yml b/security/caldera-ot/files/patch-modbus-payloads_58aaab96-7191-4978-acec-a3b1deb03332.yml new file mode 100644 index 000000000000..0cb9891b1cb0 --- /dev/null +++ b/security/caldera-ot/files/patch-modbus-payloads_58aaab96-7191-4978-acec-a3b1deb03332.yml @@ -0,0 +1,12 @@ +--- modbus/payloads/58aaab96-7191-4978-acec-a3b1deb03332.yml 2023-10-25 18:08:58.237967000 -0500 ++++ modbus/payloads/58aaab96-7191-4978-acec-a3b1deb03332.yml 2023-10-25 18:09:40.129650000 -0500 +@@ -3,6 +3,9 @@ + id: 58aaab96-7191-4978-acec-a3b1deb03332 + name: Modbus Payloads + standard_payloads: ++ modbus_cli-freebsd: ++ description: Modbus Client program (FreeBSD) ++ id: 6f914083-738b-11ee-9734-8851fb56e3b2 + modbus_cli: + description: Modbus Client program (Linux) + id: 090b9e5d-257e-4af5-a3ac-af1f6f5b1c10 diff --git a/security/caldera-ot/files/pkg-message.in b/security/caldera-ot/files/pkg-message.in new file mode 100644 index 000000000000..d6bee52614d8 --- /dev/null +++ b/security/caldera-ot/files/pkg-message.in @@ -0,0 +1,18 @@ +[ +{ type: install + message: <