{"id":"MAL-2026-2295","summary":"Malicious code in databaseroboat (PyPI)","details":"\n---\n_-= Per source details. Do not edit below this line.=-_\n\n## Source: kam193 (3c3d5d00b97ea534e5873e4b0aecaa2895fcc25dfca987d487dcc2510cf14f3a)\nDuring installation package downloads and runs a malicious executable. Likely continuation of 2026-03-rowrap.\n\nThe campaign is built over a malicious Roblox API wrapper. The roboat[.]pro (later robase[.]app) domain advertises a wrapper that is either directly malicious (as roboat collected in the campaign 2026-03-rowrap) or uses a malicious dependencies (like roboat-utils). New versions are published simultaneously with malicious dependencies and quickly removed. Another advertisement channel is https://github.com/Addi9000/roboat referencing two active contributors: https://github.com/Addi9000 and https://github.com/RoCruise\n\n\n---\n\nCategory: MALICIOUS - The campaign has clearly malicious intent, like infostealers.\n\n\nCampaign: 2026-03-roboat-addition\n\n\nReasons (based on the campaign):\n\n\n - The package overrides the install command in setup.py to execute malicious code during installation.\n\n\n - Downloads and executes a remote executable.\n\n\n - The malicious code is intentionally included in a dependency of the package\n\n\n - malware\n\n\n - clones-real-package\n","modified":"2026-05-28T05:01:10.151189668Z","published":"2026-03-29T20:12:48Z","database_specific":{"iocs":{"urls":["https://jolly-violet-def9.staraledreamer.workers.dev/DDDD.exe","https://holy-sun-41ff.staraledreamer.workers.dev/gore.vbs","https://github.com/betonme27/flies/releases/download/a/s22s.zhr","https://dawn-thunder-f821.staraledreamer.workers.dev/gore.vbs"],"domains":["jolly-violet-def9.staraledreamer.workers.dev","holy-sun-41ff.staraledreamer.workers.dev"]},"malicious-packages-origins":[{"modified_time":"2026-03-29T20:12:49.187045Z","versions":["0.0.1"],"id":"pypi/2026-03-roboat-addition/databaseroboat","source":"kam193","import_time":"2026-03-29T20:46:34.585762128Z","sha256":"5227c1d7a79a1dcce9aae113c60aa92087e3ebd9bcf6696589c53c3ab1edf572"},{"modified_time":"2026-03-29T23:01:20.450297Z","versions":["0.0.1","0.0.2"],"id":"pypi/2026-03-roboat-addition/databaseroboat","source":"kam193","import_time":"2026-03-29T23:46:00.35567975Z","sha256":"29455dd419aa46a57b75cee86f6dd0fda6e194a3d875bbd54c879fe24c8e6be2"},{"modified_time":"2026-03-29T23:01:20.450297Z","versions":["0.0.1","0.0.2"],"id":"pypi/2026-03-roboat-addition/databaseroboat","source":"kam193","import_time":"2026-04-04T22:45:36.626262685Z","sha256":"1ba410c4503ae9b5b92483f291513a30cb8e18b4e5b164e1848e01a9467e90a2"},{"modified_time":"2026-03-29T23:01:20.450297Z","versions":["0.0.1","0.0.2"],"id":"pypi/2026-03-roboat-addition/databaseroboat","source":"kam193","import_time":"2026-04-05T09:18:40.862291041Z","sha256":"f1443616eb0b9a85e280accc30a1d86cdd945f16bc7906847e65242e7a7dfef7"},{"id":"pypi/2026-03-roboat-addition/databaseroboat","versions":["0.0.1","0.0.2"],"sha256":"a42a5c4b6eae0027e2c26421c882d5739702cc0b323e19af2c8ee37d012c527a","source":"kam193","import_time":"2026-04-08T10:27:39.255270114Z","modified_time":"2026-03-29T23:01:20.450297Z"},{"id":"pypi/2026-03-roboat-addition/databaseroboat","versions":["0.0.1","0.0.2"],"modified_time":"2026-03-29T23:01:20.450297Z","source":"kam193","import_time":"2026-04-10T21:47:38.799797814Z","sha256":"d12f3d05a2d825961a712c938598b76138997193e40531548ac6ce2b28184689"},{"modified_time":"2026-03-29T23:01:20.450297Z","versions":["0.0.1","0.0.2"],"id":"pypi/2026-03-roboat-addition/databaseroboat","source":"kam193","import_time":"2026-04-12T21:46:35.801598081Z","sha256":"aa6fc51ce98a554b0adacdbc69de2796b13f41519e806aa331855b54a4ed4ba1"},{"modified_time":"2026-03-29T23:01:20.450297Z","versions":["0.0.1","0.0.2"],"sha256":"3c3d5d00b97ea534e5873e4b0aecaa2895fcc25dfca987d487dcc2510cf14f3a","source":"kam193","import_time":"2026-04-12T22:12:37.178255984Z","id":"pypi/2026-03-roboat-addition/databaseroboat"},{"modified_time":"2026-03-29T23:01:20.450297Z","versions":["0.0.1","0.0.2"],"id":"pypi/2026-03-roboat-addition/databaseroboat","source":"kam193","import_time":"2026-04-16T07:38:25.006491155Z","sha256":"78cb99eb2eb5a03d3519798ac1c5f9bc3a25172172ee8d364b5079edab22d92b"},{"sha256":"f791518a5811c741eea54f23202e5e95b2d7e3ca7c9ced0fa0fd8ec2afd3ccd5","versions":["0.0.1","0.0.2"],"modified_time":"2026-03-29T23:01:20.450297Z","source":"kam193","import_time":"2026-04-25T08:25:00.388009007Z","id":"pypi/2026-03-roboat-addition/databaseroboat"},{"modified_time":"2026-03-29T23:01:20.450297Z","versions":["0.0.1","0.0.2"],"id":"pypi/2026-03-roboat-addition/databaseroboat","source":"kam193","import_time":"2026-04-26T17:18:12.819796287Z","sha256":"9930640c2182c34ab71c92c2d05e791f15a03bc73513ffe292e13db07854d016"},{"sha256":"62d522c54ec749bd7872d786c063b7dd002e3ca6f866a2796edffdc6483de135","versions":["0.0.1","0.0.2"],"modified_time":"2026-03-29T23:01:20.450297Z","source":"kam193","import_time":"2026-04-27T21:50:25.211933586Z","id":"pypi/2026-03-roboat-addition/databaseroboat"},{"id":"pypi/2026-03-roboat-addition/databaseroboat","versions":["0.0.1","0.0.2"],"modified_time":"2026-03-29T23:01:20.450297Z","source":"kam193","import_time":"2026-04-28T22:49:44.39784284Z","sha256":"fc43498746eb0334c9008567624bf03bde70561675fdddd67d175917354e27d0"},{"modified_time":"2026-03-29T23:01:20.450297Z","versions":["0.0.1","0.0.2"],"sha256":"5acf7e5025d618897bd07b8c2fd19234c35287ce54e8c195c8b8b1bdbb3345b3","source":"kam193","import_time":"2026-05-03T20:48:01.278081063Z","id":"pypi/2026-03-roboat-addition/databaseroboat"},{"modified_time":"2026-03-29T23:01:20.450297Z","versions":["0.0.1","0.0.2"],"sha256":"2d41879b8aa9964477f1055038ad155029dd0d279d1d0011d3548181c1066277","source":"kam193","import_time":"2026-05-28T04:57:09.764779078Z","id":"pypi/2026-03-roboat-addition/databaseroboat"}]},"references":[{"type":"EVIDENCE","url":"https://www.virustotal.com/gui/file/9f14d239ab8f1289bc7aedeb67d3d72b467ee6c11b201890ab14c5c4f7c175d2/detection"},{"type":"EVIDENCE","url":"https://www.virustotal.com/gui/file/48b108261d5de97a42eff81cf1a60a32286f72bf8b5f130959e0daa86b783608"},{"type":"EVIDENCE","url":"https://www.virustotal.com/gui/file/ef20289b52ab23ec23c5ff885a2293523ce8456fb00e3d67f1b084c28f7d282a/detection"},{"type":"WEB","url":"https://bad-packages.kam193.eu/pypi/package/databaseroboat"},{"type":"WEB","url":"https://github.com/Addi9000/roboat/blob/331166c8ea3bd080f08fe6d571202e3b47017ed7/README.md#L31"},{"type":"WEB","url":"https://github.com/Addi9000/roboat/commit/331166c8ea3bd080f08fe6d571202e3b47017ed7"},{"type":"WEB","url":"https://github.com/Addi9000"},{"type":"WEB","url":"https://github.com/RoCruise"},{"type":"WEB","url":"https://www.roboat.pro/"}],"affected":[{"package":{"name":"databaseroboat","ecosystem":"PyPI","purl":"pkg:pypi/databaseroboat"},"versions":["0.0.1","0.0.2"],"database_specific":{"source":"https://github.com/ossf/malicious-packages/blob/main/osv/malicious/pypi/databaseroboat/MAL-2026-2295.json"}}],"schema_version":"1.7.5","credits":[{"name":"Kamil Mańkowski (kam193)","contact":["https://github.com/kam193","https://bad-packages.kam193.eu/"],"type":"ANALYST"}]}