// publicmosaic.yar — generated 2026-10-31 14:07 UTC — 1 rule, 4 hashes — TLP:CLEAR // source: https://publicmosaic.com — published for defensive use // scope: configuration endpoint — https://publicmosaic.com/config/endpoint/MTA3LjE1MS4yMzMuMTIwOjgwODQ // 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/MTA3LjE1MS4yMzMuMTIwOjgwODQ" generated = "2026-10-31 14:07 UTC" tlp = "clear" condition: hash.sha256(0, filesize) == "20dc6068fd1b7dd6591b5eb8f149680d824daa95edfcac1357ef347c57604d35" or hash.sha256(0, filesize) == "980185f96123e208c52bbdbd6b5519b936a2c81f647459462789463d31a807f4" or hash.sha256(0, filesize) == "9ace1582c5ba9b845f60f28dd4b9c70b4f3c0a242069aaac25644cdcc9ed53a8" or hash.sha256(0, filesize) == "bdb58ecd936fdb9b21f3440d735503446bb4df02928f4126d0dc35da5a15be3f" }