// publicmosaic.yar — generated 2026-10-30 22:07 UTC — 1 rule, 4 hashes — TLP:CLEAR // source: https://publicmosaic.com — published for defensive use // scope: configuration endpoint — https://publicmosaic.com/config/endpoint/MjA2LjIwNi4xMjcuMjIxOjQ0Mw // 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/MjA2LjIwNi4xMjcuMjIxOjQ0Mw" generated = "2026-10-30 22:07 UTC" tlp = "clear" condition: hash.sha256(0, filesize) == "0efeb3a17d410c3260af54162057cb7089b13e0c173dc137b81560393e8a0662" or hash.sha256(0, filesize) == "401a96c6f4a452fa1ac8c443b39485902e19edd9e200e50d5f8c4aa8453264d7" or hash.sha256(0, filesize) == "b373108f4e3cab25b4e16a21dbc1c9712d610cb652ca6cc6605fdfe4c12fa120" or hash.sha256(0, filesize) == "ea47ff68e92d9a608bec072cd0d4f0c83f8419bc0bb5096c5f98ed5374f9315e" }