// publicmosaic.yar — generated 2026-10-31 08:37 UTC — 1 rule, 4 hashes — TLP:CLEAR // source: https://publicmosaic.com — published for defensive use // scope: configuration endpoint — https://publicmosaic.com/config/endpoint/MTk0LjE4MC4yMDYuMTYzOjE5MTgx // 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/MTk0LjE4MC4yMDYuMTYzOjE5MTgx" generated = "2026-10-31 08:37 UTC" tlp = "clear" condition: hash.sha256(0, filesize) == "0c78e8801bf1487f303952ecc8384889df2c96869fe5bfa9c179b6b0d7cb92f9" or hash.sha256(0, filesize) == "a7e89cafe9cd40e84d02a10427a167229adcdb15fa3d399b0b13886a97d1c117" or hash.sha256(0, filesize) == "c09f92042694266efd84d3f3de5b0abfb809a74926bf9d4b01d6d7394cb6a505" or hash.sha256(0, filesize) == "d544e94356695520d30393f726ff01e38a65963ed2fbfca365acd2c209e6e530" }