タグ

SQLとsecurityに関するWatsonのブックマーク (16)

  • websec-room.com - websec room リソースおよび情報

    This webpage was generated by the domain owner using Sedo Domain Parking. Disclaimer: Sedo maintains no relationship with third party advertisers. Reference to any specific service or trade mark is not controlled by Sedo nor does it constitute or imply its association, endorsement or recommendation.

    websec-room.com - websec room リソースおよび情報
  • 自己流のSQLインジェクション対策は危険

    HTMLエスケープの対象となる < > & " の4文字は、文字実体参照に変換された後、preg_replace関数でセミコロンを削除してしまうので、中途半端な妙な文字化けになりそうです。 一般的な原則としては、データベースにはHTMLの形ではなくプレーンテキストの形で保存しておき、HTMLとして表示する直前にHTMLエスケープする方法で統一することで、上記のような文字化けやエスケープ漏れをなくすことがよいでしょう。 脆弱性はないのか このsanitize関数に脆弱性はないでしょうか。上表のように、バックスラッシュ(円記号)を素通ししているので、MySQLや、設定によってはPostgreSQLの場合に、問題が生じそうです。以下、それを説明します。以下の説明では、MySQLを使う想定とします。 以下のように、ログイン処理を想定したSQL文組立があったとします。 $sql = sprintf(

  • 書式文字列によるSQLインジェクション攻撃例

    以下のようなコードがあり、nameは画面入力なのでSQLインジェクションが起こるのでは? と作成者に確認したところ、"%s"してあるから大丈夫との返事をもらいました。 ネット調べるとmysql_real_escape_stringでエスケープしてから"%s"で変換すれば大丈夫といった内容は見つけたのですが、mysql_real_escape_stringなど不要との返事をもらいました。 なぜ?と聞くとそういうものだとしか回答がありません。 ひどいですね。これは質問者が正しく、sprintfの%sで受けただけでは、SQLインジェクション脆弱性となります。 しかし、どうしてこのような間違った知識が出てきたのかと考えるに、数値を%dで受ける場合と混乱したのではないかと憶測しました。数値の場合、書式%dで受けていれば、仮に攻撃コードが入力されたとしても、%dで整数に強制変換されるので、SQLインジ

  • SQLインジェクションについてのスライドを作成した - Kentaro Kuribayashi's blog

    社内で、SQLインジェクションについてあらためて原理・原則から議論したいねという風潮がにわかに起こったので、ひとまずは叩き台として僕の方でまとめて皆で議論しましょうというわけで、以下のような資料を作成した。 社内勉強会用の資料なのだけど、僕は別にセキュリティに詳しいわけでもないし、ましてやPHPのことは素人なので、外部の識者にレビューしていただいて、できるだけ正しい知識に基づいて議論できればと思い、まずスライドを先行公開することにした。そうしたところ、Twitter上で多数の識者よりいろいろとご指摘いただいて、少くとも決定的におかしな内容にはなっていないものになったようだ。ありがとうございます。 僕らの職務のひとつに「セキュリティ関連」というものも謳われているので、そのあたりの知識普及・基盤整備についても、仕事のひとつとして行っている。先にも書いた通り、僕自身がその点についてよく理解できて

    SQLインジェクションについてのスライドを作成した - Kentaro Kuribayashi's blog
  • SQL Injection Pocket Reference

    このブラウザ バージョンのサポートは終了しました。サポートされているブラウザにアップグレードしてください。

    SQL Injection Pocket Reference
  • 第42回 PostgreSQL 9.0に見るSQLインジェクション対策 | gihyo.jp

    PostgrSQL 9.0から追加されたエスケープ関数から、SQLインジェクション対策を再度解説してみたいと思います。 SQLインジェクション対策の4原則 基的にはSQLインジェクション対策として以下の原則を守っていれば、SQLインジェクションに脆弱なアプリケーションを作ることはありません。 すべてのパラメータを文字列としてエスケープする すべてのパラメータをプリペアードクエリのパラメータとして処理する 文字エンコーディングの設定をAPIで行う パラメータとして処理できない文字列はバリデーションを行う 原則1と原則2は重複して適用する必要はありません。どちらかを行います。文字エンコーディングの設定やプリペアードクエリのエミュレーション・抽象化ライブラリのバグ等でSQLインジェクションが可能になる場合もありますが、通常であればこの原則を守っている限りSQLインジェクション脆弱性を作ることは

    第42回 PostgreSQL 9.0に見るSQLインジェクション対策 | gihyo.jp
  • 大規模なSQLインジェクション攻撃発生、iTunesのURLにも有害コード

    Websenseによると、22万6000以上のURLに有害なコードが挿入されているのが見つかった。この中にはiTunesのURLも複数あったという。 セキュリティ企業の米Websenseは、Webサイトに有害なコードを挿入する「SQLインジェクション攻撃」が多数のURLに対して仕掛けられているのを見つけたと伝えた。同社がこれまでに検出した中では最大級の攻撃だといい、問題のコードはAppleiTunesのURLからも見つかったとしている。 Websenseによると、問題のコードには「LizaMoon」というWebサイトへのリンクが仕込まれ、JavaScriptを使ってユーザーを偽ウイルス対策ソフトの配布サイトにリダイレクトする仕掛けになっていた。現時点でこのWebサイトはアクセスできない状態だが、いつ状況が変わるかは分からないとしている。 Googleで検索したところ、米国時間の3月29日

    大規模なSQLインジェクション攻撃発生、iTunesのURLにも有害コード
  • 今夜こそわかる安全なSQLの呼び出し方 ~ 高木浩光氏に聞いてみた

    「安全なSQLの呼び出し方」というSQLセキュリティに焦点を当てたドキュメントが、2010年3月にIPA(独立行政法人情報処理推進機構)から公開された。 これは2006年1月から提供されている、Webサイト開発者や運営者向けのセキュアWebサイト構築のための資料「安全なウェブサイトの作り方」の別冊として書かれたものである。「安全なウェブサイトの作り方」が92ページなのに対して、SQLインジェクションについてだけで40ページもの分量がある。なぜこんなに分厚いのだろうか。 このドキュメント作成に協力したという、独立行政法人産業技術総合研究所 情報セキュリティ研究センターの高木浩光氏にお話を伺うことができた。高木氏は個人ブログ「高木浩光@自宅の日記」で、セキュリティ関連の問題を追求する論客としても知られている。筆者も以前、この連載の「今夜わかるSQLインジェクション対策」の回(2006年11月

    今夜こそわかる安全なSQLの呼び出し方 ~ 高木浩光氏に聞いてみた
  • IISを狙った大規模なSQLインジェクション攻撃発生中 | スラド セキュリティ

    やや旧聞となるが、IISを狙った大規模なSQLインジェクション攻撃が発生しているとのこと。すでに数万のサイトが攻撃されており、The Wall Street Journalなど有名サイトも攻撃を受けているそうだ。IISおよびASP.netを使用している管理者の皆様はご注意を。

  • 第29回 SQLインジェクションの復習 | gihyo.jp

    セキュリティは古くて新しい問題です。SQLインジェクションも古くからある問題ですが現在の問題です。対策は比較的簡単なのですが今でもなくなりません。と言うよりも今でも現役のセキュリティ上の問題で十分注意が必要です。この連載でも何度かSQLインジェクション対策について簡単に取り上げています。 第5回 まだまだ残っているSQLインジェクション 第14回 減らないSQLインジェクション脆弱性 第15回 減らないSQLインジェクション脆弱性(解答編) 第24回 無くならないSQLインジェクション脆弱性 今回はSQLインジェクションを復習してみたいと思います。 SQLインジェクションとは SQLインジェクションはプログラマが意図しないSQL文を実行させる攻撃で、2種類の攻撃方法に分類できます。 直接SQLインジェクション 間接SQLインジェクション 直接SQLインジェクション 直接SQLインジェクショ

    第29回 SQLインジェクションの復習 | gihyo.jp
  • IPA、言語とDB別にSQLインジェクション攻撃に対する防御策を公開 | エンタープライズ | マイコミジャーナル

    IPA(独立行政法人情報処理推進機構)は3月18日、SQLインジェクション攻撃からWebサイトを防御するための対策として、Webアプリケーションの安全な実装方法を解説した資料「安全なSQLの呼び出し方」を公開した。 IPAは、無償で公開しているSQLインジェクション検出ツール「iLogScanner」で脆弱性対策情報データベース「JVN iPedia」のアクセスログを解析している。その結果、Webサイトを狙ったと思われる攻撃のうち、SQLインジェクション攻撃が全体の45%、Webサーバのパスワードファイルや環境設定ファイルの情報を狙ったディレクトリ・トラバーサル攻撃が38%を占めていることがわかった。 SQLインジェクション検出ツール「iLogScanner」による脆弱性対策情報データベース「JVN iPedia」の解析結果 資料:IPA SQLインジェクション攻撃が成功した場合、Webサ

  • 安全な実装方法を解説、IPAが「安全なSQLの呼び出し方」公開 

  • SQLインジェクションとは何か?その正体とクラッキング対策。

    世間では、今Gumblar祭りが勃発中であり、SQLインジェクションがニュースに出てくることは少なくなったが、だからと言ってSQLインジェクションの脅威がなくなったわけではない。SQLインジェクションはGumblarを仕掛ける手段としても利用されることがあり、Webアプリケーションを提供する全ての人にとって、対策を講じなければいけない驚異であることに変わりはない。SQLインジェクションという攻撃手法が認識され、大いに悪用されているにも係わらず、その質に迫って解説している記事は少ないように思う。従来のWeb屋だけでなく、今やアプリケーション開発の主戦場はWebであると言っても過言ではなく、そういう意味ではSQLインジェクションについて理解することは、全てのプログラマにとっての嗜みであると言えるだろう。 というわけで、今日は改めてSQLインジェクションについて語ってみようと思う。 SQLイン

    SQLインジェクションとは何か?その正体とクラッキング対策。
  • ニッチー・ブラックモア

    このブログについて - ニッチ過ぎて殆どの人にはどうでもいいけど、マッチした人にはすごく便利or共感される。そんな事ばかり書いてあります。

  • IPA、急増するSQLインジェクション攻撃に対し注意喚起

    独立行政法人 情報処理推進機構(IPA)は5月15日、SQLインジェクション攻撃が急増していることを受け、ウェブサイト管理者などへ注意喚起した。 SQLインジェクション攻撃を受けた場合、データベースに蓄積された情報が漏えい、改ざん、不正操作などをされる恐れがある。このため、データベースを利用しているウェブサイトの運営者は、SQLインジェクション攻撃によりウェブサイトに被害が発生していないか、またウェブサーバのアクセスログを常に調査し、攻撃があった場合は、データベースに認知していないリンクが含まれていないかを確認する必要があるとしている。また、ウェブサイトの脆弱性検査をし、脆弱性対策を講ずることも求めている。 IPAでは、SQLインジェクション攻撃への対策をまとめた資料「安全なウェブサイトの作り方」を公開している。また、SQLインジェクション脆弱性を検出するツール「iLogScanner」を

    IPA、急増するSQLインジェクション攻撃に対し注意喚起
  • IPA、SQLインジェクションの簡易検出ツールを公開

    情報処理推進機構(IPA)は4月18日、WebサーバのアクセスログからSQLインジェクションの脆弱性を検出するツールを公開した。 公開したツールは「iLogScanner」。Webサーバのアクセスログを解析し、SQLインジェクション攻撃によく用いられる文字列を検出するもの。ログを解析することで、Webサイトがどれだけの攻撃を受けていたか、攻撃が成功したかを調べられる。簡易ツールのため問題が検出されない場合もあるという。 今後は、クロスサイトスクリプティングやOSコマンドインジェクションなどの脆弱性も検出できるようにしていく。 ツールは、IPAのWebサイトからダウンロードできる。 関連記事 Webサイトの脆弱性報告が目立った2008年第1四半期 IPAは、2008年第1四半期の脆弱性届出状況を発表した。 「セキュリティ対策を回避する攻撃が急増」――ラックのリポートから ラックは、2007年

    IPA、SQLインジェクションの簡易検出ツールを公開
  • 1