mal-2025-2973
Vulnerability from ossf_malicious_packages
Published
2025-03-02 17:05
Modified
2025-12-31 02:45
Summary
Malicious code in marinff-test (PyPI)
Details

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

Source: kam193 (c25b081dd711bcb5076c5fbd0ea034850b8e428fed345d93e60036e0e91c9f66)

Installing the package starts a reverse shell. The remote server is, however, set as a local IP, so it's most probably testing


Category: PROBABLY_PENTEST - Packages looking like typical pentest packages, but also anything that looks like testing, exploring pre-prepared kits, research & co, with clearly low-harm possibilities.

Campaign: 2025-03-marinff

Reasons (based on the campaign):

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

  • obfuscation

  • The package contains code to create a reverse shell, allowing an attacker to execute any commands on the victim's machine.


{
  "affected": [
    {
      "package": {
        "ecosystem": "PyPI",
        "name": "marinff-test",
        "purl": "pkg:pypi/marinff-test"
      },
      "versions": [
        "0.2",
        "0.3",
        "0.4",
        "0.5",
        "0.6",
        "0.7",
        "0.8",
        "0.1"
      ]
    }
  ],
  "credits": [
    {
      "contact": [
        "https://github.com/kam193",
        "https://bad-packages.kam193.eu/"
      ],
      "name": "Kamil Ma\u0144kowski (kam193)"
    },
    {
      "contact": [
        "https://github.com/kam193",
        "https://bad-packages.kam193.eu/"
      ],
      "name": "Kamil Ma\u0144kowski (kam193)",
      "type": "REPORTER"
    },
    {
      "contact": [
        "https://www.reversinglabs.com"
      ],
      "name": "ReversingLabs",
      "type": "FINDER"
    }
  ],
  "database_specific": {
    "malicious-packages-origins": [
      {
        "id": "RLMA-2025-01971",
        "import_time": "2025-03-31T07:07:05.850326954Z",
        "modified_time": "2025-03-28T13:05:49Z",
        "sha256": "1cb3616cbc3da5f19069fca2b3f1ba2cc972b73791fb361b72354c4e9f016286",
        "source": "reversing-labs",
        "versions": [
          "0.2",
          "0.3",
          "0.4",
          "0.5",
          "0.6",
          "0.7",
          "0.8"
        ]
      },
      {
        "id": "RLUA-2025-02513",
        "import_time": "2025-04-25T09:37:07.250763409Z",
        "modified_time": "2025-04-23T16:06:27Z",
        "sha256": "4af88abe2d21f03ca731b99d10260b01a444c323949c039178c3f3e75c7b47f9",
        "source": "reversing-labs",
        "versions": [
          "0.1"
        ]
      },
      {
        "id": "pypi/2025-03-marinff/marinff-test",
        "import_time": "2025-12-02T22:30:56.197506759Z",
        "modified_time": "2025-03-02T17:05:55Z",
        "ranges": [
          {
            "events": [
              {
                "introduced": "0"
              }
            ],
            "type": "ECOSYSTEM"
          }
        ],
        "sha256": "1482d9db58b1d5249855fbeb854c95de3db27f27d2d7caad5ad9f2c96f4d8345",
        "source": "kam193"
      },
      {
        "id": "pypi/2025-03-marinff/marinff-test",
        "import_time": "2025-12-02T23:07:19.379591459Z",
        "modified_time": "2025-03-02T17:05:55Z",
        "ranges": [
          {
            "events": [
              {
                "introduced": "0"
              }
            ],
            "type": "ECOSYSTEM"
          }
        ],
        "sha256": "c25b081dd711bcb5076c5fbd0ea034850b8e428fed345d93e60036e0e91c9f66",
        "source": "kam193"
      },
      {
        "id": "pypi/2025-03-marinff/marinff-test",
        "import_time": "2025-12-10T21:38:58.505651038Z",
        "modified_time": "2025-03-02T17:05:55Z",
        "sha256": "a4b6e79674f2a4cad89ea6d1e8c985816f1fc3bba0f542de15d3424a4fb530b7",
        "source": "kam193",
        "versions": [
          "0.1",
          "0.2",
          "0.4",
          "0.3",
          "0.5",
          "0.6",
          "0.7",
          "0.8"
        ]
      },
      {
        "id": "pypi/2025-03-marinff/marinff-test",
        "import_time": "2025-12-30T22:39:04.310837461Z",
        "modified_time": "2025-03-02T17:05:55Z",
        "sha256": "56b48c94c0e264d0c64e2ecb1e8029dd4c283903e99e2bc1b1043dc397f40d83",
        "source": "kam193",
        "versions": [
          "0.1",
          "0.2",
          "0.3",
          "0.4",
          "0.5",
          "0.6",
          "0.7",
          "0.8"
        ]
      }
    ]
  },
  "details": "\n---\n_-= Per source details. Do not edit below this line.=-_\n\n## Source: kam193 (c25b081dd711bcb5076c5fbd0ea034850b8e428fed345d93e60036e0e91c9f66)\nInstalling the package starts a reverse shell. The remote server is, however, set as a local IP, so it\u0027s most probably testing\n\n\n---\n\nCategory: PROBABLY_PENTEST - Packages looking like typical pentest packages, but also anything that looks like testing, exploring pre-prepared kits, research \u0026 co, with clearly low-harm possibilities.\n\n\nCampaign: 2025-03-marinff\n\n\nReasons (based on the campaign):\n\n\n - The package overrides the install command in setup.py to execute malicious code during installation.\n\n\n - obfuscation\n\n\n - The package contains code to create a reverse shell, allowing an attacker to execute any commands on the victim\u0027s machine.\n",
  "id": "MAL-2025-2973",
  "modified": "2025-12-31T02:45:15Z",
  "published": "2025-03-02T17:05:55Z",
  "references": [
    {
      "type": "WEB",
      "url": "https://bad-packages.kam193.eu/pypi/package/marinff-test"
    }
  ],
  "schema_version": "1.7.4",
  "summary": "Malicious code in marinff-test (PyPI)"
}


Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

Sightings

Author Source Type Date

Nomenclature

  • Seen: The vulnerability was mentioned, discussed, or observed by the user.
  • Confirmed: The vulnerability has been validated from an analyst's perspective.
  • Published Proof of Concept: A public proof of concept is available for this vulnerability.
  • Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
  • Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
  • Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
  • Not confirmed: The user expressed doubt about the validity of the vulnerability.
  • Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.


Loading…

Detection rules are retrieved from Rulezet.

Loading…

Loading…