// publicmosaic.yar — generated 2026-10-31 13:07 UTC — 1 rule, 4 hashes — TLP:CLEAR // source: https://publicmosaic.com — published for defensive use // scope: configuration endpoint — https://publicmosaic.com/config/endpoint/OTEuOTIuMjQyLjM6NzE3MQ // 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/OTEuOTIuMjQyLjM6NzE3MQ" generated = "2026-10-31 13:07 UTC" tlp = "clear" condition: hash.sha256(0, filesize) == "2c006ec832e81b23e34eb5778f75ac7b9a9032a52a8298cba7c77f9e31132dad" or hash.sha256(0, filesize) == "369194b4a53f8b79b7ad47b33173ca6b25a23d0d9fd15a6bc4c056ac394324cd" or hash.sha256(0, filesize) == "8a7720de5e5907bd2ba9c8984f5ad31afe58e9effe073079ce6fdf371e58ab49" or hash.sha256(0, filesize) == "bdcd3a84986fd01baea314e291c1b2ae6f61b3a96f40f79cc9e5dd47593915ef" }