> ## Documentation Index
> Fetch the complete documentation index at: https://docs.replit.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Package Firewall

> Package Firewallはインストール時に悪意のあるパッケージや侵害されたパッケージをブロックし、コードがアプリに届く前に保護します。デフォルトで有効、Socketによって提供。

<Frame>
  <img src="https://mintcdn.com/replit/PlH9o31JxmYssE0Q/images/package-firewall/blocked-package-message.png?fit=max&auto=format&n=PlH9o31JxmYssE0Q&q=85&s=cc7090969f43b07d55b734f38ab01426" alt="Replitのセキュリティポリシーによるform-dataのインストールブロックを示すAgentチャット、パッケージの既知の脆弱性の説明付き" style={{ display: 'block', margin: '0 auto' }} width="1372" height="1144" data-path="images/package-firewall/blocked-package-message.png" />
</Frame>

<Note>
  依存関係セキュリティについて初めてお知りになる方は、CVE、SBOM、露出、Agentによる修正、再公開、Auto-Protectの定義について [セキュリティの概念](/references/security/concepts) をご覧ください。
</Note>

Package Firewallは悪意のあるパッケージや侵害されたパッケージをネットワークレベルでブロックし、アプリにインストールされる前に防ぎます。[Replit Auto-Protect](/references/security/concepts#auto-protect) の一部として、すべてのビルダーに対してデフォルトで有効になっており、ソフトウェアサプライチェーンセキュリティ企業の [Socket](https://socket.dev) によって提供されています。

あなたまたはAgentが `npm install` や `pip install` などのインストールコマンドを実行すると、リクエストはまずPackage Firewallを通過します。クリーンなパッケージは通常通りインストールされ、何も気づきません。Socketが悪意のあるまたは侵害されたとフラグを立てたパッケージは、コードが環境に届く前にブロックされます。

Package Firewallは**すべてのビルダーに対してデフォルトで有効**であり、設定は不要で移行も必要ありません。新規および既存のアプリの両方を保護し、設定する項目はありません。

<Frame>
  <img src="https://mintcdn.com/replit/PlH9o31JxmYssE0Q/images/package-firewall/auto-protect-layers.png?fit=max&auto=format&n=PlH9o31JxmYssE0Q&q=85&s=29403621c1249c15a1e21dac90c8a4aa" alt="デフォルトで有効な3つの保護を示すReplit Auto-Protectパネル：WAF Firewall、Socket搭載のPackage Firewall、SSL/TLS暗号化" width="1328" height="566" data-path="images/package-firewall/auto-protect-layers.png" />
</Frame>

## インストール時の保護が重要な理由

ほとんどのサプライチェーンツールは、パッケージがすでにインストールされた後の公開時にのみ依存関係をスキャンします。通常の脆弱性にはそれで十分な場合があります。マルウェアは異なります：インストールされた瞬間に被害を与えます — シークレットを盗んだり、バックドアを開いたり、環境変数を外部に流出させたりします。公開時スキャンがフラグを立てた時点では、攻撃はすでに実行されています。

Package Firewallはそのウィンドウを閉じます。悪意のあるパッケージをダウンロード前にブロックすることで、悪意のあるコードの1行が実行される前に攻撃を止めます。

## 仕組み

1. あなたまたはAgentが `npm install <package>` や `pip install <package>` などのインストールコマンドを実行します。
2. リクエストはPackage Firewallを通過し、Socketの脅威インテリジェンスに対してパッケージを確認します。
3. パッケージがクリーンであれば、インストールは通常通り実行され、知覚できる違いはありません。
4. パッケージが悪意のあるまたは侵害されている場合、インストールはコードが環境に届く前にブロックされます。

何かがブロックされた場合、何が止められてなぜかについての明確なメッセージが表示されます。これにはブロックをトリガーした脆弱性やポリシーが含まれます。Agentも同じシグナルを受け取るため、パッケージ名のスペルミスを修正するなど安全な代替案を提案したり、決定をあなたに戻したりできます。

### 対応パッケージマネージャー

Package Firewallは以下のインストールを保護します：

* **JavaScript** — npm、yarn、pnpm
* **Python** — pip
* **Go** — Goモジュール

## Package Firewallが検知するもの

Package Firewallは完全なマルウェアと、侵害されたまたは既知の脆弱性を持つ正規パッケージのバージョン（広く使用されているものも含む）の両方をブロックします。これらの脆弱性の多くは、それを推奨するモデルのトレーニングカットオフ後に開示されたため、モデルはトレーニングデータでは安全とされていたが、その後フラグが立てられた依存関係バージョンを自信を持って提案する可能性があります。これらのリスクには業界での名称があります：

* **タイポスクワット** — `requests` の代わりに `reqeusts` など、本物のパッケージの名前から1キー入力違いの悪意のあるパッケージ。間違ったパッケージを要求してマルウェアをダウンロードします。
* **スロップスクワット** — モデルが存在しないパッケージ名を幻覚し、攻撃者がその名前を正確に登録して次のAgentがインストールするのを待ちます。
* **陳腐化した推奨** — モデルがトレーニングカットオフ前は安全だったとして推奨する、開示された脆弱性を持つ本物のパッケージ。

この最後のカテゴリが、AIビルドアプリにとってPackage Firewallが最も重要な理由です：Agentはもはや安全でない依存関係を自信を持って使用しようとする可能性があり、Package Firewallはそのコードが実行される前にインストールを止めます。

## Package FirewallとReplitの他のセキュリティツールとの関係

Package Firewallは3つの補完的なレイヤーのうちの1つです。それぞれがアプリのライフサイクルの異なる時点を保護するため、どれかを選ぶのではなく一緒に使用してください。

| レイヤー                 | 実行タイミング      | 機能                                                                                                                                                  |
| -------------------- | ------------ | --------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Package Firewall** | インストール時      | 悪意のある侵害されたパッケージをダウンロード前にブロック（予防）。                                                                                                                   |
| **自動依存関係スキャン**       | インストール後、継続的に | インストール済み依存関係の新たに開示されたCVEを検出し、オプションでAgentが準備したパッチを提供。[プロジェクトセキュリティセンター](/references/security/project-security-center#automatic-dependency-scans)を参照。 |
| **Security Agent**   | 公開前          | コード、依存関係、プライバシーの脆弱性についてコードベース全体を監査。[Agentセキュリティスキャン](/references/security/project-security-center#agent-security-scans)を参照。                         |

## 次のステップ

* [プロジェクトセキュリティセンター](/references/security/project-security-center) で単一プロジェクトの検出結果を確認します。
* [ワークスペースセキュリティセンター](/references/security/workspace-security-center) ですべてのプロジェクトにわたって依存関係を監査します。
* Replitのセキュリティアプローチについて詳しくは [How Replit Secures AI-Generated Code](https://blog.replit.com/securing-ai-generated-code) をお読みください。
