// publicmosaic.yar — generated 2026-10-31 10:37 UTC — 1 rule, 4 hashes — TLP:CLEAR // source: https://publicmosaic.com — published for defensive use // scope: configuration endpoint — https://publicmosaic.com/config/endpoint/MTU0Ljg4Ljk3LjU1Ojg4ODQ // 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/MTU0Ljg4Ljk3LjU1Ojg4ODQ" generated = "2026-10-31 10:37 UTC" tlp = "clear" condition: hash.sha256(0, filesize) == "288378eed9caf1006e807a5579a39e62edd4b3eb9b8f98a5e9fe8e78c10d3b2e" or hash.sha256(0, filesize) == "3d8abc71389f524788f2d01ed4e65c82584e1a55f36b9ccff0feee04968ac321" or hash.sha256(0, filesize) == "41ff8c766dea3f73e5a5a9646a42ee1d5cfd3004744756001ce80128025f5c95" or hash.sha256(0, filesize) == "993ea109e16949a7cce737263e7f55da390cb236f69ca052604ee3d0f46d1bb4" }