【学問のすすめ】中世ヨーロッパ写字生のように黙って静かに手を動かすブログ【学問のすすめ】中世ヨーロッパ写字生のように黙って静かに手を動かすブログこれまで習ったことや学んだことを記事にまとめています。情報セキュリティ情報セキュリティスペシャリスト試験の過去問から、エスケープ処理とプレースホルダ、バインド機構についてまとめてみました。午前2試験でよく出題されます。エスケープ処理エスケープ処理とは、対象となる処理系で特別な意味を持つ文字列を別の文字列に置き換えて無害化する処理を言います。Scriptの名前で出てきます)で行われます。クロスサイトスクリプティング攻撃に対して有効です。静的プレースホルダ静的プレースホルダとは、SQL文を書くときの手法の一つです。ユーザーが入力するデータの挿入される場所をあらかじめ確保し、それ以外の部分の構文解析をあらかじめ行っておきます。これにより、ユーザーがSQL文をWEBフォームなどに入力してもデータベースのSQLは反応しなくなります。この処理をデータベースで行うため原理上不正なデータの挿入が起こりえません。SQLインジェクション攻撃に対して有効です。プリペアドステートメントとも呼ばれます。動的プレースホルダ動的プレースホルダとは、SQL文を書くときの手法の一つです。ユーザーが入力するデータの挿入される場所をあらかじめ確保し、それ以外の部分の構文解析をあらかじめ行っておきます。これにより、ユーザーがSQL文をWEBフォームなどに入力してもデータベースのSQLは反応しなくなります。この処理をWEBアプリケーションのライブラリで行います。そのため、不正データが挿入される可能性を完全には排除できません。SQLインジェクション攻撃に対して有効です。バインド機構バインド機構とは、静的プレースホルダを行うためのデータベースの機能の名前です。確保された箇所にデータを入力することを「バインド」と呼び、それを行うための機能を「バインド機構」と呼びます。安全性の順位は上記のとおりです。エスケープ処理はかかわる処理系すべてで行う必要があることに注意してください。午前2/問16)質問SQLインジェクション対策について,Webアプリケーションの実装における対策とWebアプリケーションの実装以外の対策の組合せとして,ともに適切なものはどれか。Webアプリケーション内でシェルを起動しない。chroot環境でWebサーバを実行する。セッションIDを複雑なものにする。SSLによって通信内容を秘匿する。バインド機構を利用する。データベースのアカウントの持つデータベースのアクセス権限を必要最小限にする。パス名やファイル名をパラメタとして受け取らないようにする。重要なファイルを公開領域に置かない。解法ア:OSコマンドインジェクションの対策イ:セッションハイジャックの対策ウ:SQLインジェクションの対策エ:ディレクトリトラバーサル知識問題です。知ってさえいれば解答できます。解答ウ備考エスケープ処理とプレースホルダの違いを覚えていなかったのでまとめました。実務上では、エスケープ処理は必要不可欠、プレースホルダはシステム上設定が不可能な場合もあるため、できる場合にのみ行うようです。読者になるこのブログについて広告エリア広告エリア広告エリア広告エリア参加グループセキュリティアクセスの輪エンジニアグループ文系エンジニアのキャッチアップ系ブログ引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。