290 likes | 406 Views
最低限 UNIX( 1 ) パスワードの基礎. 馬場 健聡 情報実験第 2 回 2010/04/23 ( 初版作成 : 河野 仁之 ). もくじ. パスワードの必要性・重要性 パスワード盗用による被害 悪いパスワード・良いパスワード UNIX におけるパスワード管理. 日常におけるパスワード. 銀行口座 , クレジットカードの暗証番号 自動証明書発行装置 (ACM) の暗証番号 SNS (mixi など ) のログインパスワード などなど・・. 本当に使っていい 人間なのかを認証 するもの. UNIX におけるパスワード.
E N D
最低限UNIX(1)パスワードの基礎 馬場 健聡 情報実験第 2 回 2010/04/23 (初版作成:河野 仁之)
もくじ • パスワードの必要性・重要性 • パスワード盗用による被害 • 悪いパスワード・良いパスワード • UNIX におけるパスワード管理
日常におけるパスワード • 銀行口座, クレジットカードの暗証番号 • 自動証明書発行装置 (ACM) の暗証番号 • SNS (mixiなど) のログインパスワード • などなど・・ 本当に使っていい 人間なのかを認証 するもの
UNIX におけるパスワード • UNIX も複数の人間で PC を共有することを前提に設計 • システム管理者 (スーパーユーザ, root) と一般利用者 (ユーザ) • root がユーザに利用権限(アカウント)を配布 • アカウントを持たない人による不正利用を防ぐことが必要 したがってパスワードによる認証を行っている
パスワードは不正利用の防御策 • 利用開始手続き(ログイン)時の認証 • ユーザ名 + パスワード 利用者全員に適切なパスワードの設定が義務づけられる
パスワードの盗用危険性 • インターネットに繋がっている PC は悪い人達から常にパスワードクラック (パスワードを見破る行為) などの攻撃を受けている • 甘い(悪い)パスワードをつけると, すぐにパスワードが盗用されてしまう…
パスワードが盗用されると どのような被害に遭うのか?
パスワードが盗用された時のの被害 • 第一段階 : 本人が困る • 本人情報やデータの流出、悪用、破壊 • 例えば明日朝 9 時締切のレポートが消える • 第二段階 :周囲の人が困る • 個人情報の流出, 共用システムやその中の資源が破壊 • 例えば inex の website が消える • 第三段階 :世界の人が困る • 乗っ取られた PC を足がかりに他の PC が攻撃される
本人が困る • パスワードクラックにより, A さんのパスワードを入手 • A さんに成り済ましてログイン • PC の不正利用(クラック)開始 ! • 他の PC に対する迷惑メール (スパム) の配信 • PC 内のデータの消去 • Aさんの本人情報や打鍵情報の取得 (パスワード, クレジットカード情報)
周囲の人が困る世界の人が困る • パスワードクラックにより root アカウントを入手 • PC 内の全ユーザの情報を見放題 • クラックした PC を利用して、他の PC へパスワードクラック • 出来るだけ多くの数の PC をクラックし, 次の(よりよい)獲物へ
クラックされた PC の行く末 • 一度クラックされた PC のホスト情報は裏で出回る • セキュリティーの甘いホストであると認識され, どんどん攻撃を受ける • 数ヶ月ごとにパスワードを盗まれる ! • 最終的にはホスト名の廃止へ • そういえば情報実験機には joho21 というPC がありませんね…
パスワードは PC を守る盾
「PC を守る盾」になるためには • どんなパスワードでも 「PC を守る盾」になるとは限らない • 甘い(悪い)パスワードは全く無意味 • 自分だけの「良い」パスワードをつける事が重要
「良い」パスワードのつけ方 • 大文字、小文字、数字、記号を少なくと も 8 文字以上 並べる • 制限文字数を超えて並べた場合、先頭が有効とされる • 辞書に載っているような単語, 個人情報などから容易に連想できる単語はパスワードにしない
なぜ 8 文字以上なのか?? • 全件探索: Brute Force Attack • パスワードとして可能なすべての組み合わせを試す • 長いパスワードならばクラックは困難 • 400 万アタック/秒 (Core2 Duo T8300 (2.4GHz) マシン 1 台相当)では … • 5 文字 : 約 23 分 30 秒 • 6 文字 : 約 35 時間 • 7 文字 : 約 129 日 • 8 文字 : 約 31 年 • 9 文字 : 約 2809 年 *パスワードに使う文字を アルファベットの大文字・小文字, 数字, ~@#$%^&*()_+-=[]{},.\“/?:;` の全 89 文字とした場合
推測しやすいパスワードはダメ !!! • 例) 名前 馬場 健聡, ログイン名 kintore,北海道札幌市在住, tel 012-333-4567 • ログイン名, 名前, それに類するもの • Baba, Takeaki, kintore, babakin, toretore • 「sを$」「oを0」「iを1」など単純な規則「だけ」で変えたもの • k1nt0re, Takeak1 • 個人情報から推測できるもの • 012333-4, sapp-Hokk
長くても推測しやすいパスワードはダメ !!! 1 • 辞書探索: Dictionary Attack • 様々なデータから単語を抽出し, クラッキング用辞典を作成 • 登録単語総数は 100 万語とも… • オンライン英和辞典で 8 万語 • 専門用語や趣味の単語まで網羅 • Brute Force Attack よりも早くクラックされてしまう可能性大!
長くても推測しやすいパスワードはダメ !!! 2 • 人名、辞書に載っている単語(英和問わず)、コマンド、固有名詞 • kuramoto, flower, aozora, adduser, salomon, japan • 上記の繰り返し, 逆綴り • flowerflower, rewolf • マニアックな単語もダメ • floccinaucinihilipilification • antidisestablishmentarianism • 全部同じ数字や同じ文字 • 1111111111, aaaaaaaaaa
パスワードマナー • 人が打鍵しているところは見ない (視線をそらす) • アカウント (パスワード) の貸し借りはしない • パスワードは他人に教えない (管理者にも) • パスワードは出来るだけメモせず、記憶する • メモする場合絶対 捨てない ・ 見せない ・ なくさない • 別のマシンでは別のパスワードを使う • パスワードは頻繁に変更する • 初期パスワードは最初のログイン時に変更
UNIX における パスワード管理
UNIX におけるパスワード管理 • UNIX (Linux) ではデータは「ファイル」という形で記録, 管理 • ファイルを整理するために「ディレクトリ(フォルダ)」 が存在 • ディレクトリ自身もファイルの一種 • 中に格納されているファイル名一覧が明記 • パスワード等の利用者に関する情報もファイルとして保存 • /etcディレクトリの passwd, shadow, groupで ユーザー情報を記録, 管理
Passwd, shadow, group ファイル • Passwd • ユーザの基本情報を記録. ユーザは閲覧可 • Shadow • 暗号化されたパスワード情報を記録. ユーザは閲覧不可 • Group • グループの基本情報を記録 • UNIX には柔軟な管理の目的でグループという概念がある. どのユーザも必ずいずれかのグループに属している.
Shadow ファイルと暗号化 1 • Shadow ファイルの中身 addii:$1$Utev74.c$dyH520./rf0pQydGHu6f01:14962:0:99999:7:::0adom:$1$yfr59.ND$n0FRdB.GTdsC9.Hyr4dTr3:14965:0:99999:7:::0adison:$1$e.H/te0$prwgyr6GYr5.kOC.g3llX.:14968:0:99999:7:::0adon:$1$y.JgtEf5$lp.TH..7esCf7fpHYre4./:14965:0:99999:7:::0 bob:$1$Dol/are4$r3M4h6.dlWYo9goIcGY64.:14961:0:99999:7:::0 david:$1$OgoWhdOf$uhBfrD./07c5TG43.ZqP/V:13965:0:99999:7:::0
Shadow ファイルと暗号化 2 addii:$1$Utev74.c$dyH520./rf0pQydGHu6f01 • パスワードは暗号化されて格納 • 暗号化には MD5 が利用される • 古くは crypt が利用されていた. 暗号化されたパスワード
パスワードの暗号化 addii:$1$Utev74.c$dyH520./rf0pQydGHu6f01 • MD5 をつかうと… • dyH520./rf0pQydGHu6f01 =cript(Passwd, $1$Utev74.c) • このように暗号化の手順は非常に簡単 • ログイン時は入力したパスワードを暗号化し, それが /etc/shadow の内容と一致するかを判断 MD5 を使うための記号 暗号化に使う 乱数(Salt) 暗号化された パスワードの実体
まとめ • アカウント • ユーザーがコンピュータを利用する権限 • パスワード • アカウントの利用者認証 • 「良い」パスワードじゃないと無意味 • UNIX では • アカウント情報を /etc 以下の passwd, shadow, group に記録
実習では • 実習編では情報実験機にアカウントを作成します。あなただけの「よい」アカウント名とパスワードを 考えてください! • パスワードクラックをかけます。破られてしまった人には追加のレポートを課すので、覚悟していて下さい!
参考文献1 ・ 強力なパスワード: その作り方と使い方 Microsofthttps://www.microsoft.com/japan/protect/yourself/password/create.mspx ・WIDE インターネット概論 第08回(2004/11/26) 「パーソナル・セキュリティhttp://www.soi.wide.ad.jp/class/20040025/materials_for_student/08/gairon-2004f08-RELEASE.pdf ・IT用語辞典 e-Words – セキュリティ – http://e-words.jp/p/c-security.html ・IT media 「覚えやすく破られにくいパスワードを作る方法」 http://www.itmedia.co.jp/enterprise/articles/0911/26/news020.html
参考文献2 ・ITpro 「攻撃は 15 分で完了する」 -- 不正侵入, その実際の手口 http://itpro.nikkeibp.co.jp/article/COLUMN/20060803/245101/ ・良いパスワードとは http://www.7key.jp/security/pw.html ・@IT --パスワードが安全か調べるには(John the Ripper編) http://www.atmarkit.co.jp/flinux/rensai/linuxtips/244johnripper.html ・パスワード自動生成ホームページ http://www.maido.co.jp/network/passmake2.html