-= Per source details. Do not edit below this line.=-
On import, src/dashgridnormalizer/init.py calls hydrateremotelayoutprofile(), which reassembles a payload from four string segments, base64-decodes and zlib-decompresses it, and passes the result to builtins.exec(). The decoded Python source imports os/socket/subprocess, connects a TCP socket to 43.69.137.236:80, dup2's stdin/stdout/stderr onto the socket, and execs /bin/sh — a standard reverse shell granting the operator of that IP interactive command execution as the installer's user. The C2 IP literal is itself further obfuscated as bytes([52,51,46,...]). The package's pyproject description ("Responsive grid and gutter helpers for dashboard widget layouts") and name are cover; the README self-identifies the project as a pentest probe with the reverse shell "LIVE CONFIRMED". Any process that does import dash_grid_normalizer (including transitive imports during test or build) opens the shell.
During import, the package starts a reverse shell.
Category: MALICIOUS - The campaign has clearly malicious intent, like infostealers.
Campaign: 2026-06-acme-widget-layout-utils
Reasons (based on the campaign):
{
"iocs": {
"ips": [
"34.69.137.236"
]
},
"malicious-packages-origins": [
{
"id": "IN-MAL-2026-006265",
"import_time": "2026-06-13T02:23:22.435836615Z",
"sha256": "33e2cf264a51ab03d244b5226d2ebdced0eaa0c09c462291f9bbdd75410152f1",
"source": "amazon-inspector",
"modified_time": "2026-06-13T01:25:12Z",
"versions": [
"0.0.2"
]
},
{
"id": "IN-MAL-2026-006267",
"import_time": "2026-06-13T02:23:22.669477096Z",
"sha256": "362011eafffa765e7f6c24df4ec2c7bb8f9fb6b6414570a5d193e6ea90e1250a",
"source": "amazon-inspector",
"modified_time": "2026-06-13T01:25:17Z",
"versions": [
"0.0.1"
]
},
{
"id": "IN-MAL-2026-006268",
"versions": [
"0.0.1"
],
"sha256": "56fb3ee9db44cb577a1f92a596d4da7dce1fba88cc4d710c4f920bc364f3004f",
"source": "amazon-inspector",
"modified_time": "2026-06-13T01:25:17Z",
"import_time": "2026-06-13T02:23:22.774725831Z"
},
{
"id": "IN-MAL-2026-006270",
"versions": [
"0.0.5"
],
"sha256": "c4a2ff66920eded5c1f2382ac0edb486e56ee0ce9a9ecc019a4e3dc74a6d3f55",
"source": "amazon-inspector",
"modified_time": "2026-06-13T01:25:19Z",
"import_time": "2026-06-13T02:23:23.000654355Z"
},
{
"id": "IN-MAL-2026-006266",
"versions": [
"0.0.2"
],
"sha256": "f1367e40c183e27f5273b136155f08a27f5f8c90991560d24c4ef4d44f14d3a2",
"source": "amazon-inspector",
"modified_time": "2026-06-13T01:25:14Z",
"import_time": "2026-06-13T02:23:22.582878612Z"
},
{
"id": "IN-MAL-2026-006269",
"versions": [
"0.0.5"
],
"sha256": "faf62dd8a16c6f5112e302a14e484cd3261532d2c1c6cc1cf53c73eee4f9e6ad",
"source": "amazon-inspector",
"modified_time": "2026-06-13T01:25:19Z",
"import_time": "2026-06-13T02:23:22.900588122Z"
},
{
"id": "pypi/2026-06-acme-widget-layout-utils/dash-grid-normalizer",
"versions": [
"0.0.1",
"0.0.2",
"0.0.3",
"0.0.4",
"0.0.5"
],
"sha256": "b27c5f3eaf2e7f704830efee579b0a413695540736da93bc3219bfda4afecc79",
"source": "kam193",
"modified_time": "2026-06-13T01:03:43.580551Z",
"import_time": "2026-06-13T02:23:25.583981987Z"
}
]
}{
"evidence_files": [
{
"path": "dash_grid_normalizer/__init__.py",
"sha256": "c5eda0598aafe1afd00a38cac2b8d2381c9dfb1a3145ac49fa3b0f3484fdb71b",
"tlsh": "5b2105c6e9399516a727e222a4c39d13774d5947568c28f13f7e42246f130b985b1cdc"
},
{
"path": "dash_grid_normalizer-0.0.2.dist-info/METADATA",
"sha256": "7dbeb712d3b98a8c4e223577ec3044f91294913d73027c197c13a81846c92ac9",
"tlsh": "3c81a8558cb215e225e3c553b5f27690efb2c66360c57c38eca84f586e981d8623f32e"
}
],
"package_integrity": [
{
"filename": "dash_grid_normalizer-0.0.5-py3-none-any.whl",
"hashes": {
"md5": "ceb58abdad111e1cecd53aeb74937395",
"blake2b_256": "bb9745d86ee8477c3d85053d1fcb8e218909baa4b4d3507943d8157c7b072e67",
"sha256": "aafdb8d2dc08adfbf7acaaec0b0d26fe2b031c8b6c2e36dc08342ca1ee28edb0"
}
},
{
"filename": "dash_grid_normalizer-0.0.5.tar.gz",
"hashes": {
"md5": "0c9ea518670afdb11e9f5b5654e5d4d6",
"blake2b_256": "df6319c10d492eb55f24fe531c14bcd471bba54dd600ab0843578f895db4be56",
"sha256": "737debcd0ce92b13b2a9251506b097d49e9bd2784bc440bf93266e53a94b28fa"
}
}
],
"ips": [
"43.69.137.236"
]
}
"https://github.com/ossf/malicious-packages/blob/main/osv/malicious/pypi/dash-grid-normalizer/MAL-2026-5725.json"
[
{
"description": "The product contains code that appears to be malicious in nature.",
"name": "Embedded Malicious Code",
"cweId": "CWE-506"
},
{
"cweId": "CWE-506",
"name": "Embedded Malicious Code",
"description": "The product contains code that appears to be malicious in nature."
},
{
"cweId": "CWE-506",
"name": "Embedded Malicious Code",
"description": "The product contains code that appears to be malicious in nature."
}
]