// 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/MjMuMjU0LjIwOC4yMzY6OTg5NQ // 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/MjMuMjU0LjIwOC4yMzY6OTg5NQ" generated = "2026-10-31 12:07 UTC" tlp = "clear" condition: hash.sha256(0, filesize) == "018076edf1a22cf67a220285a4b72962ee2b1274d44fd908110f0cca77477af0" or hash.sha256(0, filesize) == "2579b9efe3b2cbb395229f546994722a43877eb866658d5354302ce711e1b8ce" or hash.sha256(0, filesize) == "5c98cef0ea6402ae5085c197ca1dde72cd8e50ece172eac97061d859f2a0cec1" or hash.sha256(0, filesize) == "d1e9be1ca2b5a77a40e18a184692f891994e96989684f6adcdbf8f992983dd50" }