Skip to Content
Scan your AI agents for free·npx -y @inkog-io/cli scan .·Get Started →
ComplianceISO 42001

ISO/IEC 42001

Map Inkog findings to ISO/IEC 42001:2023 AI Management System requirements.

Rules that carry an ISO/IEC 42001 mapping stamp compliance_mapping.iso_42001_clauses on every finding they produce, in the CLI JSON output, the REST API, and the MCP server. Agent Capability Surface gaps carry Annex A control references. Inkog does not generate an AI Management System (AIMS) clause-by-clause certification report; the matrix below lists exactly which clauses findings reference today.

Clause and Annex A control titles follow the published structure of ISO/IEC 42001:2023. Rule-to-clause assignments were reviewed on 2026-09-04: security rules map to 8.2/8.3 (risk assessment and treatment) and A.6.2.4 (verification and validation); oversight rules to 8.4 and A.9.2; resource rules to A.4.5; logging rules to A.6.2.8 and 9.1; supply chain to A.10.3; data rules to A.7.x.

ISO/IEC 42001 is the first international standard for AI Management Systems. It provides a framework for establishing, implementing, and improving AI governance within organizations.

Overview

ISO/IEC 42001:2023 specifies requirements for an AI Management System (AIMS). Inkog helps organizations meet technical security requirements by detecting logic flaws and security risks in AI agent code, and tags each finding with the clauses it bears on.

Coverage Matrix

ISO/IEC 42001:2023. 36 of 36 rules carry a clause mapping. Generated from the rule engine’s metadata; do not edit by hand.

ClauseTitleRules whose findings reference it
8.2AI risk assessmentcommand_injection, context_exhaustion, cross_tenant, data_poisoning, excessive_permissions, exec_eval, hardcoded_credentials, infinite_loop, logging_sensitive_data, missing_authz, missing_rate_limits, output_validation, path_traversal, pii_filter_wiring, prompt_injection, prompt_template, rag_overfetching, recursive_tool_calling, skill_autonomy_abuse, skill_cross_origin, skill_excessive_permissions, skill_supply_chain, skill_tool_poisoning, sql_injection, ssrf, supply_chain, system_prompt_leak, token_bombing, token_validation, unsafe_deserialization, unsafe_env_access, unsigned_messages
8.3AI risk treatmentcommand_injection, context_exhaustion, cross_tenant, excessive_permissions, exec_eval, hardcoded_credentials, infinite_loop, logging_sensitive_data, missing_authz, missing_rate_limits, output_validation, path_traversal, pii_filter_wiring, prompt_injection, prompt_template, recursive_tool_calling, skill_excessive_permissions, skill_tool_poisoning, sql_injection, ssrf, system_prompt_leak, token_bombing, token_validation, unsafe_deserialization, unsafe_env_access, unsigned_messages
8.4AI system impact assessmentgoal_conflict_detection, missing_oversight, overreliance
9.1Monitoring, measurement, analysis and evaluationmissing_audit_logging
A.4.5Annex A: System and computing resourcescontext_exhaustion, infinite_loop, missing_rate_limits, recursive_tool_calling, token_bombing
A.6.2.4Annex A: AI system verification and validationcommand_injection, cross_tenant, exec_eval, hardcoded_credentials, output_validation, path_traversal, pii_filter_wiring, prompt_injection, prompt_template, skill_cross_origin, skill_tool_poisoning, sql_injection, ssrf, system_prompt_leak, unsafe_deserialization, unsafe_env_access, unsigned_messages
A.6.2.6Annex A: AI system operation and monitoringcontext_exhaustion, infinite_loop, missing_oversight, recursive_tool_calling
A.6.2.8Annex A: AI system recording of event logslogging_sensitive_data, missing_audit_logging
A.7.2Annex A: Data for development and enhancement of AI systemrag_overfetching
A.7.4Annex A: Quality of data for AI systemsdata_poisoning
A.7.5Annex A: Data provenancedata_poisoning
A.9.2Annex A: Processes for responsible use of AI systemsexcessive_permissions, goal_conflict_detection, missing_authz, missing_oversight, overreliance, skill_autonomy_abuse, skill_excessive_permissions, token_validation
A.10.3Annex A: Suppliersskill_supply_chain, supply_chain

Agent Capability Surface gaps reference Annex A controls by the control that is missing:

Missing controlAnnex A reference
human_approvalA.6.2.6 (AI system operation and monitoring), A.9.2 (Processes for responsible use of AI systems)
authorization_checkA.6.2.4 (AI system verification and validation), A.9.2 (Processes for responsible use of AI systems)
audit_logA.6.2.8 (AI system recording of event logs), 9.1 (Monitoring, measurement, analysis and evaluation)
rate_limitA.4.5 (System and computing resources), A.6.2.6 (AI system operation and monitoring)

Read the clause references from scan output:

inkog -path ./agents -output json \ | jq '[.server_findings[] | select(.compliance_mapping.iso_42001_clauses) | {id: .pattern_id, iso: .compliance_mapping.iso_42001_clauses}]'

The clause sections below are conceptual guidance on how findings support each requirement; they are not a certification checklist.


Clause 6.1: Actions to Address Risks

“The organization shall determine the risks and opportunities that need to be addressed.”

Inkog Support:

Inkog automatically identifies risks in AI agent code:

Risk CategoryInkog DetectionSeverity
Resource exhaustionInfinite loops, token bombingCRITICAL
Data leakageCross-tenant vulnerabilitiesCRITICAL
Unauthorized actionsUnsafe code executionCRITICAL
Prompt manipulationPrompt injection patternsHIGH
System availabilityMemory overflow, unbounded operationsHIGH

Evidence Collection:

# Generate risk assessment report inkog scan ./agents -output json > risk-assessment.json # Extract risk summary cat risk-assessment.json | jq '{ total_risks: .all_findings | length, critical: [.all_findings[] | select(.severity == "CRITICAL")] | length, high: [.all_findings[] | select(.severity == "HIGH")] | length, risk_categories: [.all_findings[].pattern] | unique }'

Clause 6.2: AI Objectives and Planning

“The organization shall establish AI objectives at relevant functions.”

Security Objectives Mapping:

ObjectiveInkog MetricTarget
Zero critical vulnerabilitiescritical_count0
Reduce high severityhigh_count trend↓ 20% quarterly
Full coveragefiles_scanned100% of AI code
Continuous monitoringCI/CD integrationAll PRs scanned

Tracking Example:

# Track objectives over time inkog scan . -output json | jq '{ date: now | strftime("%Y-%m-%d"), critical_count: .critical_count, high_count: .high_count, files_scanned: .files_scanned, compliant: (.critical_count == 0) }' >> objectives-tracking.jsonl

Clause 8.2: AI Risk Assessment

“The organization shall implement an AI risk assessment process.”

Risk Assessment Workflow:

  1. Identify - Inkog scans detect logic flaws and security risks
  2. Analyze - Severity levels (CRITICAL/HIGH/MEDIUM/LOW)
  3. Evaluate - CWE and CVSS scoring
  4. Treat - Remediation guidance per finding

Finding to Risk Mapping:

Inkog FindingCWECVSSRisk Level
Infinite LoopCWE-8357.5High
Token BombingCWE-4009.0Critical
Code ExecutionCWE-949.8Critical
Prompt InjectionCWE-778.0High
Data ExposureCWE-2007.0High

Clause 8.4: AI System Impact Assessment

“The organization shall implement security controls for AI systems.”

Control Categories:

8.4.1 Secure Development

Inkog enforces secure coding practices:

Non-Compliant
Violates 8.4 - unbounded AI execution
# No iteration limits
agent = Agent(tools=tools)
agent.run(user_input)
Compliant
Meets 8.4 - controlled execution boundaries
# Bounded execution
agent = Agent(
  tools=tools,
  max_iterations=15,
  timeout=60
)
agent.run(validated_input)

8.4.2 Input Validation

# Inkog detects unvalidated inputs # Finding: "User input directly in LLM prompt" # Remediation: Implement input validation def compliant_handler(user_input): validated = sanitize_input(user_input) validate_format(validated) return process_query(validated)

8.4.3 Output Handling

# Inkog detects unsafe output handling # Finding: "LLM output used without validation" # Remediation: Validate before use def compliant_output_handler(llm_response): parsed = parse_response(llm_response) validated = validate_output_schema(parsed) sanitized = sanitize_for_display(validated) return sanitized

Clause 9.1: Monitoring, Measurement, Analysis

“The organization shall determine what needs to be monitored.”

Continuous Monitoring Setup:

# GitHub Actions for continuous monitoring name: ISO 42001 Compliance Scan on: schedule: - cron: '0 0 * * *' # Daily push: branches: [main] jobs: compliance-scan: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - name: Run Inkog Scan run: | npx -y @inkog-io/cli scan . -output json > compliance-report.json - name: Check Compliance run: | CRITICAL=$(jq '[.server_findings[] | select(.severity == "CRITICAL")] | length' compliance-report.json) if [ "$CRITICAL" -gt 0 ]; then echo "Non-compliant: $CRITICAL critical findings" exit 1 fi echo "Compliant: No critical findings" - name: Archive Evidence uses: actions/upload-artifact@v4 with: name: iso42001-evidence-${{ github.run_number }} path: compliance-report.json

Clause 10.2: Continual Improvement

“The organization shall continually improve the suitability and effectiveness of the AIMS.”

Improvement Tracking:

# Track improvement over releases for version in v1.0 v1.1 v1.2; do git checkout $version inkog scan . -output json | jq "{ version: \"$version\", total: .findings_count, critical: .critical_count, high: .high_count }" done | jq -s '.'

Expected Output:

[ {"version": "v1.0", "total": 15, "critical": 3, "high": 5}, {"version": "v1.1", "total": 8, "critical": 1, "high": 3}, {"version": "v1.2", "total": 4, "critical": 0, "high": 2} ]

Generating Evidence

Use scan results as evidence for ISO 42001 audits:

# Generate scan results inkog -path ./agents -output json > scan-results.json # View summary cat scan-results.json | jq '{ files_scanned: .files_scanned, findings_count: .findings_count, critical_count: .critical_count, high_count: .high_count }'

A dedicated evidence package generator is on our roadmap. Currently, use JSON output for audit documentation.


Compliance Checklist

RequirementInkog FeatureStatus
Risk identificationStatic analysis scanning✓
Risk severity assessmentCRITICAL/HIGH/MEDIUM/LOW✓
CWE classificationCWE IDs per finding✓
Remediation guidanceFix suggestions✓
Continuous monitoringCI/CD integration✓
Evidence generationJSON/HTML reports✓
Trend analysisHistorical comparison✓

Best Practices

  1. Integrate into CI/CD for continuous compliance
  2. Archive all scan results as audit evidence
  3. Set zero tolerance for critical findings
  4. Track trends quarter-over-quarter
  5. Document remediation for each finding
  6. Review periodically with security team
Last updated on