Malicious code in kafka-helmsman (PyPI)
--- _-= Per source details. Do not edit below this line.=-_ ## Source: amazon-inspector (75536e8621da28a0e941bd4a607da879a64ab71214e908992bf14840ed9a20b2) The sdist for kafka-helmsman 99.0.5 is a dependency-confusion placeholder targeting the internal Tesla project name github.com/teslamotors/kafka-helmsman. setup.py contains no build logic; its top-level code starts a daemon thread that collects hostname, current working directory, os.uname output, a timestamp, and a UUID, then POSTs the JSON body to https://webhook.site/bf5cb178-e0cf-43b6-8b1e-fb5d2f6ea9c9 and additionally transmits the same payload to the OAST host jw1yrpkm5xpav.httpcollaborator.com both over HTTPS and via DNS lookups (nslookup/getent/dig) with a base64-url path. Because setup.py executes during pip metadata and wheel build, the beacon fires on any default `pip install kafka-helmsman` and on any resolver that evaluates the sdist. The package declares packages=[] and py_modules=[] and ships no functional kafka tooling, so an installer that mis-resolved the public name instead of the internal one receives only the exfiltration payload. README framing of the artifact as Bugcrowd/Tesla research does not change the behavior: installer-identifying data is sent to hardcoded third-party endpoints controlled by the author. ## Source: kam193 (edc880a17d2b3a9eaeadd0a074e6debc3f507d7afbd4ac8f5c4928209fadbcde) Installing the package or importing the module exfiltrates basic information about the host, and the package h
- Products
- kafka-helmsman
- Affected versions
- 99.0.1, 99.0.2, 99.0.3, 99.0.4, 99.0.5, 99.0.6
- Fixed versions
- Not specified
- CVEs
- Not specified
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 28 Oct 2026, 10:35 UTC · Revision 1
Source evidence
--- _-= Per source details. Do not edit below this line.=-_ ## Source: amazon-inspector (75536e8621da28a0e941bd4a607da879a64ab71214e908992bf14840ed9a20b2) The sdist for kafka-helmsman 99.0.5 is a dependency-confusion placeholder targeting the internal Tesla project name github.com/teslamotors/kafka-helmsman. setup.py contains no build logic; its top-level code starts a daemon thread that collects hostname, current working directory, os.uname output, a timestamp, and a UUID, then POSTs the JSON body to https://webhook.site/bf5cb178-e0cf-43b6-8b1e-fb5d2f6ea9c9 and additionally transmits the same payload to the OAST host jw1yrpkm5xpav.httpcollaborator.com both over HTTPS and via DNS lookups (nslookup/getent/dig) with a base64-url path. Because setup.py executes during pip metadata and wheel build, the beacon fires on any default `pip install kafka-helmsman` and on any resolver that evaluates the sdist. The package declares packages=[] and py_modules=[] and ships no functional kafka tooling, so an installer that mis-resolved the public name instead of the internal one receives only the exfiltration payload. README framing of the artifact as Bugcrowd/Tesla research does not change the behavior: installer-identifying data is sent to hardcoded third-party endpoints controlled by the author. ## Source: kam193 (edc880a17d2b3a9eaeadd0a074e6debc3f507d7afbd4ac8f5c4928209fadbcde) Installing the package or importing the module exfiltrates basic information about the host, and the package h
osv:MAL-2026-17702
kafka-helmsman
Fixed versions: Not specified
Complete source record
{
"id": "f4a627d34ee02f1cc40a7a2cb56f364155fa9026bebdf87873517c67b28ab142",
"url": "https://osv.dev/vulnerability/MAL-2026-17702",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "Malicious code in kafka-helmsman (PyPI)",
"summary": "--- _-= Per source details. Do not edit below this line.=-_ ## Source: amazon-inspector (75536e8621da28a0e941bd4a607da879a64ab71214e908992bf14840ed9a20b2) The sdist for kafka-helmsman 99.0.5 is a dependency-confusion placeholder targeting the internal Tesla project name github.com/teslamotors/kafka-helmsman. setup.py contains no build logic; its top-level code starts a daemon thread that collects hostname, current working directory, os.uname output, a timestamp, and a UUID, then POSTs the JSON body to https://webhook.site/bf5cb178-e0cf-43b6-8b1e-fb5d2f6ea9c9 and additionally transmits the same payload to the OAST host jw1yrpkm5xpav.httpcollaborator.com both over HTTPS and via DNS lookups (nslookup/getent/dig) with a base64-url path. Because setup.py executes during pip metadata and wheel build, the beacon fires on any default `pip install kafka-helmsman` and on any resolver that evaluates the sdist. The package declares packages=[] and py_modules=[] and ships no functional kafka tooling, so an installer that mis-resolved the public name instead of the internal one receives only the exfiltration payload. README framing of the artifact as Bugcrowd/Tesla research does not change the behavior: installer-identifying data is sent to hardcoded third-party endpoints controlled by the author. ## Source: kam193 (edc880a17d2b3a9eaeadd0a074e6debc3f507d7afbd4ac8f5c4928209fadbcde) Installing the package or importing the module exfiltrates basic information about the host, and the package h",
"evidence": "osv:MAL-2026-17702",
"products": [
{
"name": {
"value": "kafka-helmsman",
"evidence": "/affected/0/package/name"
},
"prerequisites": [],
"fixed_versions": [],
"affected_versions": [
{
"value": "99.0.1",
"evidence": "/affected/0/versions"
},
{
"value": "99.0.2",
"evidence": "/affected/0/versions"
},
{
"value": "99.0.3",
"evidence": "/affected/0/versions"
},
{
"value": "99.0.4",
"evidence": "/affected/0/versions"
},
{
"value": "99.0.5",
"evidence": "/affected/0/versions"
},
{
"value": "99.0.6",
"evidence": "/affected/0/versions"
}
]
}
],
"severity": "unknown",
"structured": {
"id": "MAL-2026-17702",
"aliases": [
"MAL-2026-17702"
],
"affected": [
{
"package": {
"name": "kafka-helmsman",
"purl": "pkg:pypi/kafka-helmsman",
"ecosystem": "PyPI"
},
"versions": [
"99.0.1",
"99.0.2",
"99.0.3",
"99.0.4",
"99.0.5",
"99.0.6"
],
"database_specific": {
"cwes": [
{
"name": "Embedded Malicious Code",
"cweId": "CWE-506",
"description": "The product contains code that appears to be malicious in nature."
},
{
"name": "Embedded Malicious Code",
"cweId": "CWE-506",
"description": "The product contains code that appears to be malicious in nature."
},
{
"name": "Embedded Malicious Code",
"cweId": "CWE-506",
"description": "The product contains code that appears to be malicious in nature."
},
{
"name": "Embedded Malicious Code",
"cweId": "CWE-506",
"description": "The product contains code that appears to be malicious in nature."
},
{
"name": "Embedded Malicious Code",
"cweId": "CWE-506",
"description": "The product contains code that appears to be malicious in nature."
},
{
"name": "Embedded Malicious Code",
"cweId": "CWE-506",
"description": "The product contains code that appears to be malicious in nature."
}
],
"source": "https://github.com/ossf/malicious-packages/blob/main/osv/malicious/pypi/kafka-helmsman/MAL-2026-17702.json",
"indicators": {
"evidence_files": [
{
"path": "setup.py",
"tlsh": "2f61a783c4142c63d2c360944475e9613722790b7d036cfa7aec9395af4f47680f256e",
"sha256": "d4f2a3ca94be78472bbb15bad6e215cd59d0b00ecebbf4e0fc4b70b837f72e56"
}
],
"package_integrity": [
{
"hashes": {
"md5": "95fd10a2179b8c31d0de2cbd8913de78",
"sha256": "8fb9ae3af1e1bba7231812809b21be6c7a9a1b07a08ee2b668c6e323ec7a2500",
"blake2b_256": "189004a13858578492254d2b8e01d434f597c5a1ed1ad619f65ac2bd082fc82b"
},
"filename": "kafka_helmsman-99.0.1.tar.gz"
}
]
}
}
}
],
"modified": "2026-10-09T01:00:08.497849713Z",
"provider": "osv",
"references": [
"https://pypi.org/project/kafka-helmsman/99.0.1/",
"https://pypi.org/project/kafka-helmsman/99.0.2/",
"https://pypi.org/project/kafka-helmsman/99.0.3/",
"https://bad-packages.kam193.eu/pypi/package/kafka-helmsman",
"https://pypi.org/project/kafka-helmsman/99.0.4/",
"https://pypi.org/project/kafka-helmsman/99.0.5/",
"https://pypi.org/project/kafka-helmsman/99.0.6/"
],
"provider_metadata": {
"malicious-packages-origins": [
{
"sha256": "a2d266a2b4e9df8f2466cfb34e58fe98c636cb75d4ad1ec08cee919bd9a86588",
"source": "ossf-package-analysis",
"versions": [
"99.0.1"
],
"import_time": "2026-10-08T21:18:09.362483578Z",
"modified_time": "2026-10-08T21:15:56Z"
},
{
"id": "IN-MAL-2026-021263",
"sha256": "0431384cc0de119177c0a345db1bfa2277fa4707e726176e542c0babfe1cd1f2",
"source": "amazon-inspector",
"versions": [
"99.0.1"
],
"import_time": "2026-10-08T21:42:57.408970022Z",
"modified_time": "2026-10-08T21:23:11Z"
},
{
"id": "IN-MAL-2026-021239",
"sha256": "a99759eb9821bcb30598eea10347dd1523ce42ec1847b9b66c5ba857ccd24785",
"source": "amazon-inspector",
"versions": [
"99.0.2"
],
"import_time": "2026-10-08T21:42:55.500895338Z",
"modified_time": "2026-10-08T21:19:45Z"
},
{
"id": "IN-MAL-2026-021261",
"sha256": "d2d1d7c99040594bd5c9bb0f23a58703e1fa5f1cd15cafbe2abb3e04aa3667be",
"source": "amazon-inspector",
"versions": [
"99.0.3"
],
"import_time": "2026-10-08T21:42:57.246496983Z",
"modified_time": "2026-10-08T21:22:52Z"
},
{
"id": "pypi/GENERIC-standard-pypi-install-pentest/kafka-helmsman",
"sha256": "edc880a17d2b3a9eaeadd0a074e6debc3f507d7afbd4ac8f5c4928209fadbcde",
"source": "kam193",
"versions": [
"99.0.1",
"99.0.2",
"99.0.3",
"99.0.4",
"99.0.5",
"99.0.6"
],
"import_time": "2026-10-08T22:18:58.155762443Z",
"modified_time": "2026-10-08T21:36:02.265925Z"
},
{
"id": "IN-MAL-2026-021277",
"sha256": "10f61c10a25e4aa02e6d142d652627c1e4f3033158e22d77e4bb5e96cf0562dd",
"source": "amazon-inspector",
"versions": [
"99.0.4"
],
"import_time": "2026-10-09T00:53:54.88986955Z",
"modified_time": "2026-10-09T00:05:25Z"
},
{
"id": "IN-MAL-2026-021278",
"sha256": "75536e8621da28a0e941bd4a607da879a64ab71214e908992bf14840ed9a20b2",
"source": "amazon-inspector",
"versions": [
"99.0.5"
],
"import_time": "2026-10-09T00:53:54.955403434Z",
"modified_time": "2026-10-09T00:05:33Z"
},
{
"id": "IN-MAL-2026-021275",
"sha256": "c52e0a7a9f07e1f3f9f17afa3bc2328c1743da9f3d81c421164c92282bc5fe92",
"source": "amazon-inspector",
"versions": [
"99.0.6"
],
"import_time": "2026-10-09T00:53:54.75052438Z",
"modified_time": "2026-10-09T00:05:06Z"
}
]
}
},
"related_cves": [],
"security_relevant": true,
"severity_evidence": null
},
"source_id": "core-osv",
"document_id": 108073,
"published_at": "2026-10-08T21:15:56+00:00"
}