Slide 1

Slide 1 text

2026/01/09 佐藤智樹 チームで安全にClaude Codeを 利⽤するためのプラクティス

Slide 2

Slide 2 text

本セッションの対象者 ● Claude Codeをすでに使っている or これから使いたい⽅ ● Claude Codeを導⼊したいがどんなリスクや対策があるのか知りたい⽅ 得られること ● Claude Codeがもつ潜在的なリスクをざっくり知る ● 社内でClaude Codeを導⼊する際のリスク分析の例を知り、問題に備える 本セッションの⽬的 2

Slide 3

Slide 3 text

● 会社宣伝 ● 前提 ● 脅威モデリングとは ● Claude Codeが持つ機能の再確認 ● Claude CodeをSTRIDEで考えてみる ⽬次 3

Slide 4

Slide 4 text

名称    クラスメソッド株式会社 本社所在地 東京都港区⻄新橋1-1-1 ⽇⽐⾕フォートタワー 従業員数  820⼈(グループ全体) 売上    950億円(2025年6⽉末) 設⽴    2004年7⽉7⽇ (第21期) 拠点    国内 8拠点       東京 / 札幌 / 仙台/ 上越 / 名古屋 / ⼤阪 / 福岡 / 那覇       海外 6拠点       ベルリン(ドイツ) / バンクーバー(カナダ) /       バンコク(タイ) / ソウル(韓国) /       ダナン(ベトナム)/ マレーシア 会社概要 4

Slide 5

Slide 5 text

⾃分たちの知⾒や経験をオープンに公開しています。情報発信に細かいルールはな く、透明性の⾼い情報を発信しており、情報発信の⽂化が醸成されています。 会社⽂化の紹介(DevelopersIO) 5 クラスメソッドの情報発信⽂化を代表する 「やってみた系技術ブログ」 - 約40,000本の技術記事 - ⼿順や設計含め全部を公開するスタンス - 最低限のルールで⾃由に発信 - 社内フィードバックで⾃分⾃⾝の勉強にも - インプット∕アウトプットのサイクルを⾼速に

Slide 6

Slide 6 text

「知⾒を共有するエンジニアに対価を」を コンセプトとした技術情報共有コミュニティです。 - 開発の知⾒やアイデアを得たら、気軽に記事にしてください - 知⾒がたくさん公開されるような場にしたいという 気持ちから、「また書こう」と思えるサービスを作っています - バッチ機能や書籍機能、Publicationなどの機能も提供 社員や社員以外の⽅も発信するプラットフォームづくりを通して、世の中の⽅々が 情報を発信するための環境にも貢献しています! 会社サービスの紹介(Zenn) 6 https://zenn.dev/about

Slide 7

Slide 7 text

第4回 Agentic AI Hackathon with Google Cloud 開催! 7 ハッカソン開催期間中に、AI Agent 構築の Bootcamp も開催! 詳細は「zenn ハッカソン」で!

Slide 8

Slide 8 text

⾃⼰紹介 8 ● 2016年 某SIerにて基幹システム開発従事 ● 2020年 ⼊社 バックエンドエンジニア ○ IoT宅配ボックス、⼯場/家電などのIoTシステムの バックエンド、インフラ構築に従事 ● 2023年 テクニカルマネージャー ○ 部署内全体技術⼒向上のため施策実施 ○ 案件にアーキテクトとして参画 ● 2025年 ○ AI駆動開発など⽣成AIを活⽤した⽣産性向上を ⽬的として活動。AI駆動開発の外部向け研修実施 ● 部署 ○ 製造ビジネステクノロジー部 ● 名前 ○ 佐藤智樹 ● 役割 ○ テクニカルマネージャー @tmk2154 @tomoki10 @tomoki10

Slide 9

Slide 9 text

これからClaude Code上で起きうるいくつかの問題と対策の話しをしますが全部に対 応しようという話しではないです。紹介する対策の中には利便性を損なうものも含ま れます。 チーム内でまずどんなリスクがあるのかを把握し、どのリスクは対策して、どのリス クは受容するのかという参考に使ってください。以下を読むのもおすすめです。 前提 9 https://dev.classmethod.jp/articles/aws-security-all-in-one-2021/

Slide 10

Slide 10 text

おさらい:AIエージェントの構造 10 「A Survey on Large Language Model based Autonomous Agents」https://arxiv.org/pdf/2308.11432 より解釈

Slide 11

Slide 11 text

基本以下の4つで構成される ● Profile … エージェントが誰かを定義 ex: 研究者、エンジニア ● Memory … 保持する固有の情報 ex: コンテキストやRAGなど ● Planning … タスク分解やフィード バックなどで⾏動を計画 ● Action … タスクの実⾏ Actionでコーディングに関連する ツールを使って作業を完遂 おさらい:AIコーディングエージェントの構造 11

Slide 12

Slide 12 text

基本以下の4つで構成される ● Profile … エージェントが誰かを定義 ex: 研究者、エンジニア ● Memory … 保持する固有の情報 ex: コンテキストやRAGなど ● Planning … タスク分解やフィード バックなどで⾏動を計画 ● Action … タスクの実⾏ ⾚線部分がユーザーの検討領域 おさらい:AIコーディングエージェントの構造 12

Slide 13

Slide 13 text

Claude Codeがもつツールの機能 13 ● ファイル読取∕編集∕検索 ○ 実⾏したディレクトリ配下のコードを読み取りや編集、検索が可能 ● CLIコマンド実⾏ ○ デフォルトでは許可したコマンドを実⾏可能 ○ --dangerously-skip-permissions オプションで⾃動承認が可能 ● インターネットアクセス ○ エージェントの知識強化やインターネットからの情報収集 ● MCP / Skills の実⾏ ほかには、タスク管理、サブエージェント、ユーザー対話などなど 上記の機能をアクセス制御するための権限管理もある

Slide 14

Slide 14 text

Claude Codeがもつツールの機能 14 Claude Code Tools File Read/Edit CLI Command Web Fetch MCP / Skills Terminal File Internet ※Claude Codeが外界のものを操作する仕組みのため記載  特有の考慮事項が多いため今回は検討対象から除外 実際のツールを抽象化して以下のように整理

Slide 15

Slide 15 text

脅威モデリングとは アプリケーションとその環境のセキュリティホールを⾒つけるための⼿法※ ⼀般的に以下のステップをとる 1. アプリケーションの評価と図式化 2. アプリケーションの構築におけるセキュリティ上の⽋陥を特定する 3. 発⾒した⽋陥を修正するための変更を⾏う 4. 変更が適⽤され、正しく脅威が緩和されることを検証する 1を実施後、2はSTRIDEという脅威分類フレームワークを観点として⽤いて、脅威の 洗い出しと対策を検討。今回はアプリではないので、3,4はアレンジして検討 2はブレストなどで⾏うと複数⼈の観点が出るので良いです。今回は登壇者とLLMにて実施してます 脅威モデリングの実施 15 ※https://www.cloudflare.com/ja-jp/learning/security/glossary/what-is-threat-modeling/

Slide 16

Slide 16 text

STRIDEは以下の頭⽂字です ● Spoofing(なりすまし)… 利⽤者や権限のなりすまし ● Tampering(改ざん)… データやコードの改ざん、実⾏環境のデータ削除 ● Repudiation(否認)… 証跡がなく操作の追跡や証明ができない ● Information disclosure(情報漏えい)… 機密データや個⼈情報の流出 ● Denial of service(サービス妨害)… システムやサービスへの過剰な負荷 ● Elevation of privilege(特権の昇格)… 管理者権限や特権の取得 STRIDE脅威モデルとは 16

Slide 17

Slide 17 text

Claude Codeで当てはまる例を洗い出す 17 カテゴリ 具体例 Spoofing(なりすまし) ・別人が設定済みのAPIキーを悪用 Tampering(改ざん) ・エージェントが誤って重要なコードを編集/削除 ・ 想定範囲外の操作で実行環境のデータを削除 Repudiation(否認) ・誰がファイルを削除/編集したか追跡できない ・誰が「--dangerously-skip-permissions」を使ったか不明 Information disclosure (情報漏えい) ・機密ファイルや認証情報をAIが外部に送信 Denial of service (サービス妨害) ・AIが無限にCLIコマンドを実行しCPU/メモリ枯渇 ・ネットワークへの大量リクエスト送信 Elevation of privilege (特権の昇格) ・本来禁止されているコマンドを実行

Slide 18

Slide 18 text

別⼈が設定済みのAPIキーを悪⽤ → リポジトリ内のシークレット悪⽤を想定 → Claude Codeの設定にAPIキー⼊れてリポジトリへコミットしない   .mcp.jsonでMCPにAPIキーを使わせる場合は環境変数の値を使う Spoofing(なりすまし)への対策 18 https://code.claude.com/docs/en/mcp#environment-variable-expansion-in-mcp-json

Slide 19

Slide 19 text

● エージェントが誤って重要なコードを編集/削除 → 定期的にコードをリポジトリやリモートリポジトリにコミット/プッシュ → 誤って上書きされないようMainブランチへの直Push禁⽌などは外部で設定 Tampering(改ざん)への対策 19 Claude Code ローカルリポジトリ リモートリポジトリ Feature ブランチ Feature ブランチ Main ブランチ GitHub Push

Slide 20

Slide 20 text

● 想定範囲外の操作で実⾏環境のデータを削除 → 不正なコマンド実⾏を防⽌のため操作権限を   settings.json や settings.local.json で絞る   ※コマンドやMCPツール実⾏確認時に「2. Yes …」を押してるとallowへ追加されるので再確認不要 Tampering(改ざん)への対策2 20 https://code.claude.com/docs/en/settings

Slide 21

Slide 21 text

● 想定範囲外の操作で実⾏環境のデータを削除 → VMやコンテナ、DevContainerを使って実⾏環境を分離し破壊を防ぐ Tampering(改ざん)への対策3 21 Claude Code Amazon EC2 OR ローカルPC 操作

Slide 22

Slide 22 text

● 誰がファイルを削除/編集したか追跡できない → Mainとなるソースコードはリモートリポジトリ上で管理 ● 誰が「--dangerously-skip-permissions」を使ったか不明 → Linuxのコマンド実⾏履歴で保持。気になる場合外部転送やEC2上などで実⾏ →「--dangerously-skip-permissions」を使っても良いようにdenyを設定 Repudiation(否認)への対策 22

Slide 23

Slide 23 text

● 機密ファイルや認証情報をAIが外部に送信 → Fetch ToolがアクセスできるドメインやMCPサーバを制限 → envファイルなど認証情報が含まれるファイルへのアクセスを制限 → Claude Codeが提供しているDevContainer設定※を使⽤しNWを制限 Information disclosure(情報漏えい)への対策 23 ※https://code.claude.com/docs/en/devcontainer

Slide 24

Slide 24 text

DevContainer内で使われる init-firewall.sh の紹介 ● localhostに関連するNAT設定の保持 ● iptables の初期化でNW転送ルールを削除 ● 以下最低限の通信のみ許可 ○ DNS クライアント→サーバ ○ SSH ○ locahost ● 特定ドメインのIPを解決し許可リストに追加 ○ アクセスしたいドメインが増えるとClaude CodeのFetch許可+NW許可が必要 ● ホストネットワークへの接続許可 ● iptables ルールにマッチしない通信の拒否 Claude Codeが提供しているDevContainer設定の内容 24 https://github.com/anthropics/claude-code/blob/main/.devcontainer/init-firewall.sh

Slide 25

Slide 25 text

DevContainerのNW制限設定を利⽤した感想 ● メリット ○ 想定外の箇所にClaude Codeがデータ送信することを防⽌ ■ 「--dangerously-skip-permissions」を使っても防げる ● デメリット ○ アクセス先が制限されるので随時NWの⽳あけが必要 ■ AWSであればIPリストが公開されているのでまとめて⽳あけ可能※ ○ 外部ノウハウの収集時にアクセス制限で阻まれる→思考の質が落ちるかも? Claude Codeが提供しているDevContainer設定の注意 25 ※https://docs.aws.amazon.com/vpc/latest/userguide/aws-ip-ranges.html AWSのIPだけ穴あけしたサンプル https://github.com/tomoki10/claude-code-setup-sample/blob/main/.devcontainer/init-firewall.sh

Slide 26

Slide 26 text

● AIが無限にCLIコマンドを実⾏しCPU/メモリ枯渇 → コンテキストの枯渇などで⾃然と上限までは操作継続されない? → 気になる場合、コンテナやVMなど分離された環境上で実⾏ ● ネットワークへの⼤量リクエスト送信 → ⼤量リクエストはClaude Code⾃体で防⽌できない。気になる場合は   VPC上にClaude Codeを配置しNWトラフィックをVPC Flow Logsで監視 通常利⽤では⼤きな問題ではなそうだが、Claude CodeやClaude Codeの実⾏元が 乗っ取られるとこのリスクが⼤きくなる!? Denial of service(サービス妨害)への対策 26

Slide 27

Slide 27 text

● 本来禁⽌されているコマンドを実⾏ → コマンド/ファイル操作権限をsettings.json や settings.local.json で絞る   Linuxの場合は実⾏ユーザの権限管理も合わせて実施 → 実⾏環境の権限昇格がなされても被害がないようにコンテナやVMを   サンドボックスとして使って隔離(多層防御の観点) Elevation of privilege(特権の昇格)への対策 27

Slide 28

Slide 28 text

対策概要図 28 Claude Code Tools File Read/Edit CLI Command Web Fetch MCP / Skills Terminal File Internet Amazon EC2 OR settings.json + settings.local.json (allow/deny list) ローカルPC

Slide 29

Slide 29 text

対策サマリ 29 カテゴリ 具体例 考えられる対策 Spoofing(なりすまし) ・別人が設定済みの APIキーを悪用 ・.mcp.jsonなどにシークレットを含めず  環境変数などリポジトリ外で設定する Tampering(改ざん) ・エージェントが誤って重要なコードを編集 /削除 ・ 想定範囲外の操作で実行環境のデータを削除 ・コードの外部管理( GitHub/GitLabなど) ・settings.jsonやsettings.local.jsonで権限制御 ・環境分離(コンテナ/ VM 利用) Repudiation(否認) ・誰が「--dangerously-skip-permissions」を使ったか不明 ・誰がファイルを削除 /編集したか追跡できない ・コードの外部管理( GitHub/GitLabなど) ・ログを外部保管、環境分離 Information disclosure (情報漏えい) ・機密ファイルや認証情報を AIが外部に送信 ・インターネットアクセスを通じた誤送信 ・Fetch Toolのドメイン制御 ・MCPサーバの許可制御 ・ファイルアクセス範囲の制御 ・NW分離(コンテナ/VM 利用) Denial of service (サービス妨害) ・AIが無限ループでCLIコマンド実行→CPU/メモリ枯渇 ・ネットワークへの大量リクエスト送信 ・環境分離(コンテナ/ VM 利用) ・NW監視 Elevation of privilege (特権の昇格) ・本来禁止されているコマンドを実行 ・settings.json などで権限制御(sudo禁止) ・環境分離(コンテナ/ VM 利用)

Slide 30

Slide 30 text

宣伝:企業でのAI駆動開発導⼊も⽀援します! 30 https://classmethod.jp/news/20250725-anthropic/ https://classmethod.jp/services/aidd/

Slide 31

Slide 31 text

⽣成AI技術を活⽤した「トライ&エラー」の⼿法を習得し、失敗から学び、成⻑するイノ ベーション⽂化を根付かせるための実践的な⽀援を提供します 主にエンジニアの⽅を対象に、AIエージェントを活⽤するスキルを⾝につけていただきます ⼿を動かしながらコーディングや定常作業の効率化の⼿段をご紹介します 宣伝:AI駆動開発実践プログラム 31

Slide 32

Slide 32 text

個⼈的な宣伝:AI駆動開発の書籍がでました! 32 Burikaigi 2026のクラスメソッド ブースにて物理本を販売中! インターネットでも販売中!