MAL-2026-6758

See a problem?
Import Source
https://github.com/ossf/malicious-packages/blob/main/osv/malicious/pypi/httpprobe/MAL-2026-6758.json
JSON Data
https://api.osv.dev/v1/vulns/MAL-2026-6758
Published
2026-07-04T18:05:11Z
Modified
2026-07-08T21:46:54Z
Summary
Malicious code in httpprobe (PyPI)
Details

-= Per source details. Do not edit below this line.=-

Source: amazon-inspector (cb46b890b54f51f3a98c1935dbd50e143430757c5daf4080039d32865b04c1d5)

The package advertises itself as an 'HTTP probing tool for security researchers' but contains no HTTP-probing functionality. Its only behavior is to fetch and execute a Windows PE binary named 'mirai_agent.exe' from a hardcoded Tor hidden service (sytej5umomwukd77aantkxqj4aoke3kfist6eyne2pngavgsakum3iid.onion), with a localhost fallback. Two independent execution paths deliver the payload: (1) setup.py overrides the install command with a PostInstall class that spawns a background thread on pip install to download the binary, write it to a Microsoft-look-alike path under %TEMP%/MS/Update/agent.exe, set hidden+system file attributes via SetFileAttributesW, and launch it via CreateProcessW with CREATE_NO_WINDOW; (2) httpprobe/init.py exposes a main() that performs the same fetch-stage-hide-execute sequence at import time via CreateProcessW or subprocess.Popen. The duplicated install-time and import-time execution paths ensure code execution on the installer's Windows machine regardless of whether the package is installed or later imported by a consumer. The Microsoft-look-alike staging path, hidden+system attributes, no-window flag, and Tor-only delivery are all consistent with intent to persist an attacker-controlled binary on the developer's machine.

Source: kam193 (5a1fef079efe68484b2d37fb2e1bb3d0cebfeccf27a8a0f9b1e8436e664ea42e)

If run as a module and during installation, the package attempts to download and start an executable described as a Mirai agent. During analysis, the Onion website hosting executable was not available. Using Onion and localhost fallback suggests the package was not yet ready to deliver malicious actions to the end users.


Category: MALICIOUS - The campaign has clearly malicious intent, like infostealers.

Campaign: 2026-07-httpprobe

Reasons (based on the campaign):

  • Downloads and executes a remote executable.

  • The package overrides the install command in setup.py to execute malicious code during installation.

Database specific
{
    "iocs": {
        "urls": [
            "http://sytej5umomwukd77aantkxqj4aoke3kfist6eyne2pngavgsakum3iid.onion/mirai_agent.exe"
        ]
    },
    "malicious-packages-origins": [
        {
            "id": "pypi/2026-07-httpprobe/httpprobe",
            "import_time": "2026-07-04T18:25:33.380426755Z",
            "modified_time": "2026-07-04T18:05:11.41858Z",
            "sha256": "5a1fef079efe68484b2d37fb2e1bb3d0cebfeccf27a8a0f9b1e8436e664ea42e",
            "source": "kam193",
            "versions": [
                "1.0.0"
            ]
        },
        {
            "id": "IN-MAL-2026-008594",
            "import_time": "2026-07-08T21:27:49.117518459Z",
            "modified_time": "2026-07-08T20:33:36Z",
            "sha256": "cb46b890b54f51f3a98c1935dbd50e143430757c5daf4080039d32865b04c1d5",
            "source": "amazon-inspector",
            "versions": [
                "1.0.0"
            ]
        }
    ]
}
References
Credits

Affected packages

PyPI / httpprobe

Package

Affected ranges

Affected versions

1.*
1.0.0

Database specific

cwes
[
    {
        "cweId": "CWE-506",
        "description": "The product contains code that appears to be malicious in nature.",
        "name": "Embedded Malicious Code"
    }
]
indicators
{
    "evidence_files": [
        {
            "path": "setup.py",
            "sha256": "e5388170cc7d066974f3f897a06c7b9a7ab399e5c7d085196dbfc086868a4531",
            "tlsh": "93414101eca8a8b59bc38650d9535c982d22b5433d28a86db7dcc6309f9c0bec2b5b4c"
        },
        {
            "path": "httpprobe/__init__.py",
            "sha256": "d165111dc93e499bbdb3531fd80a2a6fefb35965002463e9bcd9bbc39ec9ffaa",
            "tlsh": "38312402ec68a051c7c2da15f572a8c47d17b943396a8c79ff9cc9705b98479c1f1788"
        }
    ],
    "package_integrity": [
        {
            "filename": "httpprobe-1.0.0-py3-none-any.whl",
            "hashes": {
                "blake2b_256": "e85d96c20261cf8473d9f0e77c3381a5380be8596e36185bcc8132204791651f",
                "md5": "a578eabcf7d7698eebb28627dd9e960d",
                "sha256": "b8b7cca1f8bcd606422d6239ad6eba0776beef49199d3ab8a8691a4f0d48c372"
            }
        },
        {
            "filename": "httpprobe-1.0.0.tar.gz",
            "hashes": {
                "blake2b_256": "b4ed3f1c268d968475947209dabd8bec4853d7a79ac643e74c44ca006bf150b3",
                "md5": "a772018efcd67236f51ad25a6849ba46",
                "sha256": "72191b31b7d3e4eb12c1e1b9d2ff5290b350d9945c21314c8c4a12a2bf958ad5"
            }
        }
    ]
}
source
"https://github.com/ossf/malicious-packages/blob/main/osv/malicious/pypi/httpprobe/MAL-2026-6758.json"