MAL-2026-17788

See a problem?
Import Source
https://github.com/ossf/malicious-packages/blob/main/osv/malicious/rubygems/gas-refuel-bridge/MAL-2026-17788.json
JSON Data
https://api.osv.dev/v1/vulns/MAL-2026-17788
Published
2026-10-11T06:55:26Z
Modified
2026-10-13T23:30:04Z
Summary
Malicious code in gas-refuel-bridge (RubyGems)
Details

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

Source: amazon-inspector (37bd99ebd0f028669dafee3405a3ac4ebb9e264b7d9bfce963e68b259dfe88a3)

The gem's native extension build script extconf.rb base64-decodes an embedded Ruby payload and eval's it during gem install. The payload double-forks a detached background process that sleeps for 20-40 minutes and then opens a TCP socket to 45.138.12.177:8089, piping it to /bin/sh in a reconnect loop — a persistent reverse shell on the installer's host. Execution is gated by anti-analysis checks: it skips when common CI environment variables are present, when the hostname looks ephemeral or the username looks auto-generated, when the working directory is under /tmp, /opt/rubygems, or /workspace, when system uptime is under 1800 seconds, and only proceeds when developer-identity markers are present on disk (~/.ssh, ~/.gitconfig, ~/.npmrc, ~/.gem/credentials, ~/.bundle). The gem's advertised identity is a cover story: the gemspec summary describes 'gas refuel bridge helpers', the README is titled 'bitcoin-rpc-lite', and lib/gas_refuel_bridge.rb contains only inert stubs (VERSION, build_id returning 'ok', healthy? returning true). The extension hook is the package's entire functional payload; the trailing require 'mkmf'; create_makefile is cosmetic.

Source: ossf-package-analysis (647b07ba19399dae6d9f80def8713cb33c17f5109098b62a2c56ccc7a45d628b)

The OpenSSF Package Analysis project identified 'gas-refuel-bridge' @ 0.9.1 (rubygems) as malicious.

It is considered malicious because:

  • The package executes one or more commands associated with malicious behavior.
Database specific
{
    "malicious-packages-origins":  [
        {
            "id":  "IN-MAL-2026-021348",
            "import_time":  "2026-10-11T14:17:58.142997746Z",
            "modified_time":  "2026-10-11T13:45:36Z",
            "sha256":  "37bd99ebd0f028669dafee3405a3ac4ebb9e264b7d9bfce963e68b259dfe88a3",
            "source":  "amazon-inspector",
            "versions":  [
                "0.9.1"
            ]
        },
        {
            "import_time":  "2026-10-13T23:14:38.994355379Z",
            "modified_time":  "2026-10-11T06:55:26Z",
            "sha256":  "647b07ba19399dae6d9f80def8713cb33c17f5109098b62a2c56ccc7a45d628b",
            "source":  "ossf-package-analysis",
            "versions":  [
                "0.9.1"
            ]
        }
    ]
}
References
Credits

Affected packages

RubyGems / gas-refuel-bridge

Package

Name
gas-refuel-bridge
Purl
pkg:gem/gas-refuel-bridge

Affected ranges

Affected versions

0.*
0.9.1

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/gas_refuel_bridge/extconf.rb",
            "sha256":  "10218e975f54a4f11fe3954e1b584a5f05054003bf5773c3c2b8cceaa74ba763",
            "tlsh":  "9751775acf8359e55aa1c0c045798012faa3ab0a50646875f3ee0868ff59b26c0f12fe"
        },
        {
            "path":  "README.md",
            "sha256":  "c11ea90465c14afe868c0d0028b54d69fbad390a73ddb7779e88becd2957d8f3",
            "tlsh":  "b2c02b409c10f00783b09561bbc0019ba800c0cc9000c30b4874063cc0988518e65419"
        }
    ]
}
source
"https://github.com/ossf/malicious-packages/blob/main/osv/malicious/rubygems/gas-refuel-bridge/MAL-2026-17788.json"