// publicmosaic.yar — generated 2026-10-30 21:07 UTC — 1 rule, 4 hashes — TLP:CLEAR // source: https://publicmosaic.com — published for defensive use // scope: configuration endpoint — https://publicmosaic.com/config/endpoint/MTU2LjIzOC4yMzcuMTAzOjQ0Mw // 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/MTU2LjIzOC4yMzcuMTAzOjQ0Mw" generated = "2026-10-30 21:07 UTC" tlp = "clear" condition: hash.sha256(0, filesize) == "1663d98c259001f1b03f82d0c5bee7cfd3c7623ccb83759c994f9ab845939665" or hash.sha256(0, filesize) == "7e1c4df32db93ceb0dbc329be94e8957e3063408844261d95163610e153926d7" or hash.sha256(0, filesize) == "a640caf32315bbef67969c148ea99ba4d004a7bb823e9d34a44e17bb6c397f0b" or hash.sha256(0, filesize) == "e4f8acc7c24cb443c76ad4f34e7d7963bea1695832bee2aa2445fd8be7a5795a" }