// publicmosaic.yar — generated 2026-10-31 09:07 UTC — 1 rule, 4 hashes — TLP:CLEAR // source: https://publicmosaic.com — published for defensive use // scope: configuration endpoint — https://publicmosaic.com/config/endpoint/MTQ4LjY2LjE3LjEyMzo1NjQzNQ // 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/MTQ4LjY2LjE3LjEyMzo1NjQzNQ" generated = "2026-10-31 09:07 UTC" tlp = "clear" condition: hash.sha256(0, filesize) == "0280f57961452e1e09986b5c4f01a1ebb16e33c0ac3b48a6fb916a796686b043" or hash.sha256(0, filesize) == "52e67bf5c6b2b5929506a1a71d2710408ce271ae657240d23c85399c1fe25c04" or hash.sha256(0, filesize) == "98df3912435a66f1f85f385e7bdac8456cf3f4db5d6df40990e8a766457d3673" or hash.sha256(0, filesize) == "dd288c13f0437fae39b0f0e0243c2cf4c993d3a1d0729cc1bc2147ca1ffc617c" }