{
  "schema": "cremit-ioc/v1",
  "generated_at": "2026-07-04T15:01:09.889Z",
  "package": {
    "ecosystem": "pypi",
    "name": "epyt",
    "version": "2.3.5.1",
    "publisher": "Marios S. Kyriakou",
    "sha256": "9df51f6e149c4fd3837e385a35345dc2f34905c1cd1f4b767fff4bd48b9a9739",
    "tarball_url": "https://files.pythonhosted.org/packages/b8/2f/f05711df53177e72cdfa91256f3f14fc014d089d64cebeb258c40051dba5/epyt-2.3.5.1.tar.gz",
    "weekly_downloads": null,
    "description": "EPyT: An EPANET-Python Toolkit for Smart Water Network Simulations. The EPyT is inspired by the EPANET-Matlab Toolkit.",
    "repository_url": "https://github.com/OpenWaterAnalytics/EPyT",
    "first_published_at": "2022-05-27T14:58:29.609Z"
  },
  "classification": {
    "label": "malicious",
    "confidence": 0.95,
    "summary": "Credential read (reads-pypirc) paired with http-to-public-ip destination — classic exfiltration signature.",
    "provider": "fast-track",
    "heuristic_score": 53,
    "disposition": "auto-published"
  },
  "references": {
    "npm_url": null,
    "pypi_url": "https://pypi.org/project/epyt/2.3.5.1/",
    "osv_id": null,
    "osv_url": null,
    "package_page": "https://incidents.cremit.io/packages/pypi/epyt"
  },
  "techniques": [
    {
      "id": "T1059",
      "name": "Command and Scripting Interpreter",
      "tactic": "Execution"
    },
    {
      "id": "T1071.001",
      "name": "Application Layer Protocol: Web Protocols",
      "tactic": "Command and Control"
    },
    {
      "id": "T1082",
      "name": "System Information Discovery",
      "tactic": "Discovery"
    },
    {
      "id": "T1552.001",
      "name": "Unsecured Credentials: Credentials in Files",
      "tactic": "Credential Access"
    },
    {
      "id": "T1567.002",
      "name": "Exfiltration Over Web Service",
      "tactic": "Exfiltration"
    }
  ],
  "indicators": {
    "network": {
      "urls": [
        "https://github.com/OpenWaterAnalytics/EPANET"
      ],
      "ipv4": [
        "2.3.5.1"
      ],
      "webhook_bins": [],
      "discord_webhook_ids": [],
      "telegram_bots": [],
      "github_repos": [
        "github.com/OpenWaterAnalytics/EPANET"
      ]
    },
    "files": {
      "credential_paths": []
    },
    "deps": {
      "suspicious": []
    },
    "encoded": {
      "base64": []
    },
    "metadata": {
      "heuristic_flags": [
        "pypi-sdist-setup-py",
        "new-publisher:0d",
        "typo-match:pytz:d2",
        "mature-package",
        "has-source-repo"
      ],
      "static_flags": [
        "reads-pypirc",
        "fs-recursive-read",
        "http-to-public-ip",
        "child-process-spawn",
        "py-sys-platform-branch"
      ],
      "self_described_as": []
    }
  },
  "stix_hints": {
    "indicator_pattern_examples": [
      "[ipv4-addr:value = '2.3.5.1']",
      "[file:hashes.'SHA-256' = '9df51f6e149c4fd3837e385a35345dc2f34905c1cd1f4b767fff4bd48b9a9739']"
    ],
    "note": "These are STIX 2.1 indicator pattern fragments, not a full bundle. Wrap each in {type:\"indicator\", pattern:..., pattern_type:\"stix\"} and add identity / created_by_ref objects to ingest into a TIP."
  }
}