Fedora 28:php-zendframework-zend-diactoros(2018-4a606489ae)

high Nessus プラグイン ID 120396

Language:

概要

リモートのFedoraホストにセキュリティ更新プログラムがありません。

説明

## 1.8.4 - 2018-08-01

### 追加

- なし。

### 変更済み

- このリリースは、「ServerRequestFactory」がリクエストURIをマーシャリングする方法を変更します。以前のリリースでは、値がある場合はそれを使用して、「X-Rewrite-Url」と「X-Original-Url」のヘッダーの検査を試みていました。これらのヘッダーは、IIS用のISAPI_Rewriteモジュール(HeliconTechにより開発)によって発行されます。ただし、モジュールがヘッダーを発行したものであることを保証する方法がないため、URIを発見するための信頼できないソースとなっています。このため、Diactorosのこのリリースで、この機能を削除しました。

ミドルウェアアプリケーションを開発している場合は、次のようにミドルウェアで機能をまねることができます:

``` use Psr\Http\Message\ResponseInterface; use Psr\Http\Message\ServerRequestInterface; use Psr\Http\Server\RequestHandlerInterface; use Zend\Diactoros\Uri;

public function process(ServerRequestInterface $request, RequestHandlerInterface $handler) : ResponseInterface { $requestUri = null;

$httpXRewriteUrl = $request->getHeaderLine('X-Rewrite-Url'); if ($httpXRewriteUrl !== null) { $requestUri = $httpXRewriteUrl; }

$httpXOriginalUrl = $request->getHeaderLine('X-Original-Url'); if ($httpXOriginalUrl !== null) { $requestUri = $httpXOriginalUrl; }

if ($requestUri !== null) { $request = $request->withUri(new Uri($requestUri)); }

return $handler->handle($request); } ```

上記のようなミドルウェアを使用する場合、ISAPI_Rewriteモジュールによって発行されることを保証できるように、必ず同じ名前の受信ヘッダーを除去するようにWebサーバーにも指示してください。

### 廃止

- なし。

### 削除済み

- なし。

### 修正済み

- なし。

## 1.8.3 - 2018-07-24

### 追加

- なし。

### 変更済み

- なし。

### 廃止

- なし。

### 削除済み

- なし。

### 修正済み

- [#321](https://github.com/zendframework/zend-diactoros/pull/321)は、「Uri: : withPort()」のロジックを更新して、提供された値が整数または文字列整数であることをチェックするようにします。それは、これらの値のみがデータ損失なしに整数にキャストされる可能性があるためです。

- [#320](https://github.com/zendframework/zend-diactoros/pull/320)は、提供された理由句が文字列であることを保証するために、「Response」内にチェックを追加します。そうでない場合は「InvalidArgumentException」が発生するようになります。
この変更により、クラスがPSR-7仕様に厳格に準拠するようになります。

- [#319](https://github.com/zendframework/zend-diactoros/pull/319)は、「Zend\Diactoros\Response」に対する修正を提供します。この修正では、返されるステータスコードが必ず整数であることを保証します(整数を含む文字列は決して保証しません)。これにより、 PSR-7仕様に厳格に準拠するようになります。

## 1.8.2 - 2018-07-19

### 追加

- なし。

### 変更済み

- なし。

### 廃止

- なし。

### 削除済み

- なし。

### 修正済み

- [#318](https://github.com/zendframework/zend-diactoros/pull/318)は、ヘッダーとSAPIの値を比較する際に、HTTPSスキームが機能しているかどうかを発見するロジックを修正し、偽の負の検索が発生しないようにします。

- [#314](https://github.com/zendframework/zend-diactoros/pull/314)は、「Zend\Diactoros\Stream: : setStream()」内のファイルリソースを開くことに関するエラー処理を変更し、「set_error_handler()」の2番目の引数を使用しなくなります。代わりにハンドラー自体のエラータイプをチェックします。これにより、現在PHPエンジン内でバグのある動作がある、別のエラーハンドラー内にハンドラーがネストされる問題が修正されます。

## 1.8.1 - 2018-07-09

### 追加

- なし。

### 変更済み

- [#313](https://github.com/zendframework/zend-diactoros/pull/313)は、ステータスコード425に関連する理由句を「早すぎる」に変更します。これは、IANAが指定するコードの新しい定義に対応しています。

### 廃止

- なし。

### 削除済み

- なし。

### 修正済み

- [#312](https://github.com/zendframework/zend-diactoros/pull/312)ユーティリティ関数「normalizeUploadedFiles()」が、アップロードされたファイルのネスト化されたツリーを処理する方法を修正し、それらを適切に検出するようにします。

## 1.8.0 - 2018-06-27

### 追加

- [#307](https://github.com/zendframework/zend-diactoros/pull/307)が、以下の関数を「Zend\Diactoros」名前空間に追加します。それぞれの関数を使用して、「ServerRequest」インスタンスを生成する目的で、SAPIスーパーグロブスからアーティファクトを派生させることができます:

- 「normalizeServer(array $server, callable $apacheRequestHeaderCallback = null) : 配列」(主な目的は、ApacheのもとでSAPIパラメーターにある「Authorization」ヘッダーを集約することです)

- 「marshalProtocolVersionFromSapi(array $server) : 文字列」

- 「marshalMethodFromSapi(array $server) : 文字列」

- 「marshalUriFromSapi(array $server, array $headers) :
Uri」

- `marshalHeadersFromSapi(array $server) : 配列」

- 「parseCookieHeader(string $header) : 配列」

- 「createUploadedFile(array $spec) : UploadedFile」(通常の「$_FILES」エントリからインスタンスを作成)

- 「normalizeUploadedFiles(array $files) :
UploadedFileInterface[]」(アップロードされたファイルインスタンスのネスト化された可能性のある配列、および/または「$_FILES」エントリをトラバースします。これには、リクエストで使用する「UploadedFileInterface」インスタンスのフラット配列を作成するためのmod_php、php-fpm、およびphp-cgiが含まれます)

### 変更済み

- なし。

### 廃止

- [#307](https://github.com/zendframework/zend-diactoros/pull/307)は、「ServerRequestFactory: : normalizeServer()」を廃止します。メソッドは内部で使用されなくなり、ユーザーは代わりにプロキシの「Zend\Diactoros ormalizeServer()」を使用する必要があります。

- [#307](https://github.com/zendframework/zend-diactoros/pull/307)は、「ServerRequestFactory: : normalizeServer()」を廃止します。メソッドは内部で使用されなくなり、ユーザーは代わりにプロキシの「Zend\Diactoros\marshalHeadersFromSapi()」を使用する必要があります。

- [#307](https://github.com/zendframework/zend-diactoros/pull/307)は、「ServerRequestFactory: : marshalUriFromServer()」を廃止します。メソッドは内部で使用されなくなりました。ユーザーは代わりに「marshalUriFromSapi()」を使用する必要があります。

- [#307](https://github.com/zendframework/zend-diactoros/pull/307)は、「ServerRequestFactory: : marshalRequestUri()」を廃止します。メソッドは内部で使用されなくなり、現在は「marshalUriFromSapi()」のプロキシとなり、発見されたパスをその関数によって返される「Uri」インスタンスから取得します。ユーザーは代わりに「marshalUriFromSapi()」を使用する必要があります。

- [#307](https://github.com/zendframework/zend-diactoros/pull/307)は、「ServerRequestFactory: : marshalHostAndPortFromHeaders()」を廃止します。
メソッドは内部で使用されなくなり、現在は「marshalUriFromSapi()」のプロキシとなり、発見されたホストとポートをその関数によって返される「Uri」インスタンスから取得します。ユーザーは代わりに「marshalUriFromSapi()」を使用する必要があります。

- [#307](https://github.com/zendframework/zend-diactoros/pull/307)は、「ServerRequestFactory: : getHeader()」を廃止します。
メソッドは内部で使用されなくなりました。ユーザーは、必要に応じて機能をコピーして独自のアプリケーションに貼り付けるか、代わりに完全に読み込まれた「Uri」インスタンスからのヘッダーに依存する必要があります。

- [#307](https://github.com/zendframework/zend-diactoros/pull/307)は、「ServerRequestFactory: : stripQueryString()」を廃止します。メソッドは内部で使用されなくなり、ユーザーは式「$path = explode('?', $path, 2)[0];」を介して機能を偽装できます。

- [#307](https://github.com/zendframework/zend-diactoros/pull/307)は、「ServerRequestFactory: : normalizeFiles()」を廃止します。この機能は内部で使用されなくなり、ユーザーは代わりに「normalizeUploadedFiles()」を使用できます。

- [#303](https://github.com/zendframework/zend-diactoros/pull/303)は、「Zend\Diactoros\Response\EmitterInterface」とそのさまざまな実装を廃止します。これらは、1:1の代替として[zendframework / zend-httphandlerrunner](https://docs.zendframework.com/zend-httphandlerrunner)パッケージを通じて提供されるようになりました。

- [#303](https://github.com/zendframework/zend-diactoros/pull/303)は、「Zend\Diactoros\Server」クラスを廃止します。
代替手段として、ユーザーは[zendframework/zend-httphandlerrunner](https://docs.zendframework.com/zend-httphandlerrunner)パッケージからの「RequestHandlerRunner」クラスに誘導されます。

### 削除済み

- なし。

### 修正済み

- なし。

注意:Tenable Network Securityは、前述の記述ブロックをFedora更新システムのWebサイトから直接抽出しています。
Tenableでは、新たな問題を持ち込まずに、できる限り自動的に整理して書式設定するようにしています。

ソリューション

影響を受けるphp-zendframework-zend-diactorosパッケージを更新してください。

参考資料

https://bodhi.fedoraproject.org/updates/FEDORA-2018-4a606489ae

https://docs.zendframework.com/zend-httphandlerrunner/

https://github.com/zendframework/zend-diactoros/pull/303

https://github.com/zendframework/zend-diactoros/pull/307

https://github.com/zendframework/zend-diactoros/pull/312

https://github.com/zendframework/zend-diactoros/pull/313

https://github.com/zendframework/zend-diactoros/pull/314

https://github.com/zendframework/zend-diactoros/pull/318

https://github.com/zendframework/zend-diactoros/pull/319

https://github.com/zendframework/zend-diactoros/pull/320

https://github.com/zendframework/zend-diactoros/pull/321

プラグインの詳細

深刻度: High

ID: 120396

ファイル名: fedora_2018-4a606489ae.nasl

バージョン: 1.5

タイプ: local

エージェント: unix

公開日: 2019/1/3

更新日: 2021/1/6

サポートされているセンサー: Frictionless Assessment Agent, Nessus Agent, Agentless Assessment, Continuous Assessment, Nessus

脆弱性情報

CPE: p-cpe:/a:fedoraproject:fedora:php-zendframework-zend-diactoros, cpe:/o:fedoraproject:fedora:28

必要な KB アイテム: Host/local_checks_enabled, Host/RedHat/release, Host/RedHat/rpm-list

パッチ公開日: 2018/8/14

脆弱性公開日: 2018/8/14

参照情報