概要
リモートのDebianホストに1つまたは複数のセキュリティ関連の更新プログラムがありません。
説明
リモートの Debian 9 ホストには、dla-3000 のアドバイザリに記載された複数の脆弱性の影響を受けるパッケージがインストールされています。
- バージョン 1.3.1までの Waitress は RFC7230の MAY 部分を実装し、次のように述べています: start-line およびヘッダーフィールドの行終端子は CRLF シーケンスですが、受信者の MAY は単一の LF を行終端子として認識し、先行する CR を無視します。残念ながら、フロントエンドサーバーが CRLF のヘッダーフィールドと同じ方法で LF のヘッダーフィールドを解析しない場合、フロントエンドサーバーとバックエンドサーバーが 2 つの異なる方法で同じ HTTP メッセージを解析する可能性があります。これにより、HTTP リクエストスマグリング/スプリットが発生する可能性があります。これにより、フロントエンドサーバーが単一の HTTP メッセージのみを表示しているにもかかわらず、Waitres が 2 つのリクエストを表示する可能性があります。この問題は Waitress 1.4.0で修正されています。(CVE-2019-16785)
- バージョン 1.3.1までの Waitress は、Transfer-Encoding ヘッダーを解析し、単一の文字列値のみを検索します。その値がチャンクされていない場合、その文字列は通過し、代わりに Content-Length ヘッダーを使用します。
HTTP の標準によると、Transfer-Encoding はコンマ区切りのリストであり、最も内側のエンコーディングが最初で、その後に転送コーディングが続き、チャンクで終了する必要があります。送信したリクエスト:
Transfer-Encoding: gzip、chunked が誤って無視され、リクエストが HTTP メッセージの本文サイズを決定する代わりに Content-Length ヘッダーを使用します。: これにより、Waitress が HTTP パイプラインの場合に単一のリクエストを複数のリクエストとして処理する可能性があります。この問題は Waitress 1.4.0で修正されています。(CVE-2019-16786)
バージョン 1.4.0までの Waitress では、waitress の前でプロキシサーバーが使用される場合、フロントエンドを回避して waitress によって異なる方法で解析される無効なリクエストが攻撃者によって送信されて、HTTP リクエストスマグリングが発生する可能性があります。Transfer-Encodingヘッダーに特別な空白文字を含むように特別に細工されたリクエストが、Waitressによってチャンクリクエストとして解析されるものの、無効な文字が含まれるTransfer-Encodingヘッダーが無効と見なされて、代わりにContent-Lengthがフロントエンドサーバーによって使用される可能性があります。フロントエンドサーバーがバックエンドの waitress サーバーに対する HTTP パイプライン処理を実行する場合、これが HTTP リクエストを分割することになり、キャッシュポイズニングまたは予期しない情報漏洩が発生する可能性があります。この問題は、より厳密な HTTP フィールドの検証により、Waitress 1.4.1で修正されました。
(CVE-2019-16789)
- バージョン 1.3.1までの Waitress では、Content-Length ヘッダーを2回送信することによる HTTP リクエストスマグリングが発生します。
Waitress は、二重の Content-Length ヘッダーを折り返すため、コンマ区切りの値を整数にキャストできないため、Content-Length を内部で 0 に設定します。2 つの Content-Length ヘッダーが単一のリクエストで送信された場合、Waitres はリクエストに本文がないものとして処理し、リクエストの本文を HTTP パイプライン処理の新しいリクエストとして処理します。この問題は Waitress 1.4.0で修正されています。
(CVE-2019-16792)
- Waitress は、Python 2 および 3 用の Web Server Gateway Interface サーバーです。着信 HTTP リクエストが RFC7230標準と一致することを適切に検証しないプロキシの背後で Waitress バージョン 2.1.0以前を使用すると、Waitress およびフロントエンドプロキシは、リクエストの開始点と終了点について一致しない可能性があります。これにより、リクエストがフロントエンドプロキシを介してウェイトレスにスマグリングされ、その後の動作が可能になります。リクエストのスマグリングを引き起こす可能性がある 2 つのクラスの脆弱性があり、このアドバイザリで対処されています。文字列を整数に解析するための Python の「int()」の使用により、「+ 10」は「10」として解析され、「0x01」は「1」として解析されます。ここでは、標準として、文字列は数字または16進数のみでなければなりません。
さらに、Waitress はチャンク拡張をサポートしていませんが、不正な文字が含まれていないことを検証せずにそれらを破棄していました。この脆弱性は Waitress 2.1.1でパッチが適用されています。回避策が利用可能です。waitress の前にプロキシを展開する場合、すべての機能をオンにして、リクエストが RFC7230標準に一致することを確認します。ただし、特定のプロキシサーバーにはこの機能がない場合があるため、代わりに最新バージョンの waitres にアップグレードすることが推奨されます。
(CVE-2022-24761)
Nessus はこれらの問題をテストしておらず、代わりにアプリケーションの自己報告されたバージョン番号にのみ依存しています。
ソリューション
waitress パッケージをアップグレードしてください。
Debian 9 'Stretch'では、これらの問題はバージョン1.0.1-1+deb9u1で修正されています。
プラグインの詳細
ファイル名: debian_DLA-3000.nasl
エージェント: unix
サポートされているセンサー: Agentless Assessment, Frictionless Assessment Agent, Nessus Agent, Nessus
リスク情報
ベクトル: CVSS2#AV:N/AC:L/Au:N/C:P/I:P/A:N
ベクトル: CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:H/A:N
現状ベクトル: CVSS:3.0/E:F/RL:O/RC:C
脆弱性情報
CPE: p-cpe:/a:debian:debian_linux:python-waitress, p-cpe:/a:debian:debian_linux:python-waitress-doc, p-cpe:/a:debian:debian_linux:python3-waitress, cpe:/o:debian:debian_linux:9.0
必要な KB アイテム: Host/local_checks_enabled, Host/Debian/release, Host/Debian/dpkg-l
エクスプロイトの容易さ: Exploits are available