// publicmosaic.yar — generated 2026-10-30 21:07 UTC — 1 rule, 4 hashes — TLP:CLEAR // source: https://publicmosaic.com — published for defensive use // scope: configuration endpoint — https://publicmosaic.com/config/endpoint/ODguMjE2LjIwOC45MTo2NTUyMw // basis: SHA-256 hash match only; no string or byte patterns. // Files known only by their Content-Type header are excluded. import "hash" rule PublicMosaic_vshell_hashes { meta: description = "VShell files observed by Public Mosaic, matched by SHA-256" basis = "hash match; no file bytes held" provenance = "file analysis, sandbox run" reference = "https://publicmosaic.com/config/endpoint/ODguMjE2LjIwOC45MTo2NTUyMw" generated = "2026-10-30 21:07 UTC" tlp = "clear" condition: hash.sha256(0, filesize) == "0397e75190c05a949bdb04eed4a9e6de6f4edb97f0c98f220609669bb0913164" or hash.sha256(0, filesize) == "21bfa6dfe24075891ce7af4006220974d17932c366ba57ac8d192220ec72ad5e" or hash.sha256(0, filesize) == "6869e2faf79413dc819c3d4739281936e03e35f3f7670166541c05c3d7703602" or hash.sha256(0, filesize) == "930732b10bbeeda80576403c565093cf6efb7a5567a8203ac4cc2b9d7e7f0276" }