コンテンツへスキップ

Security capability experiment

Achilles AI

AI生成コードのための静的解析

A Rust static-analysis tool focused on AI-generated and AI-application code patterns. It combines tree-sitter parsing, source-controlled rules, SARIF output, command-line and editor surfaces, and optional model-assisted triage.

ビジネス ↔ テクノロジーの橋渡し · Security capability experiment

Convert fast AI-assisted coding into reviewable release evidence.

Explores deterministic security analysis for AI-generated and AI-application code.

これはポートフォリオとソースの解釈であり、顧客、導入、認証、成果を示すものではありません。

  1. 01

    ビジネス上の圧力

    AI-assisted development can increase code volume and repeat insecure patterns faster than conventional review capacity grows.

  2. 02

    プロダクト判断

    Keep deterministic parsing and source-controlled rules primary, with model-assisted triage optional and explicitly separate.

  3. 03

    技術記録

    Rust crates, tree-sitter parsers, YAML rules, SARIF output, CLI, LSP, CI integration, and selected fixtures.

  4. 04

    エビデンスの還流

    Findings and unresolved uncertainty return to remediation priority, release criteria, security review, and engineering policy.

ソース証跡

ソースから実際に確認できること

A Rust static-analysis tool focused on AI-generated and AI-application code patterns. It combines tree-sitter parsing, source-controlled rules, SARIF output, command-line and editor surfaces, and optional model-assisted triage.

詳細な技術スナップショットは英語で管理されています。

成熟度
Source prototype, access under NDA
証跡レビュー
ソース基準日

製品・アーキテクチャ判断

  • Keep deterministic parsing and rules as the primary scan path; make model-assisted analysis optional.
  • Represent findings in interoperable output such as SARIF for CI and code-review workflows.
  • Position the tool as a complement to general-purpose security scanners, not a replacement for them.

検証可能な証跡

  • Five Rust crates covering parsers, core analysis, optional AI support, LSP, and CLI surfaces.
  • 210 source-controlled YAML rule files in the reviewed snapshot.
  • Tagged internal releases, integration fixtures, a GitHub Action, and an editor extension.

主張の境界

  • Static rules can produce false positives and false negatives; a clean scan is not a security guarantee.
  • Optional model-assisted triage requires separate configuration and review.
  • No certification, comprehensive vulnerability coverage, or customer security outcome is asserted.

リポジトリの証跡は、顧客、導入、認証、成果の証明ではありません。

アーキテクチャ

CIフックからセキュリティ上の検出結果まで

3つのレイヤー:CLI と CI への統合、AI 生成コードと AI アプリケーションの特定のパターンを対象とする210ルールのASTスキャナー、そして検出結果の優先順位付けに役立つ場合がある任意のモデル支援トリアージ。いずれもセキュリティレビューの代わりにはなりません。

ソースマップのみです。各層は実装コード、アダプター境界、文書化された設計のいずれかを表し得ますが、設定済み本番サービスを証明しません。

  1. 01

    レイヤー1 — 開発者サーフェス

    Rust 製のコマンドライン、LSP、CI、SARIF の各インターフェースが、ローカルでのスキャンとレビューワークフロー内のスキャンに対応します。汎用のランタイムや大規模環境での性能については何も主張しません。

  2. 02

    レイヤー2 — 210ルールエンジン

    Python、TypeScript、JavaScript、Go用のASTスキャナー。5つのルールカテゴリー:vibe-codeパターン、エージェントセキュリティ(ツール定義、機能の乱立)、LLMアプリケーションリスク(プロンプトインジェクション、未サニタイズ出力)、フレームワーク脆弱性、クラウドの設定ミス。汎用スキャナーとこれらのルールは、対象とする範囲が異なります。

  3. 03

    レイヤー3 — 任意のモデル支援トリアージ

    ローカルまたはホステッドの Mistral モデルによる任意のトリアージは、誤検知の可能性が高い項目の絞り込みや、コンテキストに基づく検出結果の並べ替えに役立つ場合があります。有効にした場合のみ動作し、セキュリティレビューの代わりにはなりません。

課題

課題

AI生成コードがセキュリティリスクとなる理由

  1. レビューより速いコードの出荷

    AIアシスタントは人間がレビューできる速度を超えてコードを生成します。AIの提案を最小限の精査で受け入れるバイブコーディングが新たな標準となっています。

  2. 大規模な安全でないパターン

    AIは動作するコードに最適化し、安全なコードには最適化しません。同じハードコードされたシークレット、同じSQL文字列結合、同じ許容的なCORS設定 — 数千のプロジェクトで繰り返されています。

  3. AI 固有のパターンには明示的なルールが必要

    汎用スキャナーと AI に特化したルールは、対象とする範囲が異なります。プロンプトテンプレート、エージェントのツール、モデル出力の処理には、既存の SAST に加えて専用のチェックが役立ちます。

  4. エージェントセキュリティは未開拓領域

    エージェントには、ファイル、データベース、ネットワーク、シェルを操作する権限を与えることができます。その権限の境界とツールへの入力には、通常のアプリケーションコードのチェックを超えたレビューが必要です。

ルール

ルールカテゴリ

AI固有の5つの脆弱性ドメインを対象とする210のルール

ソース範囲のみです。項目はコード、文書化されたアダプター、設定済みワークフローを表し得ますが、本番サービスの稼働を意味しません。

  1. 01

    バイブコード (VC001-VC040)

    AIコーディングアシスタントが頻繁に生成するパターンに対する40のルール:プロンプト内のハードコードされたシークレット、文字列結合によるSQLインジェクション、危険なコード実行、安全でないデフォルト設定、認証の欠如、パストラバーサル、安全でないデシリアライゼーション、弱い暗号化。

  2. 02

    エージェントセキュリティ (AS001-AS030)

    自律型エージェントコードに対する30のルール:過度に許容的なツール定義、無制限のファイルシステムアクセス、ユーザー入力からのシェルコマンド実行、監査ログの欠如、破壊的操作前の確認なし、安全でないエージェント間通信、権限昇格ベクター。

  3. 03

    LLMアプリ (LA001-LA040)

    本番LLMアプリケーションに対する40のルール:システムプロンプトへの生のユーザー入力、未サニタイズのHTMLレンダリング、LLM生成SQLの実行、APIキーの露出、プロンプトインジェクション検出の欠如、安全でないOAuthフロー、非推奨SDKの使用、未検証のツール出力、学習データ流出リスク。

  4. 04

    フレームワークセキュリティ (FS001-FS050)

    10フレームワークにわたる50のルール:Express.js、Django、Flask、FastAPI、Spring Boot、Laravel、Rails、Next.js、NestJS、Gin — デバッグモードの露出、認証ガードの欠如、CORSワイルドカード、マスアサインメント、未検証のDTOs、actuatorエンドポイントの漏洩をカバー。

  5. 05

    クラウドセキュリティ (CS001-CS050)

    7プラットフォームにわたる50のルール:AWS (15)、Terraform (10)、Kubernetes (6)、GitHub Actions (5)、GCP (5)、Azure (5)、Docker (4) — IAM過剰権限、パブリックバケット、暗号化の無効化、特権コンテナ、固定されていないActions、設定ミスのあるセキュリティグループをカバー。

  6. 06

    カスタムYAMLルール

    YAMLでカスタムルールを記述 — Rustの知識は不要です。ASTノードタイプ、正規表現パターン、祖先コンテキスト制約、修正提案を定義できます。単一コマンドで新しいルールのひな形を作成。

  7. 07

    SARIFおよびGitHub連携

    GitHubセキュリティタブとの連携のためのネイティブSARIF v2.1.0出力。検出結果は重要度、修正提案、参照情報とともにPRのインライン注釈として表示されます。JSON形式およびテキスト形式の出力にも対応。

  8. 08

    モデル支援トリアージ(任意)

    Mistral AI またはローカルの Ollama モデルによる任意のトリアージは、誤検知の可能性が高い項目の絞り込み、コンテキストに基づく検出結果の並べ替え、修正案の提示に役立つ場合があります。--ai フラグで有効になり、セキュリティレビューの代わりにはなりません。

  9. 09

    Language Server Protocol

    LSP インターフェースは、対応エディターに診断と一部のコードアクションを提供します。エディター上の動作とルールの適用範囲は、実際に使うワークフローで検証してください。

  10. 10

    GitHub ActionおよびCI/CD

    リポジトリには GitHub Action と、CI 向けのコマンドラインによる統合手段が含まれています。その他のパイプラインへの統合には、運用者による設定と検証が必要です。

5つのカテゴリにわたる210のルール

明示的なルールが必要な AI アプリケーションのパターン

決定論的なルールが AI アプリケーションの特定のパターンを検出します。任意のモデル支援トリアージは検出結果の優先順位付けに役立つ場合がありますが、いずれもセキュリティレビューの代わりにはなりません。

リポジトリ上の範囲のみです。可用性、完全性、性能、運用適合性には別途検証が必要です。

Vibe-Codeパターン

01

プロンプトテンプレート内のハードコードされたAPIキー、'デモ用'コードパスでの文字列連結によるSQL、安全でないデシリアライゼーション、LLM出力のeval、INFOレベルでログに記録されるシークレット。'一度動作すれば'が'安全に動作する'に勝るときに出荷されるパターンの集まり。

エージェントセキュリティ

02

パラメータ検証のないツール定義、管理者権限と重複するエージェント機能、LLM呼び出し可能なツールに対するレートリミットの欠如、システムIDを漏洩するプロンプトプレフィックス。ジェイルブレイクがインシデントに変わる原因となるパターンの集まり。

LLMアプリケーションリスク

03

HTMLとしてレンダリングされるサニタイズされていないLLM出力、ユーザーが制御するコンテキスト内のプロンプトインジェクションベクター、取得したドキュメントを介した間接インジェクション、モデル出力がシェルやevalにパイプされる、出力スキーマ検証の欠如。OWASP-LLM-Top-10を具体化したもの。

フレームワークの脆弱性

04

認証なしのNext.js Server Actionの露出、FastAPI依存性注入のバイパス、LangChainの思考連鎖漏洩、Django ORMのraw()を介したSQLインジェクション、安全でないテンプレートレンダリング。フレームワークごとのルールであり、一般的なテイントトラッキングではない。

クラウドセキュリティ

05

機密プレフィックスを持つ公開S3、`*`アクションを持つIAMロール、AWS Bedrockのクロスアカウント権限、サービスアカウントのないコンテキストで露出したGCP Vertex AI。漏洩したエンドポイントURLが完全なデータ流出に変わる原因となるパターンの集まり。

技術スタック

技術スタック

記載技術はリポジトリの依存関係またはアダプター面を示すもので、稼働中の統合や導入を証明しません。

コアエンジン
Rustワークスペース:achilles-parsers、achilles-core、achilles-ai、achilles-lsp、achilles-cli — tree-sitter、serde、regex、YAMLルールエンジン、テイントフロー解析
言語パーサー
tree-sitter-javascript、tree-sitter-typescript、tree-sitter-python、tree-sitter-go、tree-sitter-java、tree-sitter-rust、tree-sitter-ruby、tree-sitter-php、tree-sitter-c-sharp、tree-sitter-swift
AI統合
Mistral AI SDK、Ollamaクライアント、モデル選択設定、偽陽性フィルタリング、重要度再ランク付け
CLI・LSPおよび出力
clap、colored、serde_json、SARIF v2.1.0出力、Language Server Protocol
CI/CD
GitHub Actions(CI + クロスコンパイルリリース)、GitLab CI、Bitbucket Pipelines、pre-commitフック
プラットフォーム
Linux (amd64/arm64)、macOS (amd64/arm64)、Windows (amd64)

ソースコード

コードを閲覧

Achilles AIのソースコードは、評価およびパートナーシップ目的でリクエストに応じて利用可能です。

NDAが必要です

ソースコードにアクセスするには、秘密保持契約への署名が必要です。

関連コンサルティングサービス

AI生成コードの本番環境でのセキュリティ対策にお困りですか?当社のコンサルティングサービスがAchilles AIを補完します。

EU AI Act コンプライアンスコンサルティング — リスク分類と実装
4

EU AI Act コンプライアンスコンサルティング — リスク分類と実装

12〜24週間。AIシステムをリスク分類し、プロバイダー主導の適合性評価を支援してその証拠をエンジニアリングし、付属書IV技術文書を作成し、市販後モニタリングを立ち上げます——自律・産業・ロボティクス展開に適用される高リスクカテゴリに特別な深さで

Learn more

パートナーシップ

Achilles AIにご興味がありますか?

チーム向けのAIコードセキュリティ監査が必要な方も、アプリケーションセキュリティ分野でのパートナーシップをご検討の方も、お気軽にご相談ください。

お問い合わせ
AIインサイト

The AI Dispatch

デモから信頼できる運用へ。購読すると、Physical AIの新しい読み物が届きます。

いつでも購読解除できます。スパムは一切ありません。