// 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/NTIuMTI4LjIyNC4yMzU6ODA4NA // 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/NTIuMTI4LjIyNC4yMzU6ODA4NA" generated = "2026-10-30 22:07 UTC" tlp = "clear" condition: hash.sha256(0, filesize) == "0a14960c6216cae58ee07ae6e83dd0dd1f03e4106561c34c25322877ce0b1b8e" or hash.sha256(0, filesize) == "2f8654fbf1bf22c7cd9f485ff10fdb4fc6f5551bc7cdce118952919fe1d3cdd8" or hash.sha256(0, filesize) == "392bf659c234400b3e30ad833d9bcc09394d6fb68e868366bcfe155ebe25d663" or hash.sha256(0, filesize) == "c4cf9daa5cc582166e407b22a52d83257b13181ad8bc0990b3e75b0c79ee6731" }