X

脆弱性

SSL暗号を無効化する仕組み – BREACH, CRIME, etc

CRIMEやBREACHといったSSL暗号を無効化する攻撃を知っている方は多いと思います。しかし、今ひとつその仕組みや攻撃方法は理解されていないようです。原理は簡単で、直ぐに理解できると思います。Webシステムに関わる方であれば、正しくBREACH攻撃の原理と対策を正確に理解しましょう。全く難しくありません。簡単です!

SSLでの圧縮の利用は禁止

他人のブログのコメントに書いて、自分のブログに書かないのも良くないので一応ここにも書いておきます。 「SSLでの圧縮の利用は禁止した方が安全」です。 (さらに…)

Sessionアダプション脆弱性の修正

やっとPHPのセッションアダプション脆弱性を修正するパッチとプルリクエストを作りました。議論は済んでいるのでパッチを検証、調整してマージするだけです。 PHPに限らず、未初期化のセッションIDを正規のセッションIDとして受け入れてしまうセッション管理機構があります。(Javaとか) サイトで稼働している全てのアプリが正しいセッション管理(ログイン後にセッショ…

セッションアダプションとセッションフィクセイションとセッションハイジャックの違いとは

徳丸さんがセッションアダプションをなくしても、セッションハイジャックが出来るのでsession_regenerate_id(true) (trueを付けると古いセッションデータは削除される)をしなければならないという記事を書かれています。 セッションアダプションがなくてもセッションフィクセイション攻撃は可能 http://tumblr.tokumaru.or…

PHPのStrict Sessionパッチ

のんびりしていた訳ではありませんが、PHP 5.4.1のブランチが作られたので慌ててStrict Sessionパッチを改訂しました。 masterhttps://gist.github.com/13796685.4https://gist.github.com/22241965.3https://gist.github.com/2224360 以前、Gis…

Git Hubの脆弱性とMass Asssignment

Git HubがMass Assignment脆弱性に脆弱で他のレポジトリが見れる状態だったらしい。問題は既に修正されています。 この脆弱性はRailsに限った事ではないし、古くからPHPを使っているユーザにとってはある意味懐かしい脆弱性でもあると思ったのでエントリを書いてみました。 (さらに…)

PHPのセッションアダプション脆弱性克服への道のり

PHP Advent Calender用のエントリです。 PHPのセッション管理は非常に簡単です。セッションをsession_start()で開始して$_SESSION配列を使うだけです。便利で簡単なセッションモジュールですがセッションアダプションに脆弱であるため、一般に言われてる「ログインする時にはsession_regenerate_id()を呼ぶ」コー…

PHPのSession Adoptionを修正するパッチ

パッチのテストのお願いです。 PHPerの長年の悩みの種であるセッションアダプションを修正するパッチをPHPに取り込めそうです。PHPのsubversionレポジトリのtrunkまたはPHP 5.4で利用できます。テストが終わったらPHPのレポジトリにコミットする予定です。(テスト期間は2011/11/22まで) パッチ https://gist.githu…

phpのescapeshellcmdの余計なお世話を無くすパッチ

徳丸さんのブログでescapeshellcmdの余計なお世話の件が指摘されていたのでパッチを作りました。これmagic quoteと同じレベルの余計なお世話なのですが放置されています。個人的にはどのような関数にも全てバリデーション済みの文字列しか渡さないのでセキュリティ問題は発生しないのですが、UNIX系OSではペアとなる"と'はエスケープしない仕様に気が付…

Rails+Ruby 1.9では不正な文字エンコーディング攻撃で脆弱にならない理由

Rails+Ruby 1.9では不正な文字エンコーディング攻撃で脆弱にならない理由を詳しく解説されたブログエントリをまっちゃさんのブログで知りました。 入力で特には何もしていない事は知っていたので、出力時のどこかで全体をチェックできるような仕組みになっているのでは?と思っていたのですが、ETagの値を生成するコードの正規表現で例外が発生する、という事だそうで…

PHP:既知のセキュリティ脆弱性 – Session Adoption

追記:より新しい情報については間違いだらけのHTTPセッション管理とその対策をどうぞ。 PHPには広く知られているにも関わらず放置されている既知のセキュリティ脆弱性が幾つかあります。その一つがセッションモジュールのセッションアダプション(Session Adoption)脆弱性です。この脆弱性は現在広く利用されているWebアプリケーションの安全性に、非常に大…

エンティティ化された文字による任意コード実行

小泉さんが発見され昨年末に公開された脆弱性です。詳しくはアドバイザリをご覧いただくとして概要を解説します。 CVE http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2008-5557 アドバイザリ [Full-disclosure] CVE-2008-5557 - PHP mbstring buffer…

現行版のPHPに任意メモリ参照バグ – 攻撃コード付き

随分前から共有型Webホスティングサービスでは安全性を確保できないので、安全性を重視するサイト(ECなど)は最低限でも仮想ホスト型の共有サービスを利用すべきである、と言っています。 今回のエントリはPHPをApacheモジュールで共有型ホスティングサービスを利用しているユーザに影響します。SSLを利用している場合は秘密鍵を盗まれます。このバグはPHP 5.2…

PHPのSessionモジュールの脆弱性

たまたま目に止まったブログがあるので紹介します。 PHP:session_set_save_handlerリファレンスマニュアルのサンプルにパス・トラバーサル脆弱性 http://www.tokumaru.org/d/20080818.html#p01 [php]session_set_save_handlerのパストラバーサルで任意コマンドの実行が可能 h…

PHP 4.4.8用のStrict Sessionパッチ

桝形さんから http://blog.ohgaki.net/php-5-2-strict-session  で公開したパッチのPHP4.4.8版を送っていただきました。私のWikiにも添付ファイルとして掲載させていただきました。 http://d.hatena.ne.jp/masugata/20080714#p2 に掲載されているパッチと同じパッチです。 私…