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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
pfsense-qinq-parent-if — pfSense CE 2.9.0-DEVELOPMENT - 高 - リモート - RCE - QinQ parent-if ifconfig | Kitploit
ツール/GitHubGitHub/abraxas/pfsense-qinq-parent-if
脆弱性分析エクスプロイトウェブアプリケーション悪用ネットワークセキュリティペネトレーションテストコマンド&コントロールリモートアクセスツール
GitHubabraxas/pfsense-qinq-parent-if

pfsense-qinq-parent-if

pfSense CE 2.9.0-DEVELOPMENT - 高 - リモート - RCE - QinQ parent-if ifconfig

リポジトリを見る
6122日前未レビュー

人気

すべて見る →

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

すべてのツールを探索

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

すべてのツールを見る →
共有

Abraxas Labs - pfsense-qinq-parent-if

abraxaslabs.tech  ·  github.com/abraxas  ·  @abraxas_null  ·  [email protected]  ·  pfsense-qinq-parent-if

pfsense-qinq-parent-if

Class: RCE Reach: Remote

pfSense CE 2.9.0-DEVELOPMENT (9363ac5) - pfsense.org

QinQ 編集は、does_interface_exist チェックなしで親インターフェース名を保存します。VLAN 編集はすでに、ライブ iface でない親を拒否します。Form_Select は POST を再検証しません。interface_qinq_configure が早期リターンしても、write_config を作成します。その後、メンバーの追加/削除が、保存された vlanif をエスケープされていない ifconfig に補間します。PHP の exec は /bin/sh -c です。WebGUI PHP-FPM は root です。権限は page-interfaces-qinq-edit であり、Diagnostics: Command ではありません。

IDCVE 未割当
ClassRCE
ReachRemote (認証済み WebGUI)
CWECWE-78
CVSSHigh: 8.8 CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
ProductpfSense CE
Affected2.9.0-DEVELOPMENT (9363ac5b8651a1c7a333180425ce7719070f95f9) QinQ 編集
Authpage-interfaces-qinq-edit を持つ WebGUI セッション
LicenseGNU Affero GPL v3.0
Lab127.0.0.1 のみ

公開 master 9363ac5 を固定しました。ラボは、固定された vlan_interface / interface_qinq_configure / メンバー exec 行の PHP ガジェットで、127.0.0.1:18810 上のループバック HTTP です。

攻撃者ができること

MethodSinkPrivilege
ライブ iface でない親を指定して QinQ 作成を POST し、その後メンバーを追加する編集を POSTinterface_qinq2_configure exec ifconfig vlan create ... (interfaces.inc:620)Integrity (lab-proven): /bin/sh -c 経由の root シェル。ラボ: メンバー追加 qinq2 が witness を書き込みました (member-sink=yes)。
同じ保存された vlanif で、メンバーを削除する編集を POSTexec("/sbin/ifconfig {$parent}.{$tag} destroy") (interfaces_qinq_edit.php:212)Integrity (lab-proven): 同じ root exec。Destroy には IF_NAMESIZE の上限がありません。
同じ root シェルホストファイルシステムRecon (inferred): config.xml、鍵、他のテナント。このページは exec の出力を表示しません。
root シェルまたは壊れた ifconfigvlan デバイスAvailability (inferred): vlan デバイスの作成/破棄。データプレーンが影響を受けます。

Lab-proven vs inferred: VLAN 拒否、作成のみで exec なし、長さ 16 での IF_NAMESIZE ブロック、メンバー追加 qinq2 の witness は lab-proven です。ファイルシステム偵察とデータプレーン妨害は、root PHP-FPM から inferred です。

Requires: page-interfaces-qinq-edit を持つ WebGUI セッション。CSRF トークン。2 回の POST (作成、その後メンバー編集)。デフォルトの admin はこのページを持ちます。制限付きユーザーにはこのページのみを付与できます。

閉じたままの隣接サーフェス

SurfaceLab
VLAN 親存在チェックvlan-rejected=yes
QinQ 作成のみ (親が存在しない)設定を保存、create-no-exec=yes
qinq2 名の長さ 16exec 前に if-namesize-block=yes
未認証 / トークンなしの CSRFguiconfig + CSRF-magic
GIF/GRE 名 regex、LAGG メンバー does_interface_exist + escapeshellarg他のページ
一度も作成されていない親の QinQ リスト削除does_interface_exist($vlanif)
Diagnostics: Command同時に付与されない限り閉じたまま

Diagnostics: Command なし。未認証なし。歴史的なクラスは CVE-2023-42326 GIF/GRE で、別のページです。

Lab

cd lab
./run.sh

ループバック 127.0.0.1:18810。Compose プロジェクト pfsense-qinq-parent-if。イメージタグ pfsense-qinq-parent-if:2.9.0-dev。Witness PFSENSE-QINQ-PARENT-IF-WITNESS。最終行:

SUCCESS PFSENSE-QINQ-PARENT-IF vlan-rejected=yes create-no-exec=yes member-sink=yes if-namesize-block=yes PFSENSE-QINQ-PARENT-IF-WITNESS

修正

QinQ 編集: VLAN 編集と同様に、ライブインターフェースでない親を拒否します。メンバータグの整数チェックはすでに存在しますが、すべての ifconfig の前に保存された vlanif を escapeshellarg します。メンバー削除の destroy は、interface_qinq2_configure が IF_NAMESIZE を上限とするのと同じ方法で上限を設けます。

参考資料

  • github.com/pfsense/pfsense 9363ac5b8651a1c7a333180425ce7719070f95f9
  • interfaces_qinq_edit.php
  • interfaces.inc interface_qinq2_configure
  • VLAN 対比: interfaces_vlan_edit.php
  • 歴史的なクラス (GIF/GRE、このページではない): CVE-2023-42326
  • CWE-78
ツールをダウンロード