// publicmosaic.yar — generated 2026-10-30 21:07 UTC — 1 rule, 4 hashes — TLP:CLEAR // source: https://publicmosaic.com — published for defensive use // scope: configuration endpoint — https://publicmosaic.com/config/endpoint/MTg2LjI0NC4yMTYuMTEzOjEwMDAw // 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/MTg2LjI0NC4yMTYuMTEzOjEwMDAw" generated = "2026-10-30 21:07 UTC" tlp = "clear" condition: hash.sha256(0, filesize) == "059a796184e4865349fae9d981e99ce5faec4cf6d0582ed545d50e1fa0d1c59c" or hash.sha256(0, filesize) == "28d3ca7862df881a03746d7aadaef28213c7db8bfbb50262cfe97b05ec13e99e" or hash.sha256(0, filesize) == "cf41949e66d5d7c410d7b0961118339e196c3b67a8c2229f74d46ed660a1c1f9" or hash.sha256(0, filesize) == "d91604d0f1cf0dfe09338788c6259f7adf6e0c5c4f45db63f28acd96087f7346" }