// publicmosaic.yar — generated 2026-10-31 12:07 UTC — 1 rule, 4 hashes — TLP:CLEAR // source: https://publicmosaic.com — published for defensive use // scope: configuration endpoint — https://publicmosaic.com/config/endpoint/MjMuMjU0LjI0Mi4yNDo0NDM // 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/MjMuMjU0LjI0Mi4yNDo0NDM" generated = "2026-10-31 12:07 UTC" tlp = "clear" condition: hash.sha256(0, filesize) == "b8a995156ffcd7f4266fb081c21e699bb55574a8856a7a9801b8b463a8f25f11" or hash.sha256(0, filesize) == "d2a23ebea8ae7d158f765d07e6b588fc60875a698c1ea0a07ea8f7324a3bbea8" or hash.sha256(0, filesize) == "df9258e43ae0d88205bf4e20fef8980c40dffe84a6acf53378eb4a20ae61190c" or hash.sha256(0, filesize) == "fc0560fa78bd22e2d2e8b0f7ced0a295c71856bfcd800e593b580de7a7e8152e" }