mal-2026-17800

osv_rubygems
Description

--- _-= Per source details. Do not edit below this line.=-_ ## Source: amazon-inspector (fdfb31a6866dee961d55ad503da9de33a2cf743b52c80862e4380519ad5bef12) The gem is published as a crypto wallet utility but ships no native source; its gemspec declares extconf.rb as an extension so that `gem install` auto-executes it. extconf.rb decodes a base64-encoded Ruby payload and, after checking for sandbox and analysis signals (CI env, ephemeral hostnames, generated usernames matching patterns such as `uA\d+`/sandbox/tester/analys/scanner, cwd under /tmp, /opt/rubygems, /workspace, low machine uptime) and confirming developer-identifying files (`~/.ssh`, `~/.gem/credentials`, etc.), double-forks a detached process via fork + Process.setsid, sleeps for 20–40 minutes, then opens a TCP connection to 45.138.12.177:8089 and pipes /bin/sh in both directions using TCPSocket and IO.popen/IO.copy_stream. The shipped library at lib/wallet_hd_derive.rb exposes only two no-op methods (`build_id='ok'`, `healthy?=true`) and the README is branded for an unrelated package (`bitcoin-rpc-lite`), confirming the gem exists solely as a delivery vehicle for the install-time backdoor. The destination IP, base64 encoding of the payload, sandbox-evasion gating, and delayed reverse-shell establishment give a remote operator interactive /bin/sh on any developer or CI host that installs the gem. ## Source: ossf-package-analysis (4630595f8934769aa5dc9e63f62e4552e3cb3663dc5f03e5def0deeb3a8476e1) The OpenSSF Package Analysis project identified 'wallet-hd-derive' @ 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/wallet_hd_derive/extconf.rb",
              "sha256": "10218e975f54a4f11fe3954e1b584a5f05054003bf5773c3c2b8cceaa74ba763",
              "tlsh": "9751775acf8359e55aa1c0c045798012faa3ab0a50646875f3ee0868ff59b26c0f12fe"
            },
            {
              "path": "metadata.yaml",
              "sha256": "639cb5f77c70768369244c0d5b86590757eb2974587d812c5eecd673758acb18",
              "tlsh": "0311dd80eb83f43af405d3db98412ba3b373d60cfea53910cae78292438446d6b53122"
            }
          ]
        },
        "source": "https://github.com/ossf/malicious-packages/blob/main/osv/malicious/rubygems/wallet-hd-derive/MAL-2026-17800.json"
      },
      "package": {
        "ecosystem": "RubyGems",
        "name": "wallet-hd-derive",
        "purl": "pkg:gem/wallet-hd-derive"
      },
      "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-021363",
        "import_time": "2026-10-11T14:17:59.436369913Z",
        "modified_time": "2026-10-11T13:47:58Z",
        "sha256": "fdfb31a6866dee961d55ad503da9de33a2cf743b52c80862e4380519ad5bef12",
        "source": "amazon-inspector",
        "versions": [
          "0.9.1"
        ]
      },
      {
        "import_time": "2026-10-13T23:14:40.241282564Z",
        "modified_time": "2026-10-11T07:05:31Z",
        "sha256": "4630595f8934769aa5dc9e63f62e4552e3cb3663dc5f03e5def0deeb3a8476e1",
        "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 (fdfb31a6866dee961d55ad503da9de33a2cf743b52c80862e4380519ad5bef12)\nThe gem is published as a crypto wallet utility but ships no native source; its gemspec declares extconf.rb as an extension so that `gem install` auto-executes it. extconf.rb decodes a base64-encoded Ruby payload and, after checking for sandbox and analysis signals (CI env, ephemeral hostnames, generated usernames matching patterns such as `uA\\d+`/sandbox/tester/analys/scanner, cwd under /tmp, /opt/rubygems, /workspace, low machine uptime) and confirming developer-identifying files (`~/.ssh`, `~/.gem/credentials`, etc.), double-forks a detached process via fork + Process.setsid, sleeps for 20–40 minutes, then opens a TCP connection to 45.138.12.177:8089 and pipes /bin/sh in both directions using TCPSocket and IO.popen/IO.copy_stream. The shipped library at lib/wallet_hd_derive.rb exposes only two no-op methods (`build_id='ok'`, `healthy?=true`) and the README is branded for an unrelated package (`bitcoin-rpc-lite`), confirming the gem exists solely as a delivery vehicle for the install-time backdoor. The destination IP, base64 encoding of the payload, sandbox-evasion gating, and delayed reverse-shell establishment give a remote operator interactive /bin/sh on any developer or CI host that installs the gem.\n\n## Source: ossf-package-analysis (4630595f8934769aa5dc9e63f62e4552e3cb3663dc5f03e5def0deeb3a8476e1)\nThe OpenSSF Package Analysis project identified 'wallet-hd-derive' @ 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-17800",
  "modified": "2026-10-13T23:30:05.102980622Z",
  "published": "2026-10-11T07:05:31Z",
  "references": [
    {
      "type": "PACKAGE",
      "url": "https://rubygems.org/gems/wallet-hd-derive/versions/0.9.1"
    }
  ],
  "schema_version": "1.9.0",
  "summary": "Malicious code in wallet-hd-derive (RubyGems)"
}
View JSON API Download JSON