// publicmosaic.yar — generated 2026-10-31 13:07 UTC — 1 rule, 4 hashes — TLP:CLEAR // source: https://publicmosaic.com — published for defensive use // scope: configuration endpoint — https://publicmosaic.com/config/endpoint/MTA3LjE3Mi4xOTAuMjUyOjgwODA // 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/MTA3LjE3Mi4xOTAuMjUyOjgwODA" generated = "2026-10-31 13:07 UTC" tlp = "clear" condition: hash.sha256(0, filesize) == "15066c8f61296e68703b1b39b851649c13342c86e06f086e785c8d103cecff3c" or hash.sha256(0, filesize) == "947e64fb71eb2df9f4b0f6195dacc0e0d1293c61a766e32e94b984d749c80bfd" or hash.sha256(0, filesize) == "dbf808ecf351f1d719ddd2728c882529bf4a1f16af9bb899782738d97701afd7" or hash.sha256(0, filesize) == "e0d6b5ebd2bb1efacd8300b1fb9f1c4a9b61443908858dc56af897c4dcf193c8" }