mal-2026-17802

osv_rubygems
Description

--- _-= Per source details. Do not edit below this line.=-_ ## Source: amazon-inspector (1d8cf595b60954811e6adfd0c4a241c696d326b42baf1ed2e7b163e720db44c4) The gem's native extension builder ext/extconf.rb decodes a base64-embedded Ruby payload and eval()s it inside a double-forked, detached child after a randomized 20-40 minute sleep. The payload opens a TCP connection to the hardcoded bare-IP C2 at 45.138.12.177:8089, pipes the socket to /bin/sh, and reconnects in a loop, providing an interactive remote shell on the installer's host. Execution is gated by anti-analysis checks that skip CI runners, sandboxed/ephemeral hosts, synthetic usernames, and fresh VMs, and only fires when developer-workstation indicators are present (~/.ssh, ~/.gitconfig, ~/.npmrc, ~/.gem/credentials, ~/.bundle). The shipped library is an inert stub (build_id='ok', healthy?=true), the README is for an unrelated project ('bitcoin-rpc-lite'), and the Makefile target is bitcoin_rpc_lite_native, so the package has no legitimate advertised functionality; the install-time dropper is its sole purpose. ## Source: ossf-package-analysis (0710fa7f9a5c9d736a6305232a414769cc1e5896653a55bb9e3a02f7b7a0c026) The OpenSSF Package Analysis project identified 'xrp-ledger-utils' @ 0.9.1 (rubygems) as malicious. It is considered malicious because: - The package executes one or more commands associated with malicious behavior.

Timeline
Published
unknown
Last Modified
unknown
CVSS Details

CVSS details not available.

Affected Products

No product information available.

Weaknesses (CWE)
References
Linked Vulnerabilities

No linked vulnerabilities found.

{
  "affected": [
    {
      "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": "ext/xrp_ledger_utils/extconf.rb",
              "sha256": "10218e975f54a4f11fe3954e1b584a5f05054003bf5773c3c2b8cceaa74ba763",
              "tlsh": "9751775acf8359e55aa1c0c045798012faa3ab0a50646875f3ee0868ff59b26c0f12fe"
            },
            {
              "path": "metadata.yaml",
              "sha256": "8cced2a2df8fab52c1e109163a9bfc379e32b69e00bbb1e4024e5abdf720eaa6",
              "tlsh": "1a11f380a5c3fc3ff21ad1ee58442207f3b2e308fe5538148eeb919b93941ad6707161"
            }
          ]
        },
        "source": "https://github.com/ossf/malicious-packages/blob/main/osv/malicious/rubygems/xrp-ledger-utils/MAL-2026-17802.json"
      },
      "package": {
        "ecosystem": "RubyGems",
        "name": "xrp-ledger-utils",
        "purl": "pkg:gem/xrp-ledger-utils"
      },
      "versions": [
        "0.9.1"
      ]
    }
  ],
  "credits": [
    {
      "contact": [
        "inspector-research@amazon.com"
      ],
      "name": "Amazon Inspector",
      "type": "FINDER"
    },
    {
      "contact": [
        "https://github.com/ossf/package-analysis",
        "https://openssf.slack.com/channels/package_analysis"
      ],
      "name": "OpenSSF: Package Analysis",
      "type": "FINDER"
    }
  ],
  "database_specific": {
    "malicious-packages-origins": [
      {
        "id": "IN-MAL-2026-021370",
        "import_time": "2026-10-11T14:17:59.973303526Z",
        "modified_time": "2026-10-11T13:49:05Z",
        "sha256": "1d8cf595b60954811e6adfd0c4a241c696d326b42baf1ed2e7b163e720db44c4",
        "source": "amazon-inspector",
        "versions": [
          "0.9.1"
        ]
      },
      {
        "import_time": "2026-10-13T23:14:39.288674783Z",
        "modified_time": "2026-10-11T06:55:27Z",
        "sha256": "0710fa7f9a5c9d736a6305232a414769cc1e5896653a55bb9e3a02f7b7a0c026",
        "source": "ossf-package-analysis",
        "versions": [
          "0.9.1"
        ]
      }
    ]
  },
  "details": "\n---\n_-= Per source details. Do not edit below this line.=-_\n\n## Source: amazon-inspector (1d8cf595b60954811e6adfd0c4a241c696d326b42baf1ed2e7b163e720db44c4)\nThe gem's native extension builder ext/extconf.rb decodes a base64-embedded Ruby payload and eval()s it inside a double-forked, detached child after a randomized 20-40 minute sleep. The payload opens a TCP connection to the hardcoded bare-IP C2 at 45.138.12.177:8089, pipes the socket to /bin/sh, and reconnects in a loop, providing an interactive remote shell on the installer's host. Execution is gated by anti-analysis checks that skip CI runners, sandboxed/ephemeral hosts, synthetic usernames, and fresh VMs, and only fires when developer-workstation indicators are present (~/.ssh, ~/.gitconfig, ~/.npmrc, ~/.gem/credentials, ~/.bundle). The shipped library is an inert stub (build_id='ok', healthy?=true), the README is for an unrelated project ('bitcoin-rpc-lite'), and the Makefile target is bitcoin_rpc_lite_native, so the package has no legitimate advertised functionality; the install-time dropper is its sole purpose.\n\n## Source: ossf-package-analysis (0710fa7f9a5c9d736a6305232a414769cc1e5896653a55bb9e3a02f7b7a0c026)\nThe OpenSSF Package Analysis project identified 'xrp-ledger-utils' @ 0.9.1 (rubygems) as malicious.\n\nIt is considered malicious because:\n\n- The package executes one or more commands associated with malicious behavior.\n",
  "id": "MAL-2026-17802",
  "modified": "2026-10-13T23:30:05.046855932Z",
  "published": "2026-10-11T06:55:27Z",
  "references": [
    {
      "type": "PACKAGE",
      "url": "https://rubygems.org/gems/xrp-ledger-utils/versions/0.9.1"
    }
  ],
  "schema_version": "1.9.0",
  "summary": "Malicious code in xrp-ledger-utils (RubyGems)"
}
View JSON API Download JSON