// publicmosaic.yar — generated 2026-10-31 03:07 UTC — 1 rule, 4 hashes — TLP:CLEAR // source: https://publicmosaic.com — published for defensive use // scope: configuration endpoint — https://publicmosaic.com/config/endpoint/MTQ4LjY2LjE3LjEyMzo2MDAwMw // 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/MTQ4LjY2LjE3LjEyMzo2MDAwMw" generated = "2026-10-31 03:07 UTC" tlp = "clear" condition: hash.sha256(0, filesize) == "2c1b9be4bab04b6e0c5cd6e18ee6a413594074ac327448911a9f7312f1cb9c04" or hash.sha256(0, filesize) == "4cf483f0328e74c0bfda4e59fb79d9b835351fab74e1fc04526997e5e3eb0288" or hash.sha256(0, filesize) == "e71804dc65d8fe4afefd505c87a675d87c15907210dde268ae5eb4992d462f2a" or hash.sha256(0, filesize) == "fc9fa5f40e8f1b8a5da1652d19780df691de14d51f8278b02d3b3be320a2789b" }