No English page yet. Showing the Japanese source.
AI生成コードSecurity
記事状態: 公開 · 最終確認: 未確認
要点
「生成コードは、通常のコードと同じく解析・依存関係・secret・license・テスト・人手レビューを通す。CodeQL/Scorecardは検査部品であり、生成コードの安全性・適法性を保証しない。」
現在の判断
GitHub公式文書はcode scanningが脆弱性/エラーを検出し、CodeQLまたはthird-party tool/SARIFを使えること、private repositoryではlicense条件があることを明記する。Scorecardは依存固定、SAST、license、token permission等を個別checkする。したがって生成コードの受入は、生成→format/type/test→SAST/CodeQL→dependency/secret/license→human review→sandbox実行の多段 gate として設計できる。
どこまで当てはまるか
Enterprise AI Core / coding / security / OSS practice / CI
詳しく理解する
なぜ重要か
生成コードは脆弱性、存在しないpackage、secret、license、誤った修正を同時に含み得る。生成したこと自体を検査済みと扱わない受入手順が必要。
対象範囲と前提
Enterprise AI Core / coding / security / OSS practice / CI
検討ポイント
生成コードをコード解析、dependency/secret/license、reviewへ通す根拠と、各検査の限界は何か。
EVIDENCE TABLE
- source class: official developer security documentation; exact title: Code scanning; author/org: GitHub; canonical URL: https://docs.github.com/en/code-security/concepts/code-scanning/code-scanning publication/update/access: current docs accessed 2026-09-13; version/release: current GitHub Code Security/CodeQL surface; supporting locator: lines 12-14, 28-34, 40-49(vulnerability/error detection、scheduled/event scans、CodeQL、SARIF、license boundary); evidence label: VERIFIED_SPEC + PRODUCT_VOLATILE; relation: support / availability gate。
- source class: government secure-development framework; exact title: Secure Software Development Framework (SSDF) Version 1.1; author/org: NIST; canonical URL: https://csrc.nist.gov/pubs/sp/800/218/final publication/update/access: 2022-02 / accessed 2026-09-13; version/release: v1.1; supporting locator: lines 64-74; evidence label: VERIFIED_SPEC; relation: context / support。
- source class: author-maintained OSS implementation; exact title: OpenSSF Scorecard; author/org: OpenSSF; canonical URL: https://github.com/ossf/scorecard publication/update/access: accessed 2026-09-13; version/release: current repository; supporting locator: lines 604-621(branch protection, code review, dependency pinning, SAST, license, vulnerabilities, token permissions); evidence label: OSS_PRACTICE + PRODUCT_VOLATILE; relation: support / limit。
利用できる条件
language/framework・dependency lock・package existence・CVE/OSV・secret scan・license/provenance・CodeQL/SAST・tests・sandbox/network・human approval。
実装・運用
実装状態: CI gateの構成要素と受入順序を確立。実CIへの組込み、false positive率、生成コードの自動修正は未実施。
確認・評価方法
Evaluation: 無害なfixtureへ存在しないpackage、既知の脆弱pattern、dummy secret、license header欠落を入れ、各検査がどこまで検出するか確認。秘密は本物を使わない。
セキュリティとプライバシー
SECURITY: untrusted codeは隔離実行。PRIVACY: prompt/source codeをログへ平文保存しない。AUDIT: generator/model/prompt/commit/scan resultを紐付け。COST: CI minutes・review工数は未計測。
AUDITED CURRENTNESS BOUNDARY
Current CodeQL/code scanning scope remains language/license/configuration dependent and is one gate among multiple security/correctness/license controls.
確認できていること
GitHub公式文書はcode scanningが脆弱性/エラーを検出し、CodeQLまたはthird-party tool/SARIFを使えること、private repositoryではlicense条件があることを明記する。Scorecardは依存固定、SAST、license、token permission等を個別checkする。したがって生成コードの受入は、生成→format/type/test→SAST/CodeQL→dependency/secret/license→human review→sandbox実行の多段 gate として設計できる。
よくある失敗・反証
静的解析で仕様誤り、事業ロジック、未知の脆弱性、prompt由来の悪意を全て検出できない。Scorecardはrepositoryのhealth指標で、生成物の正しさやlicense適法性の最終判定ではない。GitHub機能のavailabilityはrepository type/licenseで変わる。
scan passだけでmerge/production deployしない。 UNIT_CLOSE_STATUS: INDIVIDUAL_BOUNDED_CLOSE / EVIDENCE_RECORDED / UNKNOWN_PRESERVED
---
実務での使い方
language/framework・dependency lock・package existence・CVE/OSV・secret scan・license/provenance・CodeQL/SAST・tests・sandbox/network・human approval。
実装状態: CI gateの構成要素と受入順序を確立。実CIへの組込み、false positive率、生成コードの自動修正は未実施。
Evaluation: 無害なfixtureへ存在しないpackage、既知の脆弱pattern、dummy secret、license header欠落を入れ、各検査がどこまで検出するか確認。秘密は本物を使わない。
SECURITY: untrusted codeは隔離実行。PRIVACY: prompt/source codeをログへ平文保存しない。AUDIT: generator/model/prompt/commit/scan resultを紐付け。COST: CI minutes・review工数は未計測。
本文に生成コード専用の受入表を追加し、検査結果をcommit/artifact単位で保存する設計へつなぐ。
Current CodeQL/code scanning scope remains language/license/configuration dependent and is one gate among multiple security/correctness/license controls.
まだ確認できていないこと
- EA-105-UNKNOWN-01
AI生成コードに特化した検出率、hidden dependency、provider別license terms、CodeQLの言語/拡張coverage、生成修正のレビュー負荷。
- EA-105-UNKNOWN-CURRENTNESS
外部根拠の再確認日がcanonical body/control-planeで確定していないため、currentnessはUNKNOWNとして保持する。日付を推測補完しない。
根拠資料
- 研究資料研究資料
1) source class: official developer security documentation; exact title: Code scanning; author/org: GitHub; canonical URL:
確認上の限界
元の監査済み資料に記載された参照先です。URLの復元は、資料の最新性や全主張の支持を新たに検証したことを意味しません。
- 研究資料研究資料
2) source class: government secure-development framework; exact title: Secure Software Development Framework (SSDF) Version 1.1; author/org: NIST; canonical URL:
確認上の限界
元の監査済み資料に記載された参照先です。URLの復元は、資料の最新性や全主張の支持を新たに検証したことを意味しません。
- 研究資料研究資料
3) source class: author-maintained OSS implementation; exact title: OpenSSF Scorecard; author/org: OpenSSF; canonical URL:
確認上の限界
元の監査済み資料に記載された参照先です。URLの復元は、資料の最新性や全主張の支持を新たに検証したことを意味しません。
出典ID・検証情報・機械可読データ
根拠の種類と情報の鮮度は、ラベルとアイコンで確認できます。
- 記事ID
- EA-105
- 最終確認日
- —
- 提供元・モデル・プラン・利用環境
- —
- 対象地域
- —
元資料の全文と収録照合記録
WHY_THIS_MATTERS_TO_UPDATE
生成コードは脆弱性、存在しないpackage、secret、license、誤った修正を同時に含み得る。生成したこと自体を検査済みと扱わない受入手順が必要。
SCOPE_ROUTING
Enterprise AI Core / coding / security / OSS practice / CI
CLAIM_OR_RESEARCH_QUESTION
生成コードをコード解析、dependency/secret/license、reviewへ通す根拠と、各検査の限界は何か。
EVIDENCE TABLE
- source class: official developer security documentation; exact title: Code scanning; author/org: GitHub; canonical URL: https://docs.github.com/en/code-security/concepts/code-scanning/code-scanning publication/update/access: current docs accessed 2026-09-13; version/release: current GitHub Code Security/CodeQL surface; supporting locator: lines 12-14, 28-34, 40-49(vulnerability/error detection、scheduled/event scans、CodeQL、SARIF、license boundary); evidence label: VERIFIED_SPEC + PRODUCT_VOLATILE; relation: support / availability gate。
- source class: government secure-development framework; exact title: Secure Software Development Framework (SSDF) Version 1.1; author/org: NIST; canonical URL: https://csrc.nist.gov/pubs/sp/800/218/final publication/update/access: 2022-02 / accessed 2026-09-13; version/release: v1.1; supporting locator: lines 64-74; evidence label: VERIFIED_SPEC; relation: context / support。
- source class: author-maintained OSS implementation; exact title: OpenSSF Scorecard; author/org: OpenSSF; canonical URL: https://github.com/ossf/scorecard publication/update/access: accessed 2026-09-13; version/release: current repository; supporting locator: lines 604-621(branch protection, code review, dependency pinning, SAST, license, vulnerabilities, token permissions); evidence label: OSS_PRACTICE + PRODUCT_VOLATILE; relation: support / limit。
FINDINGS
GitHub公式文書はcode scanningが脆弱性/エラーを検出し、CodeQLまたはthird-party tool/SARIFを使えること、private repositoryではlicense条件があることを明記する。Scorecardは依存固定、SAST、license、token permission等を個別checkする。したがって生成コードの受入は、生成→format/type/test→SAST/CodeQL→dependency/secret/license→human review→sandbox実行の多段 gate として設計できる。
LIMITS / COUNTEREVIDENCE / FAILURE ENVELOPE
静的解析で仕様誤り、事業ロジック、未知の脆弱性、prompt由来の悪意を全て検出できない。Scorecardはrepositoryのhealth指標で、生成物の正しさやlicense適法性の最終判定ではない。GitHub機能のavailabilityはrepository type/licenseで変わる。
AVAILABILITY_GATES
language/framework・dependency lock・package existence・CVE/OSV・secret scan・license/provenance・CodeQL/SAST・tests・sandbox/network・human approval。
IMPLEMENTATION_STATE
実装状態: CI gateの構成要素と受入順序を確立。実CIへの組込み、false positive率、生成コードの自動修正は未実施。
BENCHMARK_OR_EVAL
Evaluation: 無害なfixtureへ存在しないpackage、既知の脆弱pattern、dummy secret、license header欠落を入れ、各検査がどこまで検出するか確認。秘密は本物を使わない。
SECURITY / PRIVACY / AUDIT / COST / OPERABILITY
SECURITY: untrusted codeは隔離実行。PRIVACY: prompt/source codeをログへ平文保存しない。AUDIT: generator/model/prompt/commit/scan resultを紐付け。COST: CI minutes・review工数は未計測。
SAFE_WORDING_FOR_FUTURE_BOOK
「生成コードは、通常のコードと同じく解析・依存関係・secret・license・テスト・人手レビューを通す。CodeQL/Scorecardは検査部品であり、生成コードの安全性・適法性を保証しない。」
UPDATE_WORK_HANDOFF
本文に生成コード専用の受入表を追加し、検査結果をcommit/artifact単位で保存する設計へつなぐ。
OPEN_UNKNOWN
AI生成コードに特化した検出率、hidden dependency、provider別license terms、CodeQLの言語/拡張coverage、生成修正のレビュー負荷。
STOP_CONDITION
scan passだけでmerge/production deployしない。 UNIT_CLOSE_STATUS: INDIVIDUAL_BOUNDED_CLOSE / EVIDENCE_RECORDED / UNKNOWN_PRESERVED
---
AUDITED_CURRENTNESS_BOUNDARY
Current CodeQL/code scanning scope remains language/license/configuration dependent and is one gate among multiple security/correctness/license controls.
EVD-EA-105-URL-408ACEE9ECE3研究資料研究資料根拠の出所: SOURCE_PACKET_REFERENCE- 裏付ける内容
- —
- 確認日
- —
- 出典・実験ID
- SRC-EA-105-URL-408ACEE9ECE3
- 検証箇所
- EVIDENCE TABLE · 1) source class: official developer security documentation; exact title: Code scanning; author/org: GitHub; canonical URL: https://docs.github.com/en/code-security/concepts/code-scanning/code-scanning
- 適用範囲
- EVIDENCE TABLE
- 出典・来歴
- SOURCE_PACKET_REFERENCE_PROJECTED
- 限界
- 元の監査済み資料に記載された参照先です。URLの復元は、資料の最新性や全主張の支持を新たに検証したことを意味しません。
EVD-EA-105-URL-3382974F730F研究資料研究資料根拠の出所: SOURCE_PACKET_REFERENCE- 裏付ける内容
- —
- 確認日
- —
- 出典・実験ID
- SRC-EA-105-URL-3382974F730F
- 検証箇所
- EVIDENCE TABLE · 2) source class: government secure-development framework; exact title: Secure Software Development Framework (SSDF) Version 1.1; author/org: NIST; canonical URL: https://csrc.nist.gov/pubs/sp/800/218/final
- 適用範囲
- EVIDENCE TABLE
- 出典・来歴
- SOURCE_PACKET_REFERENCE_PROJECTED
- 限界
- 元の監査済み資料に記載された参照先です。URLの復元は、資料の最新性や全主張の支持を新たに検証したことを意味しません。
EVD-EA-105-URL-9719D15362F8研究資料研究資料根拠の出所: SOURCE_PACKET_REFERENCE- 裏付ける内容
- —
- 確認日
- —
- 出典・実験ID
- SRC-EA-105-URL-9719D15362F8
- 検証箇所
- EVIDENCE TABLE · 3) source class: author-maintained OSS implementation; exact title: OpenSSF Scorecard; author/org: OpenSSF; canonical URL: https://github.com/ossf/scorecard
- 適用範囲
- EVIDENCE TABLE
- 出典・来歴
- SOURCE_PACKET_REFERENCE_PROJECTED
- 限界
- 元の監査済み資料に記載された参照先です。URLの復元は、資料の最新性や全主張の支持を新たに検証したことを意味しません。
EA-105-R11-RESEARCH研究資料研究資料根拠の出所: AUDITED_CANONICAL_RESEARCH_PACKETEA-105 監査済みresearch / canonical revision binding
- 裏付ける内容
- GitHub公式文書はcode scanningが脆弱性/エラーを検出し、CodeQLまたはthird-party tool/SARIFを使えること、private repositoryではlicense条件があることを明記する。Scorecardは依存固定、SAST、license、token permission等を個別checkする。したがって生成コードの受入は、生成→format/type/test→SAST/CodeQL→dependency/secret/license→human review→sandbox実行の多段 gate として設計できる。
- 確認日
- —
- 出典・実験ID
- COMM-039-EA0105
- 検証箇所
- COMM-039-EA0105 · EA-105-R5-LEGACY-MIGRATION-20261008-R1 · content/staging/EA-105.md
- 適用範囲
- 監査済みEA本文・canonical revision・既存Source Graph relationの範囲。欠損currentnessは推測で閉じない。
- 出典・来歴
- AUDIT_PASS_CANONICAL_BINDING
- 限界
- canonical監査・revision bindingの存在を示す。外部ソースcurrentnessが本文またはcontrol-planeで確定していない場合は、currentnessをUNKNOWNのまま保持する。
EA-105-R11-WEB-READBACK実装資料実装資料根拠の出所: IMPLEMENTATION_READBACKEA-105 Web body identity / canonical readback
- 裏付ける内容
- canonical staging bodyのSHA-256一致とR9 canonical ledger readbackをProduction projectionの入力として検証する。
- 確認日
- —
- 出典・実験ID
- WEBBODY-EA0105-R8-5B9A75F3
- 検証箇所
- WEBBODY-EA0105-R8-5B9A75F3 · content/staging/EA-105.md · EA-105-R5-LEGACY-MIGRATION-20261008-R1
- 適用範囲
- R9/R10 canonical readback後のProduction生成時body identity。
- 出典・来歴
- CANONICAL_READBACK_BODY_HASH_MATCH
- 限界
- body identity/readbackは本文claim自体の真偽や外部ソースの最新性を追加保証しない。
- 出典ID
- COMM-039-EA0105, SRC-EA-105-URL-408ACEE9ECE3, SRC-EA-105-URL-3382974F730F, SRC-EA-105-URL-9719D15362F8, WEBBODY-EA0105-R8-5B9A75F3
- 追跡中のUNKNOWN ID
- EA-105-UNKNOWN-01, EA-105-UNKNOWN-CURRENTNESS
- 再確認のきっかけ
- canonical revision/publication state change · body artifact hash change · source currentness change · new contradiction or implementation readback
機械検査: 通過 — Automated validation does not guarantee accuracy or authorize execution.
同じ記事IDの機械可読データです。