8

重複の可能性:
PHP/Python でバッファ オーバーフローを実行する方法は?

私がこれに入ったとき、私はこのチュートリアルを読んでいました:

バッファ オーバーフロー攻撃は、PHP アプリケーション内のメモリ割り当てバッファをオーバーフローさせようとします。さらに深刻なことには、Apache または基盤となるオペレーティング システム内でオーバーフローさせようとします。PHP のような高水準言語を使用して Web アプリケーションをコーディングしているかもしれませんが、最終的には C (Apache の場合) を呼び出して作業を行っていることを思い出してください。また、ほとんどの低水準言語と同様に、C にはメモリの割り当てに関する厳密な規則があります。

何?PHP が十分にエラー チェックされていることはわかっていたので、バッファ オーバーフローはあり得ませんでした。データフローが大きくなりすぎないように、ユーザー入力の長さを確認する必要がありますか? どうもありがとうございました

4

3 に答える 3

11

はい、そうです。現在の変更ログには、それに関連する15のバグ修正があります。

  • バグ#61807 apache_request_headers、CVE-2012-2329のバッファオーバーフローを修正しました。
  • crypt()のオーバーログソルトでのバッファオーバーフローを修正しました。(ClémentLECIGNE、Stas
  • バグ#60965を修正しました($ double=falseのhtmlspecialchars/entityでのバッファオーバーフロー)。
  • socket_connect()のスタックバッファオーバーフローを修正しました。(CVE-2011-1938)Mateusz Kocielski、Marek Kroemeke、FilipPalianによって発見されました。(フェリペ)
  • mysqlnd_list_fields、mysqlnd_change_userで発生する可能性があったバッファオーバーフローを修正しました。(アンドレイ)
  • mysqlndでエラーパケットを処理するときに発生する可能性があったバッファオーバーフローを修正しました。ステファンエッセーによる報告。(アンドレイ)
  • デチャンキングフィルターのバッファオーバーフローの可能性を修正しました。ステファンエッセーによる報告。(ピエール)
  • バグ#42862を修正しました(IMAPツールキットのクラッシュ:rfc822.cレガシールーチンのバッファオーバーフロー)。(CVE-2008-2829を修正)(ドミトリー)
  • FastCGISAPIで発生する可能性があったスタックバッファオーバーフローを修正しました。(アンドレイ・ニグマトゥリン)
  • fnmatch()、setlocale()、およびglob()関数のglibc実装内で発生する可能性があったバッファオーバーフローのトリガーを修正しました。LaurentGaffieによる報告。
  • バグ#42222を修正しました(php_openssl_make_REQでバッファオーバーフローが発生する可能性があります)。(ピエール)
  • make_http_soap_request()内のリモートでトリガー可能なバッファオーバーフローを修正しました。(イリア)
  • user_filter_factory_create()内のバッファオーバーフローを修正しました。(イリア)
  • バンドルされたlibxmlrpcライブラリ内のリモートでトリガー可能なバッファオーバーフローを修正しました。(スタス)
于 2012-08-05T15:24:28.187 に答える
2

もちろん、実際にC / C ++を使用して記述された関数(すべてのコア関数)を呼び出すときに発生する可能性があります。

PHPが提供するこれらの基本的な関数は、バッファオーバーフローなどのエラーがないかチェックされていると思いますが、カスタム拡張機能を使用する場合は確実にわかりません。

于 2012-08-05T15:26:25.720 に答える
0

確かにその「可能性」。私がもっと興味を持っている質問は、攻撃ベクトルがこれを行うことであると思いますか(アップキャッチされたphpバグなど)です。また、これは他のセキュリティ問題よりもエクスプロイトの標的になる可能性がはるかに低いと思います。

于 2012-08-05T15:27:37.170 に答える