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