-= Per source details. Do not edit below this line.=-
spaysdatarbx is a Windows infostealer disguised as a Roblox DataStore library. On import spaysdata, init.py invokes main_entry() (wrapped in try/except: pass to stay silent), which performs three malicious actions: (1) reads %USERPROFILE%/AppData/Local/Roblox/LocalStorage/robloxcookies.dat, DPAPI-decrypts it, and POSTs the plaintext Roblox session cookie to a hardcoded Discord webhook (https://discord.com/api/webhooks/1499336276762038292/...); (2) walks Discord, Chrome, Edge, Brave, Opera, Yandex, and Firefox profile directories, force-kills Discord with taskkill /f /im Discord.exe to release leveldb locks, AES-GCM-decrypts auth tokens with each browser's DPAPI master key, and POSTs every recovered token to the same webhook; (3) establishes persistence by copying itself to %APPDATA%\MySystemUtility\ and writing an HKCU...\Run\MyPythonAutostartApp registry value that re-launches the stealer at every login, hiding the console window via ShowWindow(GetConsoleWindow(), 0). The package's advertised purpose ('Библиотека для работы с DataStore в Roblox') is a decoy — no DataStore functionality exists in main.py, only the stealer. Any developer who installs and imports this package has their Roblox session and all browser-stored Discord tokens sent to the attacker, plus a persistent autostart entry for ongoing theft.
The package exfiltrates Roblox cookies from the victim machine.
Category: MALICIOUS - The campaign has clearly malicious intent, like infostealers.
Campaign: 2026-06-spaysrbdata
Reasons (based on the campaign):
{
"malicious-packages-origins": [
{
"sha256": "31b0b97326861aabb747f26e130a5dbda5ac78100fafbb3a3327b1981119e3a6",
"source": "kam193",
"import_time": "2026-06-08T15:12:45.407175189Z",
"id": "pypi/2026-06-spaysrbdata/spaysdatarbx",
"versions": [
"0.1.3",
"0.1.5"
],
"modified_time": "2026-06-08T13:43:18.338578Z"
},
{
"sha256": "ddffc9e3413a0002eb53a77c72679297563add6c776b89475e9e0bb83d516d49",
"source": "kam193",
"import_time": "2026-06-09T10:41:59.933480846Z",
"id": "pypi/2026-06-spaysrbdata/spaysdatarbx",
"versions": [
"0.1.3",
"0.1.5"
],
"modified_time": "2026-06-08T13:43:18.338578Z"
},
{
"modified_time": "2026-06-11T02:54:32Z",
"source": "amazon-inspector",
"sha256": "1bcaa4bf6f81efed82d35081ec059dfcd2f55e50b84f28d8b0ad4d8afe63089f",
"id": "IN-MAL-2026-005401",
"versions": [
"0.1.5"
],
"import_time": "2026-06-11T03:48:46.730517847Z"
},
{
"import_time": "2026-06-11T03:48:46.83398529Z",
"source": "amazon-inspector",
"sha256": "28acb1db885e57d4a1f6f5bcdfb316141626b89be210c550654266524d23acc7",
"id": "IN-MAL-2026-005402",
"versions": [
"0.1.3"
],
"modified_time": "2026-06-11T02:54:36Z"
}
],
"iocs": {
"urls": [
"https://script.google.com/macros/s/AKfycbwa8sLEdsG_leFVecuc_dFrZ_h5JnZKrWxXWazK1T6DoKGAGG5OJ9rznwYXg2PS-h1d/exec",
"https://discord.com/api/webhooks/1513807955340820602/-UbLOjMGWIop17hrvQ7XsrZkJBJaNlMTueX7xnsJ9hz6DKaBgSe_Ur2FIgSJMHlusBwx"
]
}
}"https://github.com/ossf/malicious-packages/blob/main/osv/malicious/pypi/spaysdatarbx/MAL-2026-5329.json"
[
{
"cweId": "CWE-506",
"description": "The product contains code that appears to be malicious in nature.",
"name": "Embedded Malicious Code"
},
{
"cweId": "CWE-506",
"name": "Embedded Malicious Code",
"description": "The product contains code that appears to be malicious in nature."
}
]
{
"package_integrity": [
{
"filename": "spaysdatarbx-0.1.5-py3-none-any.whl",
"hashes": {
"md5": "a35057fc2aea54a3a7c41010ee6d86b9",
"sha256": "d198fdb35f9a8e20a99134ff07827874795b9c59197cce7472192693be2a68cb",
"blake2b_256": "b7b23361edab7b2256a2206a52c01b39dfdc0f808fe1390e98f3a8c1b38fe7fe"
}
},
{
"filename": "spaysdatarbx-0.1.5.tar.gz",
"hashes": {
"md5": "a5a9794be974348f8e67d6b0118eac4f",
"sha256": "23016a21246d121e1e522308d2827515a01ce91d4ad007e4c7d8d60f8fa7bc54",
"blake2b_256": "560694d1f8f5a76ebe810125e6e9b23f1b8d2d132b368fc424b71cc2ed520ab3"
}
}
],
"evidence_files": [
{
"tlsh": "2a324342ec4a14169276925ca852ed08f72743ab757122033efca7a83f75035e3b91fe",
"sha256": "77e2aaa0ecbba755c48dc5987789afbe7432d406d6db3b1d66d2615e1694db79",
"path": "spaysdata/main.py"
},
{
"tlsh": "a2e068a05b927430a2f899cf842c8b1aae6ae700649e04fae6845c6d12e3390467833c",
"path": "PKG-INFO",
"sha256": "ab5f0d915d70f36c0460833a78315361157da0381e0ebbfa204ee46476243fca"
}
]
}