マイナンバーの通知が来たので個人番号カード通知申請をPCからしてみた

本日国保国民年金、住民税という年貢を納付してきました。
占めて1.5MBA。
お財布が・・・。

ついに我が家(独身)にもマイナンバーが

そしてついに土曜日に郵便で来ました。
簡易書留で来ました。

とりあえず「通知カード」でマイナンバーが届いてこれで終わりかなって思っていたら「個人番号カード交付申請書」なるものが同封されていた。
なにこれ?って見てみると、個人を証明する個人番号カードと電子証明書の交付を申請する書類を追加で書く必要があるらしい。

f:id:wnoguchi0727:20151102125636j:plain

私は車を持っていない地方の交通弱者なので、はがき一本出すのも結構大変。
とりあえず最近撮影した履歴書用の写真があったなと思ったらサイズが合っていない・・・。
写真撮影からかーと妙なだるさを覚えて案内書を繰っていくと「こんな申請方法も」という節が。

f:id:wnoguchi0727:20151102125659j:plain

なるほど、スマホ、PC、証明写真機から申請できるらしい。
証明写真データならDropboxに保存してある。
国税調査のときのインターネットでの調査といい、便利な世の中になったなー。

さっそく手続きしてしまう

個人番号カード 申請」で検索して出てくる以下のページにアクセスする。

個人番号カード総合サイト https://www.kojinbango-card.go.jp/kojinbango/

f:id:wnoguchi0727:20151102125128p:plain

SSL

さすがにかなり機密性の高い個人情報を扱うだけあって SSL 証明書はしっかりしているようだ。
サイト全体も SSL 化されている。

  1. どうやら最新の TLS1.2 を使っているらしい。
  2. SHA-256 で発行されいるようなので Chrome で見ても問題ない。
  3. 「接続は古い暗号スイートにより暗号化されています」というのは微妙に気になった。

f:id:wnoguchi0727:20151102131419p:plain

f:id:wnoguchi0727:20151102131424p:plain

f:id:wnoguchi0727:20151102132504p:plain

中身解析

ソースとレスポンスヘッダを見ると Apache を採用しているよう。
なんと Shift_JIS(CP932) 。
かつ HTML5 というアグレッシブなコーディング。

Content-Type:text/html;charset=windows-31j

画面遷移のURLを見ると *.do になっていたので Struts 臭がするが、 Struts1 は使っていないはずと信じてそこは気にしない。

使い勝手

僕の画像は横になっちゃってる。アップロードしたらうまいことやってくれないかなーと思っていたけど、
アップロードした画像を右回転できるところ。
便利だなーと思った。

f:id:wnoguchi0727:20151102134207p:plain

最後に

もろもろの申請を終わらせてふぅと一息をつく。
最後に見ると交付通知書がきたら取りに行くステップがあるらしい。うーむ。まあしょうがないかな。

f:id:wnoguchi0727:20151102125547j:plain

参考リンク

  1. nginx – httpsだからというだけで安全?調べたら怖くなってきたSSLの話!? – Qiita
  2. Google ChromeにおけるSHA-1版SSLサーバ証明書に対する警告表示等について|お知らせ|SSLサーバ証明書 ジオトラスト
  3. Extended Validation 証明書 – Wikipedia

TrueCrypt がだめなら 7z + AES-256 を使えばいいじゃない

なんとも釣り気味なタイトルです。
まあ、Dropboxと連携する簡易ボリュームとして使う文にはこれでいいんじゃないかなと思ったので、こんな方法もあるんじゃない?
という提案です。
効果の程は知りませんが

今まで安全な暗号化ソリューションとして名を馳せていたTrueCryptは死にました。
もう使えなくなりました。

http://truecrypt.sourceforge.net/

公式ページを見ても

f:id:wnoguchi0727:20141223215609p:plain

TrueCrypt はセキュアではありません!BitLocker を使ってください!

と書いてあって、BitLocker への移行手順が懇切丁寧に書いてあります。

それでもダウンロードしようとすると

f:id:wnoguchi0727:20141223215624p:plain

TrueCryptはセキュアじゃないよ?!そこんとこわかってる?!既存のボリューム復元する目的のみで使ってね?!的なノリで最終警告が促されます。

TrueCrypt は死んだのか?

死んだわけではないようですが、いまいち盛り上がりに欠けます。
ほんとに大丈夫なのかなあ。。。

じゃあ何があるのさ?

じゃあ他に何があるか、BitLocker とかじゃなくて、Dropbox にも手軽に放り込める暗号化イメージファイルは作ることはできないのかというところで
妥協策をさぐってみたところ、よく Windows 間のファイルやりとりで使用するファイル暗号化の常識として私は 7-Zip の自己解凍形式の書庫ファイルにして、中身はパスワードつけてAES-256アルゴリズムで暗号化して送るということをよくやっているのですが、これが応用できないかと考えてみました。
何のことはなくて、無圧縮の書庫を作って 7-Zip の 7z + AES-256 暗号化アルゴリズムが適用されるようにすればいいだけの話です。

ZIP にすればいいじゃん?馬鹿言っちゃいけません。 ZIP のパス付き書庫の暗号化アルゴリズム ZipCrypto の暗号強度は飾りみたいなもんです。
社交辞令的にとりあえずパスワード付けましたと言ってるようなものです。

現時点では AES-256 は最強の暗号強度を持つアルゴリズムと言われています。

  1. OpenSSLによる電子証明書の入手
  2. GPG4winでAES256を使いたいGPG4winを使って下記の動画(… – Yahoo!知恵袋

やり方

既に Windows7-Zip がインストールしてあるものとして話を進めます。
Mac ほしい・・・。

暗号化したいものを集める

CONFIDENTIAL というディレクトリに大事そうなファイルを置きます。

f:id:wnoguchi0727:20141223231538p:plain

ファイル圧縮ダイアログを開く

CONFIDENTIAL ディレクトリを右クリックしてコンテキストメニューを出して [7-Zip] -> [圧縮] を選択します。
インストールした物によっては日本語化されていないバージョンがインストールされているかもしれません。

f:id:wnoguchi0727:20141223231551p:plain

暗号化の設定をする

ファイル圧縮 ダイアログが開くので、以下の設定値を使用します。

  1. 書庫形式: 7z
  2. 圧縮レベル: 無圧縮(圧縮かけて容量節約してもいいですが、今回の目的は暗号化だけが主なミッションなので、 ZFS みたいに容量圧縮したいみたいな理由が特にない限りはインフレート(inflate)、デフレート(deflate)にかかる計算コストを抑えたいと思います)
  3. パスワード: なるべくわかりにくいものにしましょう
  4. 暗号化メソッド: AES-256
  5. ファイル名を暗号化: チェックを入れる(ファイル名すら暴露したくない場合はこれにもチェックを入れるべきかと思います)

f:id:wnoguchi0727:20141223231609p:plain

7z ファイルができました

これで暗号化された 7z ファイルができました。

f:id:wnoguchi0727:20141223231622p:plain

実際に暗号解除して中身を見てみる

パスワードを入力すると・・・

f:id:wnoguchi0727:20141223231634p:plain

開けました!

f:id:wnoguchi0727:20141223231652p:plain

で、これをDropboxの同期フォルダに放り込めば暗号化したボリュームのバックアップのできあがりーという寸法です。
USBメモリでも同じことができますね。
Mac なら最初から暗号化ボリュームを作ることができるので、こんなややこしいことはしなくて済むのですが、Windows だったらこんなやり方もありますかね・・・。
まあ、でも共通して言えることはパスフレーズの長さが短かったり安易なものだったら全く意味のないということでしょうか。。。
こればっかりはどんな強力な暗号化アルゴリズムを使用しているといえど突破されてしまいます。

というひとりごとでした。ひとりごと。

AWSで2段階認証(MFA)を構成する(Android版: Google Authenticator使用)

AWSアカウントはGoogleアカウント、Amazonアカウントに次いで大事なアカウントです。
2段階認証、多要素認証、MFA(Multi-Factor Authentication)等々呼ばれ方は様々ですが、
AWSアカウントにも2段階認証を設定することができます。
AWSではMFA(Multi-Factor Authentication, 多要素認証)と呼ばれています。
今回はこれを設定します。

2段階認証を実行するプロセスにはSMSによるメッセージングもできるのですが、
ドコモとかだと海外からのSMSの受信制限とかがかかっていたりして、これを解除しないとうまく受け取れないことがあります。
最初GitHubから2段階認証のワンタイムパスワードを何度やってもSMSで受け取れなくて国コードが間違ってるんじゃないかとか、
先頭の0を取らないといけないじゃないかとか、GitHubのバグなんじゃないかと思いました。

ここではAndroidアプリのGoogle Authenticator(Google認証システム)を使用します。
Google AuthenticatorはGoogleの二段階認証にしか使えないのかと思っていたのですが、
他の2段階認証を採用しているシステムでも使えるようです。
便利ですねー。

MFAの設定を有効にする

  • Management Consoleにログイン後、右上のメニューから[Security Credentials]を選択します。

f:id:wnoguchi0727:20140812213056p:plain

  • あなたがアクセスしようとしているページはAWSアカウントのセキュリティクレデンシャルのページで、
    AWSアカウントのセキュリティクレデンシャルはAWSリソースへの無制限アクセスを提供するものだから
    AWSのベストプラクティスにならってIAMで制限されたユーザを作成してやったほうがいいよーと
    警告が表示されるので[Continue to Security Credentials]をクリックして先に進みます。

f:id:wnoguchi0727:20140812213051p:plain

  • 次に[Your Security Credentials]セクション内の[Multi-Factor Authentication(MFA)]を開いて
    [Activate MFA]ボタンをクリックします。

f:id:wnoguchi0727:20140812213054p:plain

  • [A virtual MFA device]を選択します。

f:id:wnoguchi0727:20140812213044p:plain

  • 要するに、Google Authenticatorを入れてねと書いてあります。

f:id:wnoguchi0727:20140812213045p:plain

  • QRコードが表示されました。
    この段階ではGoogle Authenticatorがインストール済みの前提で話を進めます。
    さらに厳重に認証コードを2連続で入力を促されます。
    そんなことできたんだ・・・。

f:id:wnoguchi0727:20140812213046p:plain

Google Authenticatorを起動する

さて、このQRコードを読み取るためにGoogle Authenticatorを起動します。
こんなアイコンのやつですね。

f:id:wnoguchi0727:20140812213053p:plain

  • [アカウントを設定]をタップします。

f:id:wnoguchi0727:20140812213052p:plain

f:id:wnoguchi0727:20140812213055p:plain

  • AWSアカウントのワンタイムパスワードを生成するところが現れたのがわかると思います。
    右側の円グラフのゲージがこの認証コードの有効な期間なので2回、この認証コードををさっきの認証コード入力欄に入力して[Next Step]をクリックします。

f:id:wnoguchi0727:20140812213050p:plain

  • これで2段階認証を行うためのGoogle AuthenticatorとAWSアカウントが紐付けられました。

f:id:wnoguchi0727:20140812213047p:plain

f:id:wnoguchi0727:20140812213048p:plain

実際にログインしてみる

実際に2段階認証が有効になったかサインアウトしてもう一度ログインしてみます。

  • ログインID、パスワードを入力します。

f:id:wnoguchi0727:20140812213057p:plain

  • 認証コードを求められるようになりました。
    ここでGoogle Authenticatorで生成される認証コードを期限内に入力してログインします。

f:id:wnoguchi0727:20140812213049p:plain

これでAWSアカウントに2段階認証を設定することができました。

デバイスが壊れた、紛失してログインできなくなってしまったら

GitHubやQiita等はリカバリコードが用意されていますが、AWSの場合は直接問合せする必要があるようです。
要注意。

「Security Casual Talks 2014#2 (すみだセキュリティ勉強会)」に行ってきました

6/7に開催されたすみだセキュリティ勉強会に行ってきました!

f:id:wnoguchi0727:20140607120537j:plain

開催して3, 4日のうちには書くぞって思ってたのにこんなに時間が空いてしまいました。
いかんいかん・・・。

私の妄想がふんだんに盛り込まれている可能性が高いので雰囲気だけ味わってください。

現地まで

総武線で一本で亀戸駅までゆるりと・・・。
会場はすぐに見つかり、池袋よりは迷うことはありませんでした。
池袋は迷路ですわあ・・・。

現地についてから

9:30ころに到着。
ちょっと早めに着いてしまったので、会場の設営のお手伝いをさせていただきました。
椅子を前に移動する。ちょっともたついてしまった。(汗)

事前に買っておいたボイスレコーダーで録音してもいいですかと確認しましたが、
一部の方はOKですが、他の方は確認が必要とのことでした。残念。
でも、セキュリティの勉強会ですし、仕方ないですよね。

発表順スライド

  1. 無線LANデンパゆんゆん観察
  2. CRYPT+YOU, UNDERSTAND TODAY!
  3. Metasploitでペネトレーションテスト

開場

な、なんと

会場内に無線LANの設備はありません(すみません)

の文字が・・・。

とのことでしたので、テザリングで実況中継等してました。
ノートは適宜Evernote手書きノートで。
手書きノートは結局タイトルしか書かなかったな・・・。

と、ここで

「Metasploitやったことありますかー?」→ちらほら挙手

ぼくはやったことも聞いたこともなかったので挙手しませんでした。

簡単な自己紹介タイム

「wnoguchiと申します。
プログラマですが、インフラ全般に興味があります。」

終了。

人がいっぱいです!!

発表:無線LANデンパゆんゆん観察 (@ozuma5119)

  • ISP 4月転職
  • 理科っぽい写真をとってる

みんなWEPキーを破りたい!

その前に電波法

電波法とかやっとかないと逮捕者が出てしまいます。

セキュリティエンジニアやるには法律には気をつけて欲しい。

電波法59条

何人も法律に別段の定めがある場合を除くほか、特定の相手方に対して行われる無線通信
電気通信事業法第4条第1項又は第164条第2項の通信であるものを除く。
第109条並びに第109条の2第2項及び第3項において同じ。)を傍受して
その存在若しくは内容を漏らし、又はこれを窃用してはならない。

Wirsharkとかのパケットキャプチャについて
  • 傍受は大丈夫。
  • 公共の場で無線APのSSIDを公開したらかなり黒に近いグレー

f:id:wnoguchi0727:20140618224655p:plain

  • 航空無線も漏らしてはいけない!!
  • 羽田空港で聞いてる人がいる。でも内容は決して教えてくれないはずです。
  • 電車オタクも同様。
電波法59条まとめ
  • 傍受はいくらでもOK。
  • 漏らしちゃダメよ。

電波法60条

無線局には、正確な時計及び無線業務日誌その他総務省令で定める書類を備え付けておかなければならない。
ただし、総務省令で定める無線局については、これらの全部又は一部の備付けを省略することができる。

無線LANを運用していたら無線日誌をつけなきゃいけない?

自宅の無線LANは無線業務日誌は省略してかまわない。

電波法の注意点がわかったところでさっそくWEPをやぶってみよう

  • WPA2は一般的
  • WEPは超弱い

  • IV(initialization vector)キー

  • 暗号キー(WEPに設定するパスワード)
  • これらから鍵(擬似乱数列)になる

WEPの破りやすさ

  • IV初期化ベクトルが24bitで弱い
  • 認証と暗号の鍵が同一で鍵を変えない

Wireshark無線LANに慣れる

  • アイトリプルイーエイトオートぅ~どっとわんわん
  • IEEE802.11
wlan.bssid == 00:ff:ff:ff:ff:ff
  • 無線LANのフレームはBSSIDで絞り込むのがおすすめ

  • 無線LANフレームのサンプル:ビーコンを見てみたい

  • 無線LANの一覧はこのビーコンで拾ってる

  • 暗号化してもSSIDは見れる

  • WEPで暗号化されたパケット

  • IV(初期化ベクトル)は平文で送られてくる

Wireshark飽きた

  • aircrack-ngというツール
    Macだとインストールがめっちゃめんどくさい
  • Ubuntuという神の手によって作られたディストリなら一発
  • karilinuxというものがある

  • BSSID:ESSIDは違う

  • チャンネル番号をメモしとくと便利

あんちょこを用意してましたー

~10分程度でやぶれる

質疑応答

  • アダプタをモニタモードにしないといけない
  • 対応していないのもあるからNICを変えてみたら?

@inaz2 さん

  • マルチSSID
  • WEP
  • WPA2
  • 同じパスにしちゃだめだよ。

発表:CRYPT+YOU, UNDERSTAND TODAY! (@inaz2)

暗号大事

  • X.509とか802.11Xとかのキーワードが交じる
  • PEM, CSR, RADIUS

暗号という概念に限って言えばそれほど難しくない

  • 換字式暗号
  • 文字単位、あるいはブロック単位で置き換える

2014/05/05 NSA採用担当さんがなんか言った

全自動解読機あります。

解読後

want to know what it takes to work at nsa?
check back eachmong ad in mad as we explore careersessential to protect in your nation.

XORスクランブルの復元

RC4

  • 共通鍵暗号方式のうち、ストリーム暗号と呼ばれるもののひとつ
  • Winnyでもこれが使われている
  • RC4のバイアス問題

AES

  • 共通鍵暗号方式のうち、ブロック暗号と呼ばれる
  • いい感じにぐちゃぐちゃになる
  • でも鍵がわかれば元に戻せるよ

暗号利用モード

  • ADOBE PASSWORD BREACH
  • 暗号化されていたがECB Mode。使っちゃいけない

CBCモードが有効

RSA

openssl genrsa 192 | openssl rsa -modulus
  • 768ならまずむり
  • スパコンが本気だせば半年で終わる
  • 2048, 4096が一般的

RSAの使われ方

  • データそのものの暗号化にはほとんど用いられない
  • 鍵共有
  • デジタル署名

BIG BROTHER MIGHT BE WATCHING YOU

RSA秘密鍵を盗まれたら鍵共有で交換していた共通鍵がばれる。

DH(Diffie-Hellman)

鍵共有プロトコル

PERFECT FORWARD SECRECY

  • 通信のセッションごとに違う共通鍵を使って暗号化
  • セッションごとに鍵を変える場合を特にDHE(Ephemeral)と呼ぶ
  • 最近Twitterがこれを適用した

SSL/TLS’S CIPHERSUITE

  • デッキみたいなもの
  • SSL/TLSにて、使用する暗号の組み合わせを表したもの
  • TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA

基礎は大事!!

発表:Metasploitでペネトレーションテスト (@super_a1ice)

  • 大学院生
  • 池袋セキュリティ勉強会参加してた

Metasploit Framework基本

ここまでで聞いているのがやっとなくらいに難しい単語が並ぶ@@;

Webアプリケーションの脆弱性をついてみよう

代表的な例で「OSコマンドインジェクション」。

<?php
$cmd=‘whois ‘ . $_GET[‘ip’];
$result =

こういうのをやるときは周りに迷惑をかけないように仮想マシンでやるといい。
VirtualBoxならHostOnlyAdapterなどを使うなどして細心の注意を払ってやってください。

Exploitを使って電卓を起動してみよう

方法は2つある。

  1. exploit-dbから探す
  2. 自作する

.

  • Immunity Debugger
  • mona

WinXPにて・・・

さっきのpythonのコードを実行して、生成されたHTMLをメモ帳で開く。
閉じようとするとcalcが立ち上がる!
普通に動かせる。

すごい以外の言葉が見つからない。

質疑応答

このあたりのツールを前向きないいことに使う方法はありますか?

  • マルウェア検知に使えたり
  • 防御側として攻撃手法を知っていく必要があるため、実際にやってみるのは有益
  • 脆弱性検査をお願いされた場合はこういう確認の意味として使用することも有用である

まとめ

無線APのWEPキーを破るのとかとても興味深いテーマで、解読していく過程や、電波法に関する豆知識もとても勉強になりました。
試しに無線AP手に入ったらやってみたいです。あーでもやりたいこといっぱいある。

暗号化理論は難しくて私にはよくわからないけど、Diffie-Hellmanとか認証関係で頭悩まされた単語なので親しみ深かったです。

ペネトレーションテストツールである?Metasploit Frameworkをとても興味深いツールでした。
攻撃者の攻撃手法を身をもって体感してみるのもセキュリティエンジニアとしての努めかなと思ってみたり。
karilinuxは近いうちに触ってみたいディストリビューションですね。

とりあえず登壇された方はフォローさせていただきました。

残って食事会にでも参加してみたかったのですが、駅前でかき揚げ天玉そばを食べて帰りました。

また今度ご一緒したいです!

参考文献

  1. すみだセキュリティ勉強会
  2. Security Casual Talks 2014#2 (すみだセキュリティ勉強会) : ATND
  3. ももいろテクノロジー
  4. Metasploit – Wikipedia
  5. Security Casual Talks 2014#2(すみだセキュリティ勉強会)に参加してきました – 夜はいよいよ冴えたのだ。
  6. quippiuq – cryptoquip and cryptogram solver

NTPリフレクション関係リンクまとめ

キーワード

monlist, BCP38(イングレスフィルタリング), BCP84(DNSリフレクション)

わかりやすそうな解説

オフィシャル的な

おべんきょ