// publicmosaic.yar — generated 2026-10-30 20:37 UTC — 1 rule, 4 hashes — TLP:CLEAR // source: https://publicmosaic.com — published for defensive use // scope: configuration endpoint — https://publicmosaic.com/config/endpoint/MTcyLjI0NS4yNDcuMjE6MzIxMQ // 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/MTcyLjI0NS4yNDcuMjE6MzIxMQ" generated = "2026-10-30 20:37 UTC" tlp = "clear" condition: hash.sha256(0, filesize) == "18459938c6fed18bf5738a4b6c7f100c9987eda42053273283374c80a51d492b" or hash.sha256(0, filesize) == "29699f00da7f5cee8d2d6495659e4cd13a7c78e84d693b184f4d6a302132e3aa" or hash.sha256(0, filesize) == "4a4814ac0e4ac5afdd7421a07f37a3343862e688f587fb4343212fbaff10d70a" or hash.sha256(0, filesize) == "b49bece074cdbcaf02e80da7cc4022bfe94f4bcc34463d6993d75902f474614d" }