Security

SQLインジェクション対策 by IPA「安全なウェブサイトの作り方 第7版」

投稿日:2015年4月16日 更新日:

22724469359_e9915d0da4_b

photo credit: Injection, Inject via photopin (license)

安全なウェブサイトの作り方:IPA 独立行政法人 情報処理推進機構の、「SQLインジェクション」から一部抜粋する。(この資料はPDFでしか提供されていない)

注意が必要なウェブサイトの特徴

SQLインジェクションの脆弱性があるウェブアプリケーション運営主体やウェブサイトの性質を問わず、データベースを利用するウェブアプリケーションを設置しているウェブサイトに存在しうる問題です。個人情報等の重要情報をデータベースに格納しているウェブサイトは、特に注意が必要です。

根本的解決

  • (i)-a SQL文の組み立ては全てプレースホルダで実装する。
  • (i)-b SQL文の組み立てを文字列連結により行う場合は、エスケープ処理等を行うデータベースエンジンのAPIを用いて、SQL文のリテラルを正しく構成する。
  • (ii) ウェブアプリケーションに渡されるパラメータにSQL文を直接指定しない。

保険的対策

  • (iii) エラーメッセージをそのままブラウザに表示しない。
  • (iv) データベースアカウントに適切な権限を与える。

関連CWE

参考URL

📂-Security
-

執筆者:labo


comment

メールアドレスが公開されることはありません。

関連記事

Web Security

CSP (Contents Security Policy) の記述例

目次記述例メモその他のメモ参考 記述例 デフォルト設定の記述をする(HTTPレスポンスヘッダの出力)。 同一オリジンも含めて全てのソース1からの読み込みを禁止する場合 Content-Security …

セキュリティ

GnuPGでファイルを暗号化・復号する手順

USBメモリにデータを入れて持ち運ぶ場合、なんの対策もしていないと「USBメモリの紛失」がそのまま「データ流出」につながります。これを防ぐ1つ方法は、予めファイルを暗号化した状態で保存しておくことです …

セキュリティ

Android で MD5 や SHA1 のハッシュ値をチェックする方法

追記 2021年, 気がつくと MD5 Checker は Google Play Store からなくなっていました。 目次1. はじめに2. 利用するアプリのインストール3. MD5 Checke …

Web Security

CSP Level 3 で Strict CSP を利用する

CSP Level 3 で Strict CSP を利用する方法について説明します。

Web Security

PHPのセキュリティ対策

PHP を安全に使うため、気を付けるべきポイントについて書いています。 目次1. ユーザーによる入力値の検証2. クロスサイトスクリプティング(XSS)対策1) HTML テキストの入力を許可しない場 …