// publicmosaic.yar — generated 2026-10-31 01:37 UTC — 1 rule, 4 hashes — TLP:CLEAR // source: https://publicmosaic.com — published for defensive use // scope: configuration endpoint — https://publicmosaic.com/config/endpoint/NDUuNzcuMjYuMTY1OjQ0NDQ // 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/NDUuNzcuMjYuMTY1OjQ0NDQ" generated = "2026-10-31 01:37 UTC" tlp = "clear" condition: hash.sha256(0, filesize) == "029d4a966c229c10e3282f6c98bfa4a07696df1099fd7abd2f45732ab64b3ef2" or hash.sha256(0, filesize) == "17239d7cc089f76928d8b41bbdedfa58df411a35e0e4898e9364a28035fa4495" or hash.sha256(0, filesize) == "2b144b6afe2dac4acbcd38cc595b85d6429aa5bbb4c8355bec794185916a278f" or hash.sha256(0, filesize) == "877f698e54b5e1f8a92b56435c8771099b41f0f065c7443e4fe8d3533a40d9f4" }