-= Per source details. Do not edit below this line.=-
The gem ships a native-extension stub (extconf.rb) that gem install executes automatically, but no C/C++ sources accompany it and lib/sol_mint_utils.rb is an inert stub (defines VERSION and returns 'ok'). The README advertises an unrelated package name (bitcoin-rpc-lite), confirming the gem's declared purpose is a cover. extconf.rb base64-decodes a Ruby payload and eval's it inside a forked/detached process; the decoded payload opens a TCPSocket to the hardcoded host 45.138.12.177 on port 8089 and bridges a /bin/sh session over the socket via IO.popen and IO.copy_stream, granting the operator an interactive reverse shell on the installer's machine. Execution is gated by anti-analysis checks: CI environment variables, hostname patterns (uvm/firecracker/sandbox/vagrant), generated usernames, analysis working directories (/opt/rubygems, /tmp, /workspace), and short /proc/uptime values all suppress the payload, which fires only when developer artifacts such as ~/.ssh, ~/.gitconfig, and ~/.gem/credentials are present on the host.
{
"malicious-packages-origins": [
{
"id": "IN-MAL-2026-021373",
"import_time": "2026-10-11T14:18:00.247314154Z",
"modified_time": "2026-10-11T13:49:30Z",
"sha256": "2940bc600ade9f91afdc44ccc04cdab589d276b0504b3f12ffb4a4e827920bd9",
"source": "amazon-inspector",
"versions": [
"0.9.1"
]
}
]
}[
{
"cweId": "CWE-506",
"description": "The product contains code that appears to be malicious in nature.",
"name": "Embedded Malicious Code"
}
]
{
"evidence_files": [
{
"path": "ext/sol_mint_utils/extconf.rb",
"sha256": "10218e975f54a4f11fe3954e1b584a5f05054003bf5773c3c2b8cceaa74ba763",
"tlsh": "9751775acf8359e55aa1c0c045798012faa3ab0a50646875f3ee0868ff59b26c0f12fe"
},
{
"path": "README.md",
"sha256": "c11ea90465c14afe868c0d0028b54d69fbad390a73ddb7779e88becd2957d8f3",
"tlsh": "b2c02b409c10f00783b09561bbc0019ba800c0cc9000c30b4874063cc0988518e65419"
}
]
}
"https://github.com/ossf/malicious-packages/blob/main/osv/malicious/rubygems/sol-mint-utils/MAL-2026-17795.json"