// publicmosaic.yar — generated 2026-10-31 11:37 UTC — 1 rule, 4 hashes — TLP:CLEAR // source: https://publicmosaic.com — published for defensive use // scope: configuration endpoint — https://publicmosaic.com/config/endpoint/MTU0Ljg4Ljk2LjQ3Ojg4ODQ // 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/MTU0Ljg4Ljk2LjQ3Ojg4ODQ" generated = "2026-10-31 11:37 UTC" tlp = "clear" condition: hash.sha256(0, filesize) == "420dc2d45632adcff235be2d249aa1fbc2b4e59defd88e60cdeed01dbb66ba8e" or hash.sha256(0, filesize) == "4f470fec5173f27ec2120d3ee8a3daa24ab5f8414e1baa53a8d95990dcad62e4" or hash.sha256(0, filesize) == "cffc6f753e8dc37e690f79057bc0324c1439a0b8d3dff12fc7e4d33b6f9bd61a" or hash.sha256(0, filesize) == "f8b80718084bafa99eb63e94768d4fe98b65cf0b53fb9835e785234a6d6c52a6" }