Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
webvm — クライアントサイドのLinux仮想マシンがWebAssemblyを介してブラウザ内で動作し、Tailscaleネットワーキング、Dockerfileベースのカスタムイメージ、およびCTFチャレンジサポートを備え、セキュリティ教育と開発向けです。 | Kitploit
ツール/GitHubGitHub/leaningtech/webvm
セキュリティ仮想化ネットワークセキュリティCTFクラウドセキュリティDevSecOps学習と教育
GitHubleaningtech/webvm

webvm

クライアントサイドのLinux仮想マシンがWebAssemblyを介してブラウザ内で動作し、Tailscaleネットワーキング、Dockerfileベースのカスタムイメージ、およびCTFチャレンジサポートを備え、セキュリティ教育と開発向けです。

リポジトリを見る
17.2k3.3k3日前Kitploit レビュー済み

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有
ウェブサイト

WebVM

Discord server Issues

このリポジトリには、ブラウザ上で動作するLinux仮想マシンであるhttps://webvm.ioのソースコードが含まれています。

新しいAlpine/Xorg/i3グラフィカル環境をお試しください:https://webvm.io/alpine.html

WebVMとは?

WebVMは、HTML5/WebAssembly上で完全にクライアントサイドで動作するサーバーレスの仮想環境です。Linux ABI互換性を持つように設計されており、多くのネイティブ開発ツールチェーンを含む未改変のDebianディストリビューションを実行します。

WebVMはCheerpX仮想化エンジンを搭載しており、以下を提供します:

  • x86からWebAssemblyへのJITコンパイラ
  • 仮想ブロックベースファイルシステム
  • Linuxシステムコールエミュレータ
  • 安全でサンドボックス化されたクライアントサイド実行

目次

  • ネットワーク
  • 開発とカスタマイズ
    • GitHub Pagesへのデプロイ
    • ローカルサーバーとイメージ設定
  • Claude AI統合
  • コミュニティとサポート
  • 詳細情報
  • ライセンス

[!NOTE] https://webvm.ioにアクセスして、すぐにブラウザで使い始めてください。セットアップは不要です。

ローカルセットアップ、カスタムイメージのビルド、フォーク/デプロイのガイダンスについては、開発とカスタマイズを参照してください。

ネットワーク

WebVMはTailscale統合をサポートしています。そのため、ブラウザVMはプライベートネットワークにアクセスでき、エグジットノードを使用すればパブリックインターネットにもアクセスできます。

[!NOTE] 一部の低レベルネットワーク操作(特にpingで使用されるICMP)は、現在この環境では利用できません。接続確認にはcurlまたはwgetを使用してください。

ローカルネットワーク

  1. サイドバーから「ネットワーク」パネルを開く
  2. 「Tailscaleに接続」をクリック
  3. ログイン(必要に応じてtailscale.comで無料アカウントを作成)
  4. プロンプトが表示されたら「接続」をクリック

これでWebVMはTailscaleネットワーク内のすべてのマシンにアクセスできます!

インターネット使用のヒント

[!TIP] 低速な接続では、初期化前に少し遅延が発生する場合があります。接続状態はボタン上の色付きのドットで表示されます:オレンジ=ローカルネットワーク、緑=グローバル/インターネット。ボタンテキストには、接続後のTailscale IPアドレスが表示されます。

WebVMからパブリックインターネットにアクセスするには、Tailscaleネットワーク内の別のデバイスでエグジットノードをセットアップします:

  1. Tailscaleエグジットノードのクイックスタート(セクション:「デバイスをエグジットノードとしてアドバタイズする」)に従ってください。
  2. アドバタイズされると、WebVMは自動的にエグジットノードを使用します。

認証キーの使用

インタラクティブなログインの代わりに、Tailscale認証キーをURLフラグメントに追加します:

root@kitploit:~
https://webvm.io/#authKey=<your-ephemeral-key>

これはTailscaleの--login-serverオプションに相当します。

[!TIP] カスタムコントロールサーバーも必要な場合は、同じURLフラグメントにcontrolUrlを追加し、値を&で区切ります。例:#authKey=...&controlUrl=...。

Headscaleを使ったTailscaleのセルフホスティング

headscale(Tailscaleコントロールサーバーのセルフホスト型オープンソース実装)もサポートしています。HeadscaleはデフォルトでCORSヘッダーを追加しないため、その前にプロキシが必要です。例としてHeadscaleリバースプロキシ設定ドキュメントを参照してください。

準備ができたら、nginx設定ファイルのlocation /ブロックに次の行を追加します。

root@kitploit:~
if ($http_origin = "https://yourdomain.com") {
    add_header 'Access-Control-Allow-Origin' "$http_origin";
    add_header 'Access-Control-Allow-Credentials' 'true' always;
}

その後、次のURLでWebVMにアクセスします:

root@kitploit:~
https://yourdomain.com/#controlUrl=<your-headscale-url>

開発とカスタマイズ

[!NOTE] ユーザーはデフォルトでroot権限を持っています。sudoはインストールされていませんが、必要に応じてDockerfileに簡単に追加できます。

GitHub Pagesへのデプロイ

これはシンプルで初心者に優しいワークフローです。ローカルホスティングとカスタマイズについては、以下のローカルサーバーとイメージ設定を参照してください。

WebVMリポジトリをフォークして、独自のバージョンをGitHub Pagesにデプロイします:

deploy_instructions_gif
  1. リポジトリをフォーク
  2. GitHub Pagesを有効にする フォークしたリポジトリで 設定 → Pages でソースとして「GitHub Actions」を選択
  3. Deployワークフローを実行 Actionsから
  4. 完了後、deploy_to_github_pagesジョブの下に表示されるURLを開く

同じDeployワークフローは、Dockerfileからカスタム.ext2ディスクイメージもビルドします。dockerfiles/debian_miniや別のDockerfileを指定し、結果をGitHubリリースアセットとして公開するか、フォークからPagesビルドをデプロイできます。

[!NOTE] dockerfiles/debian_largeはGitHub Pagesには大きすぎるイメージです。

ローカルサーバーとイメージ設定

1. リポジトリのクローン

root@kitploit:~
git clone https://github.com/leaningtech/webvm.git
cd webvm

2. イメージをcustom-disk-images/に配置

このリポジトリには、ローカルの.ext2ファイル用の永続的なcustom-disk-images/ディレクトリが含まれています。

公式のDebian miniイメージを使用するには、リリースからダウンロードしてください:

debian_mini_20230519_5022088024.ext2

自分でビルドしたイメージをコピーすることもできます。

3. WebVMにローカルイメージを指定

config_public_terminal.jsを編集します:

root@kitploit:~
export const diskImageUrl =
  "/custom-disk-images/debian_mini_20230519_5022088024.ext2";
export const diskImageType = "bytes";

4. 依存関係のインストールとビルド

root@kitploit:~
npm install
npm run build

5. Nginxを起動してWebVMを開く

root@kitploit:~
nginx -p . -c nginx.conf

その後、http://127.0.0.1:8081 を開いて、ローカルのWebVMをお楽しみください!

完全なAlpineデスクトップ環境については、leaningtech/alpine-imageを参照してください。

詳細については、CheerpXカスタムイメージドキュメントを参照してください。

[!TIP] Python3 REPLの場合、DeployワークフローはDockerfileで指定されたCMDを考慮します。

REPLをビルドするには、CMD [ "/bin/bash" ]をCMD [ "/usr/bin/python3" ]に変更してデプロイするだけです。

Claude AI統合

Claude AIにアクセスするには、APIキーが必要です。以下の手順に従って開始してください:

1. アカウントを作成

  • Anthropic Consoleにアクセスし、メールアドレスでサインアップします。サインインリンクがAnthropic Consoleに送信されます。

2. APIキーを取得

  • ログイン後、APIキーの取得に移動します。
  • 必要なクレジット量を購入します。購入完了後、APIコンソールからキーを生成できます。

3. APIキーでログイン

  • WebVMに移動し、ロボットアイコンにカーソルを合わせます。Claude AI統合タブが表示されます。便利なように、右上のピンボタンをクリックしてタブを固定することもできます。
  • Claude APIキーを挿入できるプロンプトが表示されます。

4. Claude AIを使い始める

  • APIキーを入力すると、次のような質問をしてClaude AIとの対話を開始できます:

"/home/user/chall1.binのCTFチャレンジを解いてください。バイナリは標準入力から読み取ることに注意してください。"

deploy_instructions_gif

重要: APIキーは非公開であり、決して共有しないでください。当社はお客様のキーにアクセスできず、ブラウザにローカルに保存されるだけです。

コミュニティとサポート

問題の報告: バグの報告や機能リクエストにはGitHub Issuesを使用してください。

チャット: Discordコミュニティに参加して、WebVMについて話し合い、アイデアを共有し、助けを求めてください。

詳細情報

記事とリソース:

  • WebVM: ブラウザ内のサーバーレスx86仮想マシン
  • WebVM: Tailscaleによる完全なネットワークを備えたWebAssembly上のLinux仮想化
  • Mini.WebVM: Dockerfileから自分だけのLinuxボックス、WebAssemblyでブラウザ内に仮想化
  • 不可能を実現する: WebAssemblyでブラウザ内のx86仮想化 — JsNation 2022での講演

デプロイ例:

  • Mini.WebVMリファレンス — GitHub Pagesにデプロイされた実行例

WebVMを支える技術:

このプロジェクトは以下を搭載しています:

  • CheerpX — x86からWebAssemblyへのJITコンパイラ | Leaning Technologies
  • xterm.js — Webベースのターミナルエミュレータ
  • Tailscale — VPNネットワーク層
  • lwIP — TCP/IPスタック、Cheerp経由でWeb用にコンパイル

バージョニング:

WebVMはCheerpX NPMパッケージを使用しており、リリースごとに更新されます。

すべてのビルドは不変です。特定のバージョンが今日正常に動作する場合、それは永久に動作し続けます。

ライセンス

WebVMはApache License, Version 2.0の下で公開されています。

このリポジトリの内容は、自由に使用、変更、再配布していただけます。

パブリックなCheerpXデプロイメントは現状のまま提供され、個人による技術的な探求、テスト、使用のために無料で使用できます。非営利団体、学術機関、公共部門を含む組織によるその他の使用にはライセンスが必要です。商用ライセンスなしに、CheerpXビルドを他の場所でホスティングする目的でダウンロードすることは許可されていません。

ライセンス慣行の詳細はこちらをご覧ください。

CheerpX/WebVM上に製品を構築したい場合は、他のライセンスオプションをご覧ください:CheerpXライセンス またはお問い合わせ:[email protected]

ツールをダウンロード