忍者ブログ
統計、機械学習、AIを学んでいきたいと思います。 お役に立てば幸いです。

【DS検定対策】Webセキュリティ:クロスサイトスクリプティング(XSS)の構造

1. 【 問題 】

Webアプリケーションの脆弱性を利用し、閲覧者のブラウザ上で不正なスクリプトを実行させる攻撃を「クロスサイトスクリプティング(XSS)」と呼びます。

この攻撃によって引き起こされる被害として、適切なものはどれでしょうか?

① 閲覧者のブラウザに保存されているクッキー(セッション情報)が盗まれる
② 閲覧者のブラウザ上で、偽の入力フォームが表示され情報が入力させられる
③ 閲覧者の権限を利用して、Webサイト上で意図しない操作を行わされる
④ 上記のすべて


2. 【 解答 】

正解: ④ 上記のすべて

3. 【 図解 】:XSSの攻撃構造

攻撃者がWebサイトの脆弱な箇所(入力フォーム等)に悪意のあるスクリプトを仕込み、それを「閲覧者のブラウザ」に実行させるのが特徴です。

[ 攻撃のフェーズ ]

1. スクリプトの注入
 → 掲示板や検索窓などに <script> タグなどを送り込む

2. スクリプトの実行
 → 罠のページを踏んだ一般ユーザーのブラウザでスクリプトが動く

3. 情報の奪取・操作
 → Cookieを攻撃者のサーバへ送信したり、偽画面を表示したりする

--------------------------

攻撃対象は「Webサーバ」ではなく「Webサイトの閲覧者」である点がポイントです。

■ 防御のポイント
1. サニタイジング(無害化): 特別な意味を持つ記号( < や > など)を、別の文字( &lt; や &gt; )に置き換えて、スクリプトとして動作させないようにします。
2. WAFの導入: Web Application Firewallによって、悪意のあるパターンの入力を遮断します。


4. まとめ

DS検定や情報処理試験において、「ブラウザ上でスクリプトを実行」「Cookieの奪取」というキーワードが出たら、クロスサイトスクリプティング(XSS)を正解に選びましょう。コマンドインジェクションとの違いを明確にしておくことが重要です。


PR

【DS検定対策】行列の難所を攻略!「掛け算(積)」の独特なルール

行列の掛け算(積)は、計算の組み合わせが複雑です。全てのマス(左上・右上・左下・右下)がどのように計算されているか、抜き出し図解で整理します。

1. 【 問題 】:行列の積

次の2つの行列 A と B の積(AB)として、正しいものはどれでしょうか?

A =
1 2
3 4
  ×   B =
5 6
7 8

【 選択肢 】


5 12
21 32

19 22
43 50

7 10
15 22

2. 【 解答 】

正解: ②

3. 【 図解 】:全要素の計算プロセス

「左の横一行」と「右の縦一列」を順番に掛け合わせて足していきます。

■ 左上の計算(1行目 × 1列目)

1 2
×
5
7
→ (1×5)+(2×7) = 19

■ 右上の計算(1行目 × 2列目)

1 2
×
6
8
→ (1×6)+(2×8) = 22

■ 左下の計算(2行目 × 1列目)

3 4
×
5
7
→ (3×5)+(4×7) = 43

■ 右下の計算(2行目 × 2列目)

3 4
×
6
8
→ (3×6)+(4×8) = 50

4. 【 解説 】:行列の積のルール

計算結果をまとめると、以下の通りになります。

【 計算結果 】
19 22
43 50

■ 覚え方のコツ
左の行列から「横」のパーツ、右の行列から「縦」のパーツを一つずつ取り出すのがポイントです。順序(左×右)を逆にすると答えが変わってしまうので注意しましょう。


5. まとめ

行列の積は、慣れるまでは図のようにパーツを抜き出して書くのが一番の近道です。この4つのプロセスの動きをマスターしましょう。



【DS検定対策】行列の基礎を攻略!「引き算」も同じ位置で計算

行列の足し算の次は「引き算」です。ルールは足し算と全く同じで、対応する位置の数字を引くだくだけですが、符号(プラス・マイナス)の変化に注意が必要です。

1. 【 問題 】:行列の差

次の2つの行列 A と B の差(A - B)として、正しいものはどれでしょうか?

A =
5 8
3 2
     B =
1 4
6 2

【 選択肢 】


4 4
-3 0

6 12
9 4

4 4
3 0

2. 【 解答 】

正解: ①

3. 【 解説 】:行列の引き算ルール

行列の引き算も、足し算と同様に同じ位置にある要素どうしを計算します。

・左上: 5 - 1 = 4
・右上: 8 - 4 = 4
・左下: 3 - 6 = -3
・右下: 2 - 2 = 0

【 計算結果 】
4 4
-3 0

■ 注意点
1. マイナスの計算: 今回の左下(3 - 6)のように、計算結果が負の数になる場合があります。符号ミスに注意しましょう。
2. 引く順番: 行列 A - B と B - A では結果が異なります。必ず指定された順序で引きましょう。


4. まとめ

行列の引き算は、基本さえ押さえれば得点源になります。次は、多くの人がつまずきやすい「行列の掛け算(積)」について、このフォーマットで整理していきましょう。


【DS検定対策】行列の基礎を攻略!「計算のルール」が合格のカギ

データ分析の基礎となる行列の計算。まずは基本となる「和(足し算)」のルールを整理します。

1. 【 問題 】:行列の和

次の2つの行列 A と B の和(A + B)として、正しいものはどれでしょうか?

A =
1 2
3 4
      B =
5 6
7 8

【 選択肢 】


5 12
21 32

6 8
10 12

4 4
4 4

2. 【 解答 】

正解: ②

3. 【 解説 】:行列の計算ルール

行列の足し算・引き算は、同じ位置にある要素どうしを計算するだけです。

・左上: 1 + 5 = 6
・右上: 2 + 6 = 8
・左下: 3 + 7 = 10
・右下: 4 + 8 = 12

【 計算結果 】
6 8
10 12

■ 注意点
1. サイズの一致: 行列の足し算・引き算ができるのは、行と列の数が一致している場合のみです。
2. 対応する位置: 違う場所の数字を足さないよう、一箇所ずつ確実に計算しましょう。


4. まとめ

DS検定では、行列の基本計算が必須知識として問われます。「同じ位置どうし」というルールを、まずはしっかり身につけましょう。

【DS検定対策】Webセキュリティ:コマンドインジェクションの脅威

1. 【 問題 】

Webアプリケーションにおいて、OSのシェルを呼び出す際の実装に問題がある場合、攻撃者によって不正なOSのコマンドが実行されることがあります。

その結果、次のような事態を招く攻撃手法はどれでしょうか?
・Webサーバ内部の情報が漏えいする
・別のサーバへの攻撃の踏み台となる

① SQLインジェクション
② OSコマンドインジェクション
③ クロスサイトスクリプティング(XSS)
④ ディレクトリトラバーサル


2. 【 解答 】

正解: ② OSコマンドインジェクション

3. 【 解説 】:コマンドインジェクションの構造

プログラムの隙間(インジェクション)から、OSへの直接的な命令(コマンド)を流し込む攻撃手法です。

[ 被害の及ぶ範囲 ]

1. 機密性の破壊
 → Webサーバ内の設定ファイルや顧客情報の奪取

2. 攻撃の踏み台
 → 乗っ取ったサーバを使い、別の組織を攻撃する

3. 制御の奪取
 → ファイルの削除や、不正なプログラムの設置

--------------------------

OSの制御を直接奪われるため、被害は全方位に及びます。

■ 実装上の注意点
1. 発生原因: 入力文字列を検証せずに、system() や exec() などのシェル呼び出し関数に渡すことで発生します。
2. 根本対策: 可能な限りOSコマンドを直接呼び出す実装を避けること。やむを得ない場合は、特殊文字(; | & ` など)をサニタイズ(無効化)する必要があります。


4. まとめ

DS検定や情報処理試験において、「シェルの呼び出し」「不正なOSコマンド」というキーワードが出たら、コマンドインジェクションを正解に選びましょう。システム全体を危険にさらす恐ろしい攻撃です。