// publicmosaic.yar — generated 2026-10-31 10:37 UTC — 1 rule, 4 hashes — TLP:CLEAR // source: https://publicmosaic.com — published for defensive use // scope: configuration endpoint — https://publicmosaic.com/config/endpoint/MTU0Ljg4Ljk4LjQ0Ojg4ODQ // 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/MTU0Ljg4Ljk4LjQ0Ojg4ODQ" generated = "2026-10-31 10:37 UTC" tlp = "clear" condition: hash.sha256(0, filesize) == "00ab3c9b5f6850e3e409cd0d06391a831f42a460dea344bbbf34083a73f7c4bf" or hash.sha256(0, filesize) == "312ff6434ac7fd7f76104e52dbff9a757b932bbe714dac7a8456a7da9971fd31" or hash.sha256(0, filesize) == "71a0a2bf8080efca564d67a78fceab77cab2ccc0605b8275f8d719f73bb2d38d" or hash.sha256(0, filesize) == "d07f06c45cc207fabc1870ebc9cd61157db9a60ed48976b815ebaabd1a90ecde" }