INNER CODE UNIT · Python

parse_capa_json

FuzzingLabs/mcp-security-hub · binary-analysis/capa-mcp/server.py:73

def parse_capa_json(output: str) -> list[Capability]:
    capabilities = []
    try:
        data = json.loads(output)
        rules = data.get("rules", {})

        for rule_name, rule_data in rules.items():
            meta = rule_data.get("meta", {})

            attack_ids = []
            for att in meta.get("attack", []):
                if isinstance(att, dict):
                    attack_ids.append(f"{att.get('technique', '')} - {att.get('id', '')}")

            mbc_ids = []
            for mbc in meta.get("mbc", []):
                if isinstance(mbc, dict):
                    mbc_ids.append(f"{mbc.get('objective', '')} - {mbc.get('id', '')}")

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…