- blogs:
- cles::blog
« マップMEMO :: ウィルキンソン ドライコーラ »
2011/08/15

phpMyAdmin の脆弱性と parse_str


ockeghem(徳丸浩)の日記で見つけたphpMyAdminの脆弱性が興味深かったのでメモ。これを読む限りではやっぱり phpMyAdmin は不特定多数の人がアクセスできるところに置かない方がいいということになるのでしょうね。実はこのサーバにも phpMyAdmin は置いてあるにはあるのですが、SSL+BASIC認証がかけてあって僕以外はアクセスできないようになっています。
phpMyAdminにおける任意スクリプト実行可能な脆弱性の検証 - ockeghem(徳丸浩)の日記
phpMyAdminのスクリプト実行の脆弱性(CVE-2011-2505、CVE-2011-2506)について報告しました。
私がこの脆弱性に関心をもったきっかけは、スクリプトが実行される脆弱性とはどのようなものなのだろうという興味からでした。もちろん、ファイルインクルードとか、evalインジェクション、あるいはアップローダの脆弱性など、任意スクリプトが実行できる脆弱性はいくつかあるわけですが、phpMyAdminの脆弱性はどれでもないように思えたからです。
今回のポイントは parse_str でSESSION変数が汚染できるということでしょうか。あまり使ったことない関数だなと思って調べてみたら extract と同じくregister_globalsの時代の残骸みたいなものなので、あまりオススメされない関数みたいです。ちなみにextractの方は下記のように汚染されているデータには使ってはいけないと大きく警告が表記されているので分かりやすいのですが、こちらには何も書いていないというのも要注意なところかもしれません。
警告
extract() をユーザー入力 ($_GET や $_FILES など) のような信頼できないデータについて使用しないでください。 もし行う場合、例えば register_globals を信頼しているような古いコードを一時的に実行したい場合、 EXTR_SKIP のような extract_type の値が上書きされていないことを確認してください。そして php.ini の variables_order で定義されたものと同じ順で展開すべきであることに留意してください。
トラックバックについて
Trackback URL:
お気軽にどうぞ。トラックバック前にポリシーをお読みください。[policy]
このエントリへのTrackbackにはこのURLが必要です→https://blog.cles.jp/item/4391
Trackbacks
このエントリにトラックバックはありません
Comments
愛のあるツッコミをお気軽にどうぞ。[policy]
古いエントリについてはコメント制御しているため、即時に反映されないことがあります。
古いエントリについてはコメント制御しているため、即時に反映されないことがあります。
コメントはありません
Comments Form
コメントは承認後の表示となります。
OpenIDでログインすると、即時に公開されます。
OpenID を使ってログインすることができます。
« マップMEMO :: ウィルキンソン ドライコーラ »
サイト内検索
検索ワードランキング
へぇが多いエントリ
閲覧数が多いエントリ
1 . アーロンチェアのポスチャーフィットを修理(112056)
2 . 福岡銀がデマの投稿者への刑事告訴を検討中(110685)
3 . 年次の人間ドックへ(110308)
4 . 2023 年分の確定申告完了!(1つめ)(109857)
5 . 三菱鉛筆がラミーを買収(109758)
2 . 福岡銀がデマの投稿者への刑事告訴を検討中(110685)
3 . 年次の人間ドックへ(110308)
4 . 2023 年分の確定申告完了!(1つめ)(109857)
5 . 三菱鉛筆がラミーを買収(109758)
cles::blogについて
Referrers