製品・ソフトウェアに関する情報
PinchtabのPinchTabにおけるサーバサイドのリクエストフォージェリの脆弱性
Title PinchtabのPinchTabにおけるサーバサイドのリクエストフォージェリの脆弱性
Summary

PinchTabは、AIエージェントにChromeブラウザの直接制御を提供するスタンドアロンのHTTPサーバーです。PinchTab v0.8.3には、オプションのスケジューラーのWebhook配信経路にサーバーサイドリクエストフォージェリ(SSRF)の脆弱性があります。ユーザー制御の`callbackUrl`を含む`POST /tasks`へのタスク送信時、v0.8.3のスケジューラーはタスクが終了状態に達するとそのURLへアウトバウンドHTTP `POST`を送信します。当該リリースではWebhookパスがURLスキームのみを検証し、ループバック、プライベート、リンクローカルまたは他の非公開宛先を拒否しませんでした。さらに、v0.8.3の実装はデフォルトのHTTPクライアント動作を使用していたため、リダイレクトが追跡され、宛先は検証済みIPに固定されていませんでした。このため、PinchTabサーバーから攻撃者が指定したHTTP(S)ターゲットへの盲目的なSSRFが可能となりました。この問題は一般的な認証なしのインターネット向けSSRFより限定的です。スケジューラーは任意かつデフォルトで無効であり、トークン保護された環境では攻撃者はすでにサーバーのマスターAPIトークンを用いてタスクを送信できる必要があります。PinchTabの想定展開モデルでは、そのトークンは低権限ではなく管理権限を示します。トークンなしの展開はさらにハードルを下げますが、それはWebhookのバグによる影響ではなく別の安全でない設定状態を示しています。PinchTabのデフォルト展開モデルはローカル優先かつユーザー管理で、推奨設定ではループバックバインドとトークンベースアクセスを備えています。これにより、スケジューラーが有効かつ到達可能な場合でも実際のリスクは低減しますが、根本的なWebhook問題は解消されませんでした。v0.8.4ではコールバックターゲットの送信前検証、非公開IPレンジの拒否、検証済みIPへの配信固定、リダイレクト追跡の無効化、およびタスク送信時の`callbackUrl`検証によってこの問題に対処しました。

Possible impacts 当該ソフトウェアが扱う情報の一部が外部に漏れる可能性があります。 また、当該ソフトウェアが扱う情報の一部が書き換えられる可能性があります。 さらに、当該ソフトウェアは停止しません。 そして、この脆弱性を悪用した攻撃により、他のソフトウェアにも影響が及ぶ可能性があります。 
Solution

正式な対策が公開されています。ベンダ情報を参照して適切な対策を実施してください。

Publication Date March 26, 2026, midnight
Registration Date April 24, 2026, 11:30 a.m.
Last Update April 24, 2026, 11:30 a.m.
CVSS3.0 : 警告
Score 5.5
Vector CVSS:3.0/AV:N/AC:L/PR:H/UI:N/S:C/C:L/I:L/A:N
Affected System
Pinchtab
PinchTab 0.8.4 未満
CVE (情報セキュリティ 共通脆弱性識別子)
CWE (共通脆弱性タイプ一覧)
ベンダー情報
その他
Change Log
No Changed Details Date of change
1 [2026年04月24日]
  掲載
April 24, 2026, 11:30 a.m.

NVD Vulnerability Information
CVE-2026-33619
Summary

PinchTab is a standalone HTTP server that gives AI agents direct control over a Chrome browser. PinchTab v0.8.3 contains a server-side request forgery issue in the optional scheduler's webhook delivery path. When a task is submitted to `POST /tasks` with a user-controlled `callbackUrl`, the v0.8.3 scheduler sends an outbound HTTP `POST` to that URL when the task reaches a terminal state. In that release, the webhook path validated only the URL scheme and did not reject loopback, private, link-local, or other non-public destinations. Because the v0.8.3 implementation also used the default HTTP client behavior, redirects were followed and the destination was not pinned to validated IPs. This allowed blind SSRF from the PinchTab server to attacker-chosen HTTP(S) targets reachable from the server. This issue is narrower than a general unauthenticated internet-facing SSRF. The scheduler is optional and off by default, and in token-protected deployments the attacker must already be able to submit tasks using the server's master API token. In PinchTab's intended deployment model, that token represents administrative control rather than a low-privilege role. Tokenless deployments lower the barrier further, but that is a separate insecure configuration state rather than impact created by the webhook bug itself. PinchTab's default deployment model is local-first and user-controlled, with loopback bind and token-based access in the recommended setup. That lowers practical risk in default use, even though it does not remove the underlying webhook issue when the scheduler is enabled and reachable. This was addressed in v0.8.4 by validating callback targets before dispatch, rejecting non-public IP ranges, pinning delivery to validated IPs, disabling redirect following, and validating `callbackUrl` during task submission.

Summary

PinchTab es un servidor HTTP autónomo que otorga a los agentes de IA control directo sobre un navegador Chrome. PinchTab v0.8.3 contiene un problema de falsificación de petición del lado del servidor en la ruta de entrega de webhook del programador opcional. Cuando se envía una tarea a 'POST /tasks' con una 'callbackUrl' controlada por el usuario, el programador v0.8.3 envía un 'POST' HTTP saliente a esa URL cuando la tarea alcanza un estado terminal. En esa versión, la ruta del webhook validaba solo el esquema de la URL y no rechazaba destinos de bucle invertido, privados, de enlace local u otros no públicos. Debido a que la implementación v0.8.3 también utilizaba el comportamiento predeterminado del cliente HTTP, se seguían las redirecciones y el destino no estaba fijado a IPs validadas. Esto permitía SSRF ciego desde el servidor PinchTab a objetivos HTTP(S) elegidos por el atacante accesibles desde el servidor. Este problema es más limitado que un SSRF general no autenticado y expuesto a internet. El programador es opcional y está desactivado por defecto, y en implementaciones protegidas por token el atacante ya debe ser capaz de enviar tareas utilizando el token maestro de la API del servidor. En el modelo de implementación previsto de PinchTab, ese token representa control administrativo en lugar de un rol de bajo privilegio. Las implementaciones sin token reducen aún más la barrera, pero eso es un estado de configuración inseguro separado en lugar del impacto creado por el propio error del webhook. El modelo de implementación predeterminado de PinchTab es local-first y controlado por el usuario, con enlace de bucle invertido y acceso basado en token en la configuración recomendada. Eso reduce el riesgo práctico en el uso predeterminado, aunque no elimina el problema subyacente del webhook cuando el programador está habilitado y es accesible. Esto se abordó en la v0.8.4 validando los objetivos de callback antes del envío, rechazando rangos de IP no públicos, fijando la entrega a IPs validadas, deshabilitando el seguimiento de redirecciones y validando 'callbackUrl' durante el envío de tareas.

Publication Date March 27, 2026, 6:17 a.m.
Registration Date April 27, 2026, 12:20 p.m.
Last Update April 22, 2026, 10:55 p.m.
Affected software configurations
Configuration1 or higher or less more than less than
cpe:2.3:a:pinchtab:pinchtab:*:*:*:*:*:*:*:* 0.8.4
Related information, measures and tools
Common Vulnerabilities List