// publicmosaic.yar — generated 2026-10-31 10:07 UTC — 1 rule, 4 hashes — TLP:CLEAR // source: https://publicmosaic.com — published for defensive use // scope: configuration endpoint — https://publicmosaic.com/config/endpoint/MTU0Ljg4Ljk5LjQ0Ojg4ODU // 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/MTU0Ljg4Ljk5LjQ0Ojg4ODU" generated = "2026-10-31 10:07 UTC" tlp = "clear" condition: hash.sha256(0, filesize) == "50a782ff35c1edf03d0e075f8a554fa8a86f2ba725c1fe37cc0816147139d75f" or hash.sha256(0, filesize) == "96eb2b671cf7b811459f8542b76abb40afde16e317f7c95f2777410216c4166d" or hash.sha256(0, filesize) == "99c4d736e964fa110475e5bda25719c6c4f81d97078ac3b4a69362265c62aa9f" or hash.sha256(0, filesize) == "df542a1e5fac5a3c824ba1ec12a21f1b3d2c8e2aece8a624a2071dcd6766f21c" }