// publicmosaic.yar — generated 2026-10-30 21:07 UTC — 1 rule, 4 hashes — TLP:CLEAR // source: https://publicmosaic.com — published for defensive use // scope: configuration endpoint — https://publicmosaic.com/config/endpoint/NDMuMjU1LjE1Ni4yMzI6ODA4MA // 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/NDMuMjU1LjE1Ni4yMzI6ODA4MA" generated = "2026-10-30 21:07 UTC" tlp = "clear" condition: hash.sha256(0, filesize) == "0e97028933bd1f655652157334e6ff7109107d5ebf0065154172bd761241f21b" or hash.sha256(0, filesize) == "290f707e5b69da7e4c9e34991f36b0e1cc95fd444c69a0d1030e9d101f13edb5" or hash.sha256(0, filesize) == "8fe7f73e5283388408f0895f18dfbe8f2d756b1b459df5d0a1d9a1640110985b" or hash.sha256(0, filesize) == "9cccd1d29fd3b85b51a85cf056c5ac96c3b1fc1980ff6b4e286f55e1922dfa2b" }