SQLインジェクション(SQLの挿入)は,Webアプリケーションへの攻撃手法の一つです。Webサーバーに対して特殊なデータを送ることで,アプリケーション開発者が想定していないSQL文を実行させます。この攻撃に対する対策を怠ると,データベース内の情報を不正に取得されたり,削除されたりする危険性があります。 SQLインジェクションに対するぜい弱性は,クライアントから受け取ったデータをもとにしてデータベースへのアクセスを実行するSQL文を組み立てる個所で発生します。例えばアプリケーションのプログラム中に,SQL文で操作対象のレコードを絞り込むWHERE句を組み立てる“WHERE userid='$uid'”のようなコードが書かれているとします。プログラマは,変数$uidにはクライアントから受け取ったユーザーIDを格納することを想定しています。 ところが,悪意のあるユーザーが“' OR 1=1--”のようなデータをユーザーIDとして入力すると,プログラムが組み立てるWHERE句は“WHERE userid='' OR 1=1--'”となります。これはuseridが空か,あるいは1=1が成立するレコード,つまりすべてのレコードを対象とするという意味のWHERE句となります(“--”は行末までをコメントとして無視する)。そのため,WHERE句成立の条件下で行うSQL文のコマンドが無条件に実行されてしまいます。例えば,SELECTであればデータベース内の全レコードを読み出せてしまいます。 こうしたぜい弱性をなくすには,入力されたデータ(ここでは変数$uid)の中に,SQL文で特別な意味を持つ文字(ここではシングルクォート)が含まれていたら,SQL文を実行する前に,それを安全な文字に置き換える処理(エスケープ処理)をしておく必要があります。こうした処理を,サニタイジング(sanitizing,sanitize=無害にする)と呼ぶこともあります。 SQL文の組み立てに限らず,一般にユーザーが入力したデータをプログラム内に埋め込んで使用する際には,その用途に応じたエスケープ処理が必要です。例えば,データをWebページに埋め込む際には,Webページの記述で特別な意味を持つHTMLタグに使われる文字(“<”や“>”など)のエスケープ処理が必要です。 |
SQLインジェクション
あなたにお薦め
今日のピックアップ
-
個人情報保護委がOpenAIに注意喚起、学習データの要配慮個人情報利用で懸念
-
NTT東西で全国44.6万回線に及ぶ通信障害、特殊なパケットで未知のバグが発現
-
ChatGPTを使ってどこまで仕事を手抜きできるか、実際にやってみた
-
Microsoftは「副操縦士」でGoogleは「二重奏」、生成AIは人間の相棒になるか
-
触って試すChatGPT、懸賞金の懸かった問題は解ける?
-
話者を区別できる文字起こしツール「CLOVA Note」、キーワードも自動抽出
-
異常終了が心配ならOS標準の「チェック」機能、修復不可能ならフォーマット
-
「テンプレート対応のエンジニア」による硬直したプレゼン、克服のカギは?
-
メルカリがビットコイン取引で「パスキー」認証導入、アプリ全体への展開の鍵は
-
100均商品とはひと味違う? 「300円ショップ」で買えるデジタルガジェット6選
-
「OpenAIがすごいのは技術だけではない」、VCの目に映るブームの正体
-
MicrosoftとGoogleが生成AIで「陣取り合戦」、激戦地はここだ
注目記事
おすすめのセミナー
-
CIO養成講座 【第33期】
業種を問わず活用できる内容、また、幅広い年代・様々なキャリアを持つ男女ビジネスパーソンが参加し、...
-
部下との会話や会議・商談の精度を高める1on1実践講座
このセミナーには対話の精度を上げる演習が数多く散りばめられており、細かな認識差や誤解を解消して、...
-
目的思考のデータ活用術【第2期】
「ワンテーマだけでなくデータ活用のスタートから課題解決のゴールまで体系立てて学びたい」というニー...
-
生成AIを企業・組織で安全に利活用するための勘所
ChatGPTなど生成AIサービスを、自社・組織のスタッフに安全かつ積極的に活用させる立場の方を...
-
ITリーダー養成180日実践塾 【第13期】
8回のセミナーでリーダーに求められる“コアスキル”を身につけ、180日間に渡り、講師のサポートの...
-
IT法務リーダー養成講座
システム開発・運用に関するもめ事、紛争が後を絶ちません。それらの原因をたどっていくと、必ず契約上...
-
業務改革プロジェクトリーダー養成講座【第14期】
3日間の集中講義とワークショップで、事務改善と業務改革に必要な知識と手法が実践で即使えるノウハウ...
-
アンテナ設計で職人博士の極意を伝授
経験から得たアンテナ設計に必要な式や概念を絞り込み、基本的な線状アンテナと平面アンテナの設計方法...
注目のイベント
-
日経クロステックNEXT 関西 2023
6月8日(木)~6月9日(金)
-
ITイノベーターズ会議 製品・サービス強化とCX向上に効くデジタル変革の本質
2023年6月8日(木)13:00-17:30
-
WOMAN EXPO 2023
2023年6月10日(土)
-
【6月15日】ITインフラの運用管理を合理化、最新ツールの実力を60分で学ぶ
2023年6月15日
-
Digital Foresight Summer 2023
2023年6月15日(木)、6月20日(火)、6月22日(木)、7月4日(火)、7月6日(木)、7月11日(火)、7月13日(木)、7月18日(火)、7月20日(木)、7月25日(火)、7月27日(木)8月1日(火)、8月3日(木)16:00~17:00(予定)
-
SX/DX/GX Summit
2023年6月22日(木)~23日(金)
-
ローコード・ノーコード/超高速開発 セミナー 2023
2023年 6月 22 日(木) 10:00~16:30
-
Digital Back Office Summit 2023 Summer
2023年6月27日(火)13:00~17:00
-
日経クロステックNEXT 名古屋 2023
6/28~6/29
-
【6月28~29日】人々の移動を変革する新しい社会「モビリティ新時代」とは?
2023/6/28-2023/6/29
おすすめの書籍
-
IT職場のトラブル対処 決定版
人手不足に悩み、働き方改革の必要性が問われるIT企業。ホワイト職場になるために解消すべき身近な職...
-
実践!ウェルビーイング 世界最強メソッド「ビジョン・ゼロ」
企業におけるウェルビーイングとは何かを解き明かし、ウェルビーイングを実践するための最強メソッドで...
-
サイゼリヤ元社長がおすすめする図々しさ リミティングビリーフ 自分の限界を破壊する
堀埜氏の幼少期から大学・大学院時代、最初の勤め先である味の素での破天荒な社員時代、サイゼリヤで数...
-
Amazon Web Services基礎からのネットワーク&サーバー構築改訂4版
代表的なクラウドサービス「Amazon Web Services」を実機代わりにインフラを学べる...
-
実践DX クラウドネイティブ時代のデータ基盤設計
データ基盤のクラウド化に際して選択されることの多い米アマゾン・ウェブ・サービスの「Amazon ...
-
イノベーションのジレンマからの脱出 日本初のデジタルバンク「みんなの銀行」誕生の軌跡に学ぶ
「みんなの銀行」という日本初のデジタルバンクをつくった人たちの話です。みんなの銀行とは、大手地方...