2025年12月28日

AIにWebアプリを攻撃させてみた 【Strix】

AIエージェントによる次世代セキュリティ診断に興味はありますか?

Furious Greenでは、AIを活用したセキュリティツールの導入支援や、開発チーム向けのセキュリティ研修を提供しています。「脆弱性スキャナの誤検知対応に疲れた」「セキュリティ診断のコストを抑えたい」といった課題をお持ちの方は、ぜひお気軽にご相談ください。

無料相談

はじめに

「脆弱性スキャナを回したら大量の警告が出たが、調べたらほとんどが誤検知だった。」
これは開発者なら誰もが経験する経験です。

従来のセキュリティツールはルールベースでチェックを行うため、文脈を無視した警告を乱発します。一方で、文脈を理解して診断できる人間のホワイトハッカーを雇うには多大なコストと時間がかかります。

今回紹介する 「Strix」 は、その間を埋める新しいアプローチです。 これは単なるチェックツールではなく、AIエージェントが人間のハッカーのように思考し、脆弱性診断を行います。

Strixとは

Strix は、人間のハッカーと同じように振る舞う「自律型のAIセキュリティエージェント」です。

GitHub - usestrix/strix: Open-source AI agents for penetration testing
Open-source AI agents for penetration testing. Contribute to usestrix/strix development by creating an account on GitHub.

従来のスキャナがチェックリストを上から順に実行するだけなのに対し、Strixのエージェントは以下のように動きます。

  1. 自律的な思考: アプリケーションの構造やビジネスロジックを理解し、仮説・検証を繰り返しながら脆弱性の探索を行います。
  2. チーム連携: 複数のエージェントが連携し、偵察担当が得た情報を元に攻撃担当が深掘りするなど、チームのように役割分担して動きます。
  3. PoCによる検証: 実際に攻撃コードを実行し、成功した場合のみPoC(実証コード)と共に報告します。

診断対象

Strixは、単にURLをスキャンするだけでなく、ソースコードを読み込ませることで診断精度を飛躍的に高めることができます。用途に合わせて3つのモードで実行可能です。

  1. Webサイト(ブラックボックス): 対象のURLを指定。外部の攻撃者と同じ視点で攻撃を試みます。
  2. ソースコード(静的解析): ローカルのディレクトリやGitHubのリポジトリを指定。コードの記述から脆弱性を探索します。
  3. Webサイト + ソースコード(ホワイトボックス): 稼働中のアプリとコードの両方を参照させます。AIがコードを読んで裏側の仕組み(隠しAPIや認証ロジック)を理解した上で、実際に攻撃リクエストを投げるため、実運用に即した深い診断が可能です。
# 1. Webサイト
strix --target https://your-app.com

# 2. ソースコード(ローカル, GitHub)
strix --target ./my-app-directory
strix --target https://github.com/org/repo

# 3. Webサイト + ソースコード
strix -t https://your-app.com -t https://github.com/org/repo

従来型スキャンツールとの違い

OWASP ZAPなどの従来型ツールは、安価に導入できる反面、ルールベースでの検出にとどまるため誤検知が多く、その後の精査に多大な工数を割かれるのが課題でした。

対してStrixは、LLMのAPI利用料こそ発生しますが、AIが自律的に文脈を理解して診断するため、より複雑な脆弱性まで検出可能です。また、実際に攻撃が成功した実証コード(PoC)付きで報告されるため誤検知が極めて少なく、トータルでの運用コストを大幅に低減できる点が強みです。

実装

ここでは、Strixの インストール方法実際のWebアプリケーションを対象とした実装例 について紹介します。

前提条件

Strixを実行するには、以下の環境が必要です。

  • Docker (running)
  • Python 3.12 以上
  • LLMのAPIキー: OpenAI または Anthropic のアカウントが必要です。

Strixのインストール

Python 3.12 以上の環境で、以下のコマンドを実行します。インストールを行うPython環境の指定(python3.12)は、お手元の環境に合わせて適宜変更してください。

# Strixエージェントのインストール
pipx install strix-agent --python python3.12

なお、Pythonの仮想環境を自動で作成してインストールを行える pipx を使用します。pipxのインストール方法については以下を参照してください。

Installation - pipx
execute binaries from Python packages in isolated environments

事前設定

Strixの動作にはLLMのAPIキーの設定が必須です。インストール後、以下の環境変数を設定します。
最良の結果を得るためには、 OpenAIのGPT-5(openai/gpt-5)とAnthropicのClaude Sonnet 4.5(anthropic/claude-sonnet-4-5)の使用が推奨されています。

# 以下ではClaude Sonnet 4.5を使用
export STRIX_LLM="anthoropic/claude-sonnet-4-5"
export LLM_API_KEY="your-api-key"

実装例

ここでは実際のWebアプリケーションを対象として、Strixを用いて脆弱性の検出を試みます。今回は検証対象として、脆弱性が意図的に実装された学習用Webアプリ「OWASP Juice Shop」を使用します。

⚠️
Strixは実際の攻撃コードを実行するツールです。 自分が管理権限を持つ環境(ローカル環境や、許可されたサーバー)以外には絶対に実行しないでください。 許可を得ていない第三者のWebサイトやサーバーに対して実行することは、不正アクセス禁止法などの法律に抵触​します。
GitHub - juice-shop/juice-shop: OWASP Juice Shop: Probably the most modern and sophisticated insecure web application
OWASP Juice Shop: Probably the most modern and sophisticated insecure web application - juice-shop/juice-shop

ターゲット環境の構築

Node.js環境を利用し、OWASP Juice Shopをソースコードからローカルで起動する手順についてです。

  1. GitHubからソースコードのクローン
git clone https://github.com/juice-shop/juice-shop.git --depth 1
cd juice-shop
  1. 依存パッケージをインストールし、アプリケーションを起動
npm install
npm start
  1. 起動完了後、ブラウザで http://localhost:3000 にアクセスし、アプリケーションが正常に動作していることを確認します。

ペネトレーションテストの実行

ターゲットの準備が完了したら、Strixを実行します。引数にターゲットのURLを指定することで、エージェントによる診断が開始されます。

StrixはDockerコンテナ内で動作するため、ホストマシンで動いているJuice Shopにアクセスするには、localhost ではなく host.docker.internal を使用する必要があります。

# Docker内からホストのポート3000へアクセスする設定
strix --target http://host.docker.internal:3000
💡
初回実行時は、サンドボックス用のDockerイメージを自動的にダウンロード(Pull)するため、開始までに数分かかります。

実行結果

コマンドを実行すると、ターミナルにはAIエージェントによる思考と行動のプロセスがリアルタイムで出力されます。

実行プロセス

生成レポート

診断が完了すると、strix_runs/ ディレクトリにレポートが出力されます。Strixのレポートには、大きく分けて「全体サマリ」「脆弱性ごとの詳細レポート」の2種類があります。

今回のOWASP Juice Shopに対する診断では、合計6件の脆弱性が発見され、以下のようなレポートファイルが生成されました。

Strixのレポートは、大きく分けて「全体サマリ」「脆弱性ごとの詳細レポート」の2種類で構成されています。

  1. 全体サマリ (penetration_test_report.md, vulnerabilities.csv)
    診断全体の概要が記載されたレポートです。 今回のテストで検出された6件のうち、4件が最高危険度の「CRITICAL」と判定されています。
    以下は、Strixが検出し、実証(PoC)に成功した脆弱性の一覧です。
発見された脆弱性一覧

penetration_test_report.md

Security Penetration Test Report

Generated: 2025-12-03 09:18:28 UTC

OWASP JUICE SHOP SECURITY ASSESSMENT - COMPREHENSIVE FINAL REPORT
══════════════════════════════════
Target: http://host.docker.internal:3000
Assessment Date: December 3, 2025
Assessment Type: Black-box Web Application Penetration Test
Assessment Duration: Approximately 30 minutes
Agent: StrixAgent (Advanced AI Cybersecurity Agent)

══════════════════════════════════
EXECUTIVE SUMMARY
══════════════════════════════════

This comprehensive security assessment of OWASP Juice Shop identified MULTIPLE CRITICAL vulnerabilities that pose immediate and severe risk to the application and its users.

CRITICAL FINDINGS:
• 3 Critical Severity Vulnerabilities (CVSS 9.8-10.0)
• 1 High Severity Vulnerability (CVSS 8.6)
• 1 Medium-High Severity Vulnerability (CVSS 6.5)
• 2 Medium/Low Business Logic Issues

OVERALL RISK LEVEL: CRITICAL - IMMEDIATE ACTION REQUIRED

The application should NOT be operated in production until critical vulnerabilities are remediated within 24-48 hours.

══════════════════════════════════
CONFIRMED VULNERABILITIES
══════════════════════════════════

VULNERABILITY #1: SQL INJECTION - LOGIN (CVSS 9.8 - CRITICAL)
Report ID: vuln-0001
Endpoint: POST /rest/user/login
Parameter: email
Payload: ' OR '1'='1' --
Impact: Complete authentication bypass, admin access, 21 users enumerated
Status: FULLY EXPLOITED

VULNERABILITY #2: SQL INJECTION - SEARCH (CVSS 10.0 - CRITICAL)
Report ID: vuln-0003
Endpoint: GET /rest/products/search
Parameter: q
Impact: Complete database compromise, 21 tables extracted, 18+ user credentials stolen
Status: FULLY EXPLOITED

VULNERABILITY #3: JWT AUTHENTICATION BYPASS (CVSS 9.8 - CRITICAL)
Report ID: vuln-0005
Issues:

  • "none" algorithm acceptance (complete bypass)
  • RS256→HS256 algorithm confusion (privilege escalation)
    Impact: Can forge tokens for any user with any role
    Status: FULLY EXPLOITED (User 2 escalated to admin)

VULNERABILITY #4: IDOR - BASKETS (CVSS 8.6 - HIGH)
Report ID: vuln-0004
Endpoint: GET /rest/basket/{id}
Impact: 100% unauthorized access rate (20/20 baskets)
Status: FULLY EXPLOITED

VULNERABILITY #5: CSRF - FEEDBACK (CVSS 6.5 - MEDIUM-HIGH)
Report ID: vuln-0006
Endpoint: POST /api/Feedbacks/
Impact: Unauthorized feedback submission via cross-origin attack
Status: FULLY EXPLOITED (Feedback ID 29 created)

VULNERABILITY #6: BUSINESS LOGIC ISSUES

  • Floating point arithmetic error (CVSS 5.3 - MEDIUM)
  • Credit card display issues (CVSS 3.1 - LOW)

XSS TESTING: No exploitable vulnerabilities found (adequate protection confirmed)

══════════════════════════════════
IMMEDIATE REMEDIATION PRIORITIES
══════════════════════════════════

EMERGENCY (24 HOURS):

  1. Implement parameterized queries for all SQL operations
  2. Disable JWT "none" algorithm, enforce RS256 only
  3. Add token expiration and security claims
  4. Deploy WAF rules for SQL injection
  5. Invalidate all existing JWT tokens
  6. Force password reset for all users

HIGH PRIORITY (48-72 HOURS):

  1. Implement authorization checks for basket endpoint
  2. Add CSRF token validation
  3. Configure SameSite cookies properly
  4. Fix CORS policy (remove wildcard)
  5. Migrate from MD5 to bcrypt password hashing

COMPLIANCE IMPACT:

  • GDPR: Breach notification required, fines up to €20M
  • PCI DSS: Multiple requirement violations
  • SOC 2: Security control failures
  • Mandatory incident response and user notification

══════════════════════════════════
CONCLUSION
══════════════════════════════════

The OWASP Juice Shop application is in a CRITICAL security state with multiple severe vulnerabilities enabling:

  • Complete authentication bypass
  • Full database compromise
  • Credential theft (21+ users)
  • Privilege escalation to admin
  • Unauthorized data access

All critical vulnerabilities require immediate remediation. The application demonstrates fundamental security control failures in authentication, authorization, and input validation.

Total Vulnerabilities: 6 confirmed
Critical: 3 | High: 1 | Medium-High: 1 | Medium/Low: 2

Detailed vulnerability reports available:
vuln-0001, vuln-0003, vuln-0004, vuln-0005, vuln-0006

Report Generated: December 3, 2025 by StrixAgent

  1. 脆弱性ごとの詳細レポート(e.g. vuln-0001.md)
    個々の脆弱性についても詳細なレポートが生成されます。 このレポートの最大の特徴は、単に脆弱性の疑いありと警告するのではなく、実際に攻撃に成功したPoCと解決策が提示される点です。

例えば、レポート内の ## Proof of Concept セクションには、攻撃者が送信したリクエスト内容がそのまま記載されています。
vuln-0001に示された例では、攻撃者がメールアドレスの入力フィールドに ' OR '1'='1' -- を入力しています。この入力がアプリケーション内で直接SQLクエリに組み込まれると、パスワードの検証条件が無効化され、不正なログインが可能になってしまいます。

### Vulnerable Request
POST /rest/user/login HTTP/1.1
Host: host.docker.internal:3000
Content-Type: application/json
Content-Length: 49

{"email":"' OR '1'='1' --","password":"anything"}

レポートの後半には、脆弱性を修正するための具体的なコード例も記載されています。脆弱なコード(VULNERABLE CODE)と安全なコード(SECURE CODE)が対比されているため、エンジニアはどこをどう直せばいいかをひと目で理解できます。

先ほどの対策としては、ユーザー入力を直接SQLクエリ文字列に組み込むのではなく、プレースホルダ(?など)を使用してパラメータ化します。これにより、入力値は常に「単なる文字列」として扱われ、SQLの構文として解釈されなくなります。その結果、同じ攻撃用の入力が送信されても、不正ログインは不可能になります。

// VULNERABLE CODE (DO NOT USE):
const query = "SELECT * FROM Users WHERE email = '" + userEmail + "' AND password = '" + passwordHash + "'";

// SECURE CODE (USE THIS):
const query = "SELECT * FROM Users WHERE email = ? AND password = ?";
const params = [userEmail, passwordHash];
db.execute(query, params);

vuln-0001.md

SQL Injection in Login Endpoint - Critical Authentication Bypass

ID: vuln-0001
Severity: CRITICAL
Found: 2025-12-03 08:51:01 UTC

DescriptionSQL Injection in Login Endpoint - Critical Authentication BypassVulnerability Summary

A critical SQL injection vulnerability exists in the login endpoint that allows complete authentication bypass. Attackers can gain unauthorized access to ANY user account, including the administrative account, without valid credentials.

Affected Component

Vulnerability Classification

  • Type: SQL Injection (Authentication Bypass)
  • OWASP Category: A03:2021 - Injection
  • CWE: CWE-89 (SQL Injection)
  • CVSS 3.1 Score: 9.8 (Critical)
  • CVSS Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
    • Attack Vector: Network (AV:N)
    • Attack Complexity: Low (AC:L)
    • Privileges Required: None (PR:N)
    • User Interaction: None (UI:N)
    • Scope: Unchanged (S:U)
    • Confidentiality Impact: High (C:H)
    • Integrity Impact: High (I:H)
    • Availability Impact: High (A:H)

Proof of ConceptVulnerable RequestPOST /rest/user/login HTTP/1.1
Host: host.docker.internal:3000
Content-Type: application/json
Content-Length: 49

{"email":"' OR '1'='1' --","password":"anything"}
Successful ResponseHTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8

{
"authentication": {
"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJzdGF0dXMiOiJzdWNjZXNzIiwiZGF0YSI6eyJpZCI6MSwidXNlcm5hbWUiOiIiLCJlbWFpbCI6ImFkbWluQGp1aWNlLXNoLm9wIiwicGFzc3dvcmQiOiIwMTkyMDIzYTdiYmQ3MzI1MDUxNmYwNjlkZjE4YjUwMCIsInJvbGUiOiJhZG1pbiIsImRlbHV4ZVRva2VuIjoiIiwibGFzdExvZ2luSXAiOiIiLCJwcm9maWxlSW1hZ2UiOiJhc3NldHMvcHVibGljL2ltYWdlcy91cGxvYWRzL2RlZmF1bHRBZG1pbi5wbmciLCJ0b3RwU2VjcmV0IjoiIiwiaXNBY3RpdmUiOnRydWUsImNyZWF0ZWRBdCI6IjIwMjUtMTItMDMgMDg6MDM6NTMuNDQ0ICswMDowMCIsInVwZGF0ZWRBdCI6IjIwMjUtMTItMDMgMDg6MDM6NTMuNDQ0ICswMDowMCIsImRlbGV0ZWRBdCI6bnVsbH0sImlhdCI6MTc2NDc1MTQyN30.De-dZ8dgPzcdNRem56tqSdnbDt68rJSpFsfvTByn1Lcbxp4XRsiqZeAxZ1xH7rISgd0D7f0XW9HTk9m736fNbIx6tGRCO4emYgNUhMvj0ZQjDFXpboIDqLvV5IYqRvmtt7VfQ4tN924ZBljXdMGCeXp3b9VcGwEyQd5-9tL67Wc",
"bid": 1,
"umail": "admin@juice-sh.op"
}
}
Decoded JWT Token Payload

The JWT token contains sensitive information including the user's MD5 password hash:

{
"status": "success",
"data": {
"id": 1,
"username": "",
"email": "admin@juice-sh.op",
"role": "admin",
"password": "0192023a7bbd73250516f069df18b500",
"isActive": true
},
"iat": 1764751427
}
Successful Attack Payloads (All 7 Validated)

  1. Classic OR-based: ' OR '1'='1' -- → Admin access (admin@juice-sh.op)
  2. Simplified OR: ' OR 1=1-- → Admin access (admin@juice-sh.op)
  3. UNION-based: ' UNION SELECT * FROM users-- → Admin access (admin@juice-sh.op)
  4. Targeted by email: ' OR email='admin@juice-sh.op'-- → Admin access
  5. Targeted by ID: ' OR id=1-- → Admin access
  6. Any user by ID: ' OR id=2-- → Customer access (jim@juice-sh.op)
  7. Targeted by role: ' OR role='admin'-- → Admin access

Technical AnalysisRoot Cause

The application constructs SQL queries using unsafe string concatenation with user input from the email parameter without proper sanitization or parameterized queries.

Vulnerable Query Structure (Inferred)SELECT * FROM Users WHERE email = '[USER_INPUT]' AND password = '[PASSWORD_HASH]'
Exploited Query ExampleSELECT * FROM Users WHERE email = '' OR '1'='1' --' AND password = '[PASSWORD_HASH]'

The SQL comment delimiter -- neutralizes the password check, and the OR '1'='1' condition always evaluates to true, causing the query to return the first user record (the administrator).

Impact Assessment1. Complete Authentication Bypass

  • Zero credentials required for system access
  • Attacker can login as ANY user without knowing passwords
  • Works for admin, customer, and all user account types
  • 100% reproducible - no special conditions needed

2. Administrative Privilege Escalation

  • Immediate admin access to account: admin@juice-sh.op (User ID: 1)
  • Full administrative control of the application
  • Elevated privileges obtained with single request

3. Sensitive Data Exposure

Successfully accessed privileged admin-only endpoints with obtained admin token:

User Authentication Details (GET /rest/user/authentication-details)

  • Status: 200 OK, Size: 7,856 bytes
  • Contains sensitive authentication configuration

Application Configuration (GET /rest/admin/application-configuration)

  • Status: 200 OK, Size: 21,666 bytes
  • Exposes internal application settings and secrets

Application Version (GET /rest/admin/application-version)

  • Status: 200 OK
  • Reveals version information enabling targeted exploitation

Complete User Database (GET /api/Users)

  • Status: 200 OK
  • Retrieved: 21 total user accounts
  • Contains: emails, MD5 password hashes, roles, profile data
  • Examples: admin@juice-sh.op, jim@juice-sh.op, bender@juice-sh.op, etc.

4. Password Hash Disclosure

  • JWT token exposes MD5 password hash: 0192023a7bbd73250516f069df18b500
  • Hash type: MD5 (cryptographically broken, easily crackable)
  • All 21 user password hashes retrievable via compromised admin endpoint
  • Enables offline password cracking attacks

Business Impact - CRITICALSeverity Justification

1. Zero Authentication Required

  • No credentials needed for full system compromise
  • Exploitable by any unauthenticated remote attacker
  • No user interaction required

2. Complete System Compromise

  • Administrative access achieved instantly
  • Full control over all user accounts and application data
  • Ability to view, modify, create, or delete any data
  • Access to administrative functions and configurations

3. Data Breach Risk

  • Unauthorized access to all 21 user accounts
  • Exposure of personally identifiable information (PII)
  • Password hashes available for offline cracking
  • Potential for secondary account compromises

4. Regulatory & Compliance Violations

  • GDPR: Unauthorized access to personal data (Article 32 - Security of Processing)
  • PCI DSS: Critical security control failure (Requirement 6.5.1 - SQL Injection)
  • SOC 2: Access control deficiency (CC6.1)
  • HIPAA (if applicable): PHI exposure risk

5. Reputational Damage

  • Critical authentication vulnerability exposing all users
  • Loss of customer trust and confidence
  • Potential legal liability and lawsuits
  • Brand damage and negative media coverage

6. Financial Impact

  • Potential regulatory fines (GDPR up to 4% of annual revenue)
  • Incident response and forensics costs
  • Customer compensation and credit monitoring
  • Loss of business and customer churn

Remediation RecommendationsIMMEDIATE ACTIONS (Priority: CRITICAL)

1. Emergency Response

  • Disable the /rest/user/login endpoint immediately until patched
  • Implement emergency maintenance mode if necessary
  • Invalidate all existing JWT tokens
  • Force password resets for all users (after fix deployment)

2. Implement Parameterized Queries (Prepared Statements)

// VULNERABLE CODE (DO NOT USE):
const query = "SELECT * FROM Users WHERE email = '" + userEmail + "' AND password = '" + passwordHash + "'";

// SECURE CODE (USE THIS):
const query = "SELECT * FROM Users WHERE email = ? AND password = ?";
const params = [userEmail, passwordHash];
db.execute(query, params);

3. Input Validation and Sanitization

  • Validate email format using strict regex: /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/
  • Implement server-side input length restrictions
  • Reject inputs containing SQL special characters if not using parameterized queries
  • Use whitelist approach for allowed characters

4. Deploy Web Application Firewall (WAF)

  • Block common SQL injection patterns and attack signatures
  • Implement rate limiting on authentication endpoints (e.g., 5 attempts per minute)
  • Enable logging and alerting for suspicious patterns

LONG-TERM MITIGATIONS

1. Secure Coding Practices

  • Use ORM or Query Builder with built-in parameterization (Sequelize, TypeORM, etc.)
  • Never concatenate user input directly into SQL queries
  • Apply principle of least privilege to database connections

2. Password Security Enhancements

  • Replace MD5 hashing with modern algorithms (bcrypt, Argon2, or scrypt)
  • Implement password salting with unique salts per user
  • Remove password hashes from JWT tokens entirely
  • Store only authentication state in JWT (user ID and role)

3. Authentication Hardening

  • Implement multi-factor authentication (MFA) as additional layer
  • Add account lockout after failed login attempts
  • Implement CAPTCHA after multiple failed attempts
  • Use secure session management practices

4. Security Testing Integration

  • Add automated SQL injection tests to CI/CD pipeline
  • Conduct regular penetration testing (quarterly minimum)
  • Implement SAST (Static Application Security Testing) tools
  • Perform code reviews focused on security

5. Monitoring and Detection

  • Enable comprehensive database query logging
  • Implement real-time alerting for suspicious SQL patterns
  • Monitor for unusual authentication patterns
  • Set up security information and event management (SIEM)

6. Security Training

  • Conduct developer training on secure coding practices
  • Implement security champions program
  • Regular security awareness training for development team

Validation EvidenceTest Execution Details

  • Date: 2025-12-03
  • Time: 08:43:46 GMT
  • Request ID: 43 (captured in proxy)
  • Total payloads tested: 10
  • Successful bypasses: 7
  • Failed attempts: 3

Reproducibility Confirmation

  • ✓ 100% reproducible across multiple test runs
  • ✓ No special conditions or timing requirements
  • ✓ Works from any network location with internet access
  • ✓ No authentication or prior knowledge required
  • ✓ Successful exploitation in single HTTP request

References and Resources

Additional Notes

This vulnerability represents a complete failure of authentication security and poses an immediate and critical risk to the application and all its users. The combination of authentication bypass, privilege escalation, and sensitive data exposure creates a perfect storm for complete system compromise.

The vulnerability is trivial to exploit - requiring only basic HTTP knowledge and no specialized tools. It is highly likely that this vulnerability would be discovered and exploited quickly by attackers if present in a production environment.

Immediate remediation is essential to prevent unauthorized access, data breaches, and regulatory violations.

Report Generated By: SQLi Reporting Agent (Login)
Validation Report: /workspace/sqli_login_validation_report.md
Report Date: 2025-12-03
Classification: CRITICAL - IMMEDIATE ACTION REQUIRED

コスト

今回の検証(OWASP Juice Shopのスキャン)にかかったリソースは以下の通りです。

実行時間:約30分
費用:3100円
(≒$20, 1$=155円換算)

Strix は、GPT-5 や Claude 4.5 Sonnet といった最上位のLLMを活用し、疑似攻撃を繰り返すことで脆弱性を検証します。そのため、1回あたり数千円の実行コストが発生します。
一方、同等レベルの診断をセキュリティ専門家に依頼した場合、費用は数十万〜数百万円、期間も数週間を要するのが一般的です。
そのため、Strixは30分程度で完了し、数千円の価格帯で提供できる点を考慮すれば、高度な診断を短時間・低コストで実施できる手段として、十分な費用対効果が期待できます。

画面右下にCost

まとめ

本記事では、自律型AIセキュリティエージェント「 Strix」の概要から、実際のアプリケーション(OWASP Juice Shop)を用いた脆弱性診断フローまでを紹介しました。

StrixのようなAIエージェントを導入すれば、従来のルールベース検知による大量の誤検知に悩まされることなく、実際に攻撃が成功した脆弱性のみを特定できます。専門家による手動診断に匹敵するテストを、数十分かつ数千円という低コストで実施できるため、コストや納期を気にせず、開発サイクルの内側で継続的にセキュリティを担保することが可能になります。

セキュリティ診断は、「高額な専門家」か「精度の低い自動ツール」かの二択ではありません。ぜひあなたのプロジェクトでも、AIエージェントを活用した新しいセキュリティ運用を検討してみてください。

Furious Greenでは、AI技術を「学ぶ」「試す」「使いこなす」ための環境づくりを支援しています。
今回ご紹介したようなAIエージェントの活用はもちろん、生成AIを用いたサービス開発や運用に課題をお持ちの方は、ぜひお気軽にご相談ください

ご相談はこちら
S
Author
Seiya Oiwa
FURIOUS GREEN

AI技術の基礎から実践までを学べる研修で
エンジニアのスキルアップと組織の変革を支援します。

会社名
Furious Green合同会社 (Furious Green LLC)
法人番号
6020003019971
代表者
代表社員 ダラローザソアレス・フランシスコ
所在地
〒220-0012
神奈川県横浜市西区みなとみらい3-7-1
オーシャンゲートみなとみらい 8階
事業内容
・AI技術者育成 / 研修事業
・技術コンサルティング
・AIソリューション開発支援
適格請求書発行事業者
© 2026 Furious Green LLC. All rights reserved.