// 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/NjQuNy4xOTkuMTc3Ojg0NDM // 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/NjQuNy4xOTkuMTc3Ojg0NDM" generated = "2026-10-30 21:07 UTC" tlp = "clear" condition: hash.sha256(0, filesize) == "0fb39b98259f3f60b46ce051a005712e3c48d7ee84e47c381c2dee523c7c24c3" or hash.sha256(0, filesize) == "4a88f5463269a2c6502fd92292c8a6b68e9e0721e7a88434838aa0c0937f3285" or hash.sha256(0, filesize) == "4e820d633af5c838fc26dd58a899b8cf104962fd2df1cbf8bc738b5501f56b0e" or hash.sha256(0, filesize) == "aee82200e13852d94af483bddd068ca1883199a79c9613346e7dd34a493b0818" }