// 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/MTA4LjE2NS4xNzYuMTI0OjQ0Mw // 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/MTA4LjE2NS4xNzYuMTI0OjQ0Mw" generated = "2026-10-30 21:07 UTC" tlp = "clear" condition: hash.sha256(0, filesize) == "9c0aecb05a61543245c1556ce90b9d200c890e70f2c8b32967e3ad42f891df3a" or hash.sha256(0, filesize) == "bf1f54fbaad7ea38e67d7d1c59cd33ff3205ad9304c06c00cdf3f622c1d1f13b" or hash.sha256(0, filesize) == "c0dcf3dbcb041741dc581bed84a0cee3c22d357acacc74613fcebb9eff101476" or hash.sha256(0, filesize) == "d08351256382ba61d223f4c4f784903b4378a8efcbd982aa332ddaa85efc0a7d" }