{"adoption": {"forks": 412, "observed_at": "2026-08-28T04:06:35.835338+00:00", "stars": 2307}, "canonical_url": "https://ross.abutalabs.com/products/macro_pack", "card": {"archived": true, "artifact_type": "cli-tool", "description": "macro_pack is a tool by @EmericNasi used to automatize obfuscation and generation of Office documents, VB scripts, shortcuts, and other formats for pentest, demo, and social engineering assessments. The goal of macro_pack is to simplify exploitation, antimalware bypass, and automatize the process from malicious macro and script generation to final document generation. It also provides a lot of helpful features useful for redteam or security research. ", "domain": ["security", "penetration-testing", "developer-tools"], "enriched": true, "function": ["security", "penetration-testing", "cli", "developer-tools"], "health_score": 10, "homepage": "https://blog.sevagas.com", "language": "Python", "license": "Apache-2.0", "license_family": "permissive", "maturity": "abandoned", "member_repos": ["sevagas/macro_pack"], "name": "sevagas/macro_pack", "platform": ["python", "windows", "cli"], "pushed_at": "2024-08-15T14:21:39+00:00", "repo": "sevagas/macro_pack", "stars": 2307, "tags": ["redteam", "social-engineering", "vba", "obfuscation", "macro-generation", "office-documents", "antivirus-bypass", "pentest", "command-line", "linux"], "topics": ["pentest", "social-engineering", "vba", "obfuscation", "redteam", "msoffice", "macros", "meterpreter"], "urls": [], "use_cases": ["generate obfuscated macro-enabled office documents for pentest engagements", "bypass antimalware detection of VBA payloads", "create social engineering attack documents for red team assessments", "automate VBA and VBS script obfuscation", "generate malicious shortcuts and script formats like lnk, hta, wsf", "integrate Metasploit or Empire payloads into office documents", "demo macro attack techniques for security training"], "what_it_is": "macro_pack is a Python CLI tool that automates obfuscation and generation of MS Office documents, VBA/VBS scripts, shortcuts, and other formats for red teaming, pentests, and social engineering assessments. It simplifies antimalware bypass by automating the pipeline from VBA source to final malicious document or payload format.", "when_to_avoid": ["you need actively maintained tooling - the project has not been maintained since 2021", "you lack Windows with MS Office installed for automatic document generation or trojan features", "you need modern EDR bypass or initial access capabilities beyond legacy macro techniques", "you are looking for a defensive or detection tool rather than offensive"], "when_to_choose": ["you need to automate generation of obfuscated Office/VBA payloads during authorized red team or pentest work", "you want a single-line CLI tool compatible with Metasploit and Empire payloads", "you need to generate many retro formats (docm, xlsm, lnk, hta, etc.) quickly"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/macro_pack", "repo": "sevagas/macro_pack", "role": "main", "score": 10}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:06:35.835338+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T02:39:39.907591+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "d0fa9c1c183e7435697be37ea54db29629604acb9f9972a2f9d515ae76917882", "fetched_at": "2026-08-28T04:06:35.835338+00:00", "kind": "readme", "missing": false, "url": "https://github.com/sevagas/macro_pack"}, {"content_hash": "fbe96f011e274718bbfe8d525894d648140b1a38a34812bd54e0d34cd456fbb9", "fetched_at": "2026-08-29T10:19:56.096927+00:00", "kind": "homepage", "missing": false, "url": "https://blog.sevagas.com"}, {"content_hash": "78c601362256cd07b7fe84d1e4f029a1f25dcc3a78e0d3510a9d3bcce9bc7fb6", "fetched_at": "2026-08-29T10:19:56.105804+00:00", "kind": "site_page", "missing": false, "url": "https://blog.sevagas.com/?-About-us-=&lang=en"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:06:35.835338+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T02:39:39.907591+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "d0fa9c1c183e7435697be37ea54db29629604acb9f9972a2f9d515ae76917882", "fetched_at": "2026-08-28T04:06:35.835338+00:00", "kind": "readme", "missing": false, "url": "https://github.com/sevagas/macro_pack"}, {"content_hash": "fbe96f011e274718bbfe8d525894d648140b1a38a34812bd54e0d34cd456fbb9", "fetched_at": "2026-08-29T10:19:56.096927+00:00", "kind": "homepage", "missing": false, "url": "https://blog.sevagas.com"}, {"content_hash": "78c601362256cd07b7fe84d1e4f029a1f25dcc3a78e0d3510a9d3bcce9bc7fb6", "fetched_at": "2026-08-29T10:19:56.105804+00:00", "kind": "site_page", "missing": false, "url": "https://blog.sevagas.com/?-About-us-=&lang=en"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T02:39:39.907591+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "d0fa9c1c183e7435697be37ea54db29629604acb9f9972a2f9d515ae76917882", "fetched_at": "2026-08-28T04:06:35.835338+00:00", "kind": "readme", "missing": false, "url": "https://github.com/sevagas/macro_pack"}, {"content_hash": "fbe96f011e274718bbfe8d525894d648140b1a38a34812bd54e0d34cd456fbb9", "fetched_at": "2026-08-29T10:19:56.096927+00:00", "kind": "homepage", "missing": false, "url": "https://blog.sevagas.com"}, {"content_hash": "78c601362256cd07b7fe84d1e4f029a1f25dcc3a78e0d3510a9d3bcce9bc7fb6", "fetched_at": "2026-08-29T10:19:56.105804+00:00", "kind": "site_page", "missing": false, "url": "https://blog.sevagas.com/?-About-us-=&lang=en"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:06:35.835338+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:06:35.835338+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:06:35.835338+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T02:39:39.907591+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "d0fa9c1c183e7435697be37ea54db29629604acb9f9972a2f9d515ae76917882", "fetched_at": "2026-08-28T04:06:35.835338+00:00", "kind": "readme", "missing": false, "url": "https://github.com/sevagas/macro_pack"}, {"content_hash": "fbe96f011e274718bbfe8d525894d648140b1a38a34812bd54e0d34cd456fbb9", "fetched_at": "2026-08-29T10:19:56.096927+00:00", "kind": "homepage", "missing": false, "url": "https://blog.sevagas.com"}, {"content_hash": "78c601362256cd07b7fe84d1e4f029a1f25dcc3a78e0d3510a9d3bcce9bc7fb6", "fetched_at": "2026-08-29T10:19:56.105804+00:00", "kind": "site_page", "missing": false, "url": "https://blog.sevagas.com/?-About-us-=&lang=en"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:06:35.835338+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:06:35.835338+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T02:39:39.907591+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "d0fa9c1c183e7435697be37ea54db29629604acb9f9972a2f9d515ae76917882", "fetched_at": "2026-08-28T04:06:35.835338+00:00", "kind": "readme", "missing": false, "url": "https://github.com/sevagas/macro_pack"}, {"content_hash": "fbe96f011e274718bbfe8d525894d648140b1a38a34812bd54e0d34cd456fbb9", "fetched_at": "2026-08-29T10:19:56.096927+00:00", "kind": "homepage", "missing": false, "url": "https://blog.sevagas.com"}, {"content_hash": "78c601362256cd07b7fe84d1e4f029a1f25dcc3a78e0d3510a9d3bcce9bc7fb6", "fetched_at": "2026-08-29T10:19:56.105804+00:00", "kind": "site_page", "missing": false, "url": "https://blog.sevagas.com/?-About-us-=&lang=en"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:06:35.835338+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:06:35.835338+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:06:35.835338+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T02:39:39.907591+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "d0fa9c1c183e7435697be37ea54db29629604acb9f9972a2f9d515ae76917882", "fetched_at": "2026-08-28T04:06:35.835338+00:00", "kind": "readme", "missing": false, "url": "https://github.com/sevagas/macro_pack"}, {"content_hash": "fbe96f011e274718bbfe8d525894d648140b1a38a34812bd54e0d34cd456fbb9", "fetched_at": "2026-08-29T10:19:56.096927+00:00", "kind": "homepage", "missing": false, "url": "https://blog.sevagas.com"}, {"content_hash": "78c601362256cd07b7fe84d1e4f029a1f25dcc3a78e0d3510a9d3bcce9bc7fb6", "fetched_at": "2026-08-29T10:19:56.105804+00:00", "kind": "site_page", "missing": false, "url": "https://blog.sevagas.com/?-About-us-=&lang=en"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:06:35.835338+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:06:35.835338+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T02:39:39.907591+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "d0fa9c1c183e7435697be37ea54db29629604acb9f9972a2f9d515ae76917882", "fetched_at": "2026-08-28T04:06:35.835338+00:00", "kind": "readme", "missing": false, "url": "https://github.com/sevagas/macro_pack"}, {"content_hash": "fbe96f011e274718bbfe8d525894d648140b1a38a34812bd54e0d34cd456fbb9", "fetched_at": "2026-08-29T10:19:56.096927+00:00", "kind": "homepage", "missing": false, "url": "https://blog.sevagas.com"}, {"content_hash": "78c601362256cd07b7fe84d1e4f029a1f25dcc3a78e0d3510a9d3bcce9bc7fb6", "fetched_at": "2026-08-29T10:19:56.105804+00:00", "kind": "site_page", "missing": false, "url": "https://blog.sevagas.com/?-About-us-=&lang=en"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T02:39:39.907591+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "d0fa9c1c183e7435697be37ea54db29629604acb9f9972a2f9d515ae76917882", "fetched_at": "2026-08-28T04:06:35.835338+00:00", "kind": "readme", "missing": false, "url": "https://github.com/sevagas/macro_pack"}, {"content_hash": "fbe96f011e274718bbfe8d525894d648140b1a38a34812bd54e0d34cd456fbb9", "fetched_at": "2026-08-29T10:19:56.096927+00:00", "kind": "homepage", "missing": false, "url": "https://blog.sevagas.com"}, {"content_hash": "78c601362256cd07b7fe84d1e4f029a1f25dcc3a78e0d3510a9d3bcce9bc7fb6", "fetched_at": "2026-08-29T10:19:56.105804+00:00", "kind": "site_page", "missing": false, "url": "https://blog.sevagas.com/?-About-us-=&lang=en"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T02:39:39.907591+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "d0fa9c1c183e7435697be37ea54db29629604acb9f9972a2f9d515ae76917882", "fetched_at": "2026-08-28T04:06:35.835338+00:00", "kind": "readme", "missing": false, "url": "https://github.com/sevagas/macro_pack"}, {"content_hash": "fbe96f011e274718bbfe8d525894d648140b1a38a34812bd54e0d34cd456fbb9", "fetched_at": "2026-08-29T10:19:56.096927+00:00", "kind": "homepage", "missing": false, "url": "https://blog.sevagas.com"}, {"content_hash": "78c601362256cd07b7fe84d1e4f029a1f25dcc3a78e0d3510a9d3bcce9bc7fb6", "fetched_at": "2026-08-29T10:19:56.105804+00:00", "kind": "site_page", "missing": false, "url": "https://blog.sevagas.com/?-About-us-=&lang=en"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T02:39:39.907591+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "d0fa9c1c183e7435697be37ea54db29629604acb9f9972a2f9d515ae76917882", "fetched_at": "2026-08-28T04:06:35.835338+00:00", "kind": "readme", "missing": false, "url": "https://github.com/sevagas/macro_pack"}, {"content_hash": "fbe96f011e274718bbfe8d525894d648140b1a38a34812bd54e0d34cd456fbb9", "fetched_at": "2026-08-29T10:19:56.096927+00:00", "kind": "homepage", "missing": false, "url": "https://blog.sevagas.com"}, {"content_hash": "78c601362256cd07b7fe84d1e4f029a1f25dcc3a78e0d3510a9d3bcce9bc7fb6", "fetched_at": "2026-08-29T10:19:56.105804+00:00", "kind": "site_page", "missing": false, "url": "https://blog.sevagas.com/?-About-us-=&lang=en"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 8}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": ["archived"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 3256, "days_push": 748, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 10, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}