// publicmosaic.yar — generated 2026-10-30 22:07 UTC — 1 rule, 4 hashes — TLP:CLEAR // source: https://publicmosaic.com — published for defensive use // scope: configuration endpoint — https://publicmosaic.com/config/endpoint/MTk4LjQ2LjE1OS4yNDM6MjA4Ng // 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/MTk4LjQ2LjE1OS4yNDM6MjA4Ng" generated = "2026-10-30 22:07 UTC" tlp = "clear" condition: hash.sha256(0, filesize) == "0d28b10e9c91cf4e24a85d67d5ce6d54e783cb92887a5c19687784b037e2e14c" or hash.sha256(0, filesize) == "d12492ea6c4d943fbecaa1cab978fd85bbf627ea91ac169e4b35a50167950989" or hash.sha256(0, filesize) == "ea20c915c0a7abdd93fe87ff66bd1506d6da1da7c5337801fc6feee9dff6391b" or hash.sha256(0, filesize) == "f119e6010b92b01d5c026f10738548d8bd737ab84a98944530bb86ca20e5a00f" }