2008年10月14日火曜日

授業メモ

【パスワードを盗み取る手法】

1.ソーシャル・エンジニアリング
 詐欺的な手法によって不正に情報を入手することである
 IDやパスワードを盗み取る場合、必ずしもコンピュータの技術が
 必要なわけではない。
 技術に頼らずに、人間の心理や行動における盲点やミスを突いて
 不正に情報を入手する手口を
 「ソーシャル・エンジニアリング」と呼ぶ。

①ショルダーハッキング
 IDやパスワードを入力している状態を肩(ショルダー)越しに覗き見ることで
 不正にIDやパスワードを入手する手法。

②スカベンジング
 ゴミの中からIDやパスワードのメモやその他の情報資産を入手する手法。

③電話によるなりすまし
 上司やシステム管理者になりすまして電話をかけて
 IDやパスワードが必要な事態が発生して至急対応が必要だと騙して
 パスワードを入手する手法。

2.技術的な手法で盗み取る場合

①キーロガー
 通常、パスワードの入力を行なっても画面上は"*・●"が表示されるだけで
 入力した文字は 表示されない。
 キーロガーはキーをログする。キーボードからの打鍵履歴を全て記録する仕組みを
 コンピュータ内に組み込んでパスワードを入手する。

②ブルートフォース攻撃
 パスワードとして利用可能な文字の組み合わせを片っぱしから順番に
 試してみることでパスワードを破る方式。総当り攻撃とも言われる。

③辞書攻撃
 パスワードとして利用されがちな文字列をあたかじめ辞書に登録しておき、
 辞書に登録されている文字列を順番に試してパスワードを破る手法。

④レインボー攻撃
 あらゆるパスワードに対応したレインボーテーブルを用意しておき、
 コンピュータ内のパスワードのハッシュ値と一致するハッシュ値をレインボーテーブル
 から探し出すことでパスワードを盗み取る手法。

入力してきたパスワードが正しいかどうか?
コンピュータ内にパスワードを保存しておいてある。
昔はパスワードの文字列そのものを保存していた。

【ハッシュについて】

ハッシュ:与えられたデータに(ここではパスワード)に対して演算を行うこと。
演算結果を「ハッシュ値」または単に「ハッシュ」と呼ぶ。

例)パスワードが「123」、ハッシュ関数が「9で割った余り」の場合
  123÷9=13 余り6なので、この場合のハッシュ値は6となる

代表的なHASH関数:MD5 128bitのハッシュ値を作り出す
             SHA-1 160bitのハッシュ値を作り出す

【ハッシュ関数の特徴】

①入力された値から一定の長さの値を出力できる

②同じ値を入力すると常に同じ出力値が出力されるが、入力される値が一部でも
 異なると出力値が大きく変化する

③ハッシュ値から元のデータを特定することはできない

【パスワードの適切な管理】
パスワードを適切に設定/管理することでパスワードが漏洩する可能性を減少させる
ことは可能である。

・周囲の状況を確認(見ている人間がいない)してからパスワードを入力する
・パスワードのメモを他人の見えるところに置かない
・不特定多数が利用するパソコン(インターネットカフェ等でパスワードの入力が
 必要なサイトにアクセスしない(キーロガーの可能性)
・短いパスワードを設定しない(最低8文字、可能なら15文字以上)
・パスワードには、単語や生年月日、電話番号等の辞書攻撃の対象になる
 ようなものや容易に推測可能なものは使用しない
・パスワードは数字だけ、英字だけを利用せずに、数字、英大文字。英小文字、
 特殊文字を混在させる
・パスワードは定期的に変更する
・初期パスワードは初回ログイン時に変更する(初期パスワードは、自分以外に
 初期設定を行った管理者も知っている)
・パスワードの入力にソフトウェアキーボードを利用する
・ようこそ画面(ユーザーの一覧表示される画面)を表示しないように設定する
・直前に利用したユーザー名を表示しないように設定する

【パスワード付け方サンプル】

①自分の好きな文章を思い浮かべる
   単語でなくて文章で考える
   好きな曲の歌詞

②好きな文章をローマ字に変換する
   し→si,shi っ→ltu

③ローマ字に対して、自分なりの変換規則を適用して、数字、英大文字、英小文字、
 特殊文字が混在 するようにする
   l(エル)→1 a→@ i→! s→&

④変換した文字列の特定位置の特定文字数を取り出す
   3文字目から10文字目までの8文字を利用

⑤文字列の一部を入れ替える
   最初の2文字を最後に移動

例)けっしてつかまえることのできない
keltus!tetuk@m@erukotonodek!n@!
tus!tetu
s!tetutu

0 件のコメント: