// publicmosaic.yar — generated 2026-10-31 11:07 UTC — 1 rule, 4 hashes — TLP:CLEAR // source: https://publicmosaic.com — published for defensive use // scope: configuration endpoint — https://publicmosaic.com/config/endpoint/MTU0Ljg4Ljk5LjQ2Ojg4ODQ // 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/MTU0Ljg4Ljk5LjQ2Ojg4ODQ" generated = "2026-10-31 11:07 UTC" tlp = "clear" condition: hash.sha256(0, filesize) == "070b232e0ab49248ba5c8df5bb63650a881c0d98d2a992ccb6e4ba67d3058673" or hash.sha256(0, filesize) == "a1661cd2741a703b280d42d95484ecf30614a9237e34832030d626b0147b6f8a" or hash.sha256(0, filesize) == "c22aed289d656fc3418c267218271666c3b4c132e0d9159d7ee682740f6b0389" or hash.sha256(0, filesize) == "fb4eaceffbb97d7a0d09a64120e51f8faaab9b01cbbfef343ba978d669adaf22" }