タグ

ブックマーク / blog.ts5.me (4)

  • XMLをparseするアプリのセキュリティ - 2009-06-21 - T.Teradaの日記

    「XML」「セキュリティ」という単語でWeb検索すると、多くヒットするのはXMLデジタル署名やXML暗号などを説明したWebページです。 日の日記では、それとはちょっと違うテーマ(XXEと呼ばれる攻撃)について書きます。 脆弱なコードと攻撃方法 さっそく脆弱性があるサンプルプログラムです。 import java.io.*; import javax.servlet.*; import javax.servlet.http.*; import org.w3c.dom.*; import org.apache.xerces.parsers.*; import org.xml.sax.*; public class Test1 extends HttpServlet { public void service(HttpServletRequest request, HttpServletRe

    XMLをparseするアプリのセキュリティ - 2009-06-21 - T.Teradaの日記
  • 今更ながらmagic_quotes_gpcの欠点 - teracc’s blog

    今更ながらですが、PHPのmagic_quotes_gpcをOnにすべきでない理由を整理してみます。 世の中には、magic_quotes_gpcはOffにすべき、と書いた文章は多数あるのですが、その理由を(私が見る限りで)十分に説明しているものは無いからです。 以下では、 1. 対象外の変数の存在 2. 弊害(副作用) 3. エスケープの不完全さ という三つの観点から記述します。 対象外の変数の存在 magic_quotes_gpcの、「gpc」はGET/POST/COOKIEを表しています。つまり、この3種類のリソースからの入力はエスケープされますが、それ以外は原則エスケープされません。 エスケープされているもの、されていないものを、以下にまとめてみます。 エスケープ済み ・$REQUEST $_GET・$_POST・$_COOKIE 場合によってエスケープ済み ・$_SESSION

    今更ながらmagic_quotes_gpcの欠点 - teracc’s blog
    kamipo
    kamipo 2010/03/02
  • [セキュリティ]ImageFight2 - T.Teradaの日記

    先日の日記を見て頂いたようで、id:TAKESAKOさんがmod_imagefightをアップデートされていました。 ソースを見ると、height/widthがそれぞれ最大6000pixelに変更されていました。 むむむ・・・これは厳しい(今日は完全に攻撃者の視点になってます)。 しつこく試してみる 前回の日記で書いた攻撃方法のうち、最も攻撃コードが短いのは、<xmp>のパターンでした(これでも5Byteあります)。今のところ、これより短いものは思いつきません。 height/widthの制限が加わったことで、height/widthそれぞれ1Byte強しか使えない事になり、5Byteには全然足りません。 しかし、IHDRには他にも攻撃に使える部分が残されています。 攻撃PNGファイルの構造 IHDRチャンクを以下のようにします。 チャンク名称49 48 44 52I H D R イメージ

    [セキュリティ]ImageFight2 - T.Teradaの日記
  • [セキュリティ]ImageFight - T.Teradaの日記

    画像を用いたXSSとRFI対策のためのApache Moduleが出たようです。 LL魂お疲れ様でした[LLSpirit] | TAKESAKO @ Yet another Cybozu Labs もう夜遅いので、気づいた事を少しだけ書きます。 とりあえずは、PNGのXSS対策の部分についてだけ。 このプログラムは、IHDR領域の後にコメントを挿入する。 攻撃者は、IHDRのwidth/heightの合計8Byteに攻撃コードを挿入可能。 8Byte内に、xmpやtitleなどの開始タグを入れておけば、plaintextタグの効力を無効にできる。PLTEにxmpなどの終了タグとscriptタグを挿入することで攻略可能。 あるいは、8Byte内に「<a id=`」などを入れることで、コメントを属性値内に押し込めることができる(バッククォートを使っている)。 徳丸さんが日記で書いているように、

    [セキュリティ]ImageFight - T.Teradaの日記
  • 1