// publicmosaic.yar — generated 2026-10-30 23:37 UTC — 1 rule, 3 hashes — TLP:CLEAR // source: https://publicmosaic.com — published for defensive use // scope: configuration endpoint — https://publicmosaic.com/config/endpoint/NTguODcuNjUuNDM6ODA4NQ // 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" reference = "https://publicmosaic.com/config/endpoint/NTguODcuNjUuNDM6ODA4NQ" generated = "2026-10-30 23:37 UTC" tlp = "clear" condition: hash.sha256(0, filesize) == "31336a3ccf5111cc0930803f8e78f0e73e875c23d78a0aad76e6d25b3d3060cb" or hash.sha256(0, filesize) == "5017aa1c795f10aea4a2a8065846fe6c61d95caff306243f37ff0f3f433c7034" or hash.sha256(0, filesize) == "edf57f05f6aeba30ac4472e712e2f1c8f0a6c77a918dd5057a40c034c9720053" }