55億円詐欺と本人確認

2018-12-07

弊社オフィスのある西五反田付近は再開発で慌ただしく、高層ビル建設でいつも騒がしい。 ふと窓の外に目をやると鬱蒼とした木々に覆われた廃屋が異質な存在感を示しています。

積水ハウス55億円詐欺事件の舞台となった海喜館です。

海喜館

  目次

なぜ騙されたのか

事件のいきさつは繰り返し報道されている通りです。 この詐欺は地面師グループと呼ばれる複数の人物によって計画された犯行です。

大手不動産業者が騙されるほどの手口であり、犯行グループの巧妙さが大々的に報じられました。 しかしどうすればこの事件を防げたのかという対策を論じた報道はあまりありません。

もし、あなたが積水ハウスの担当者だったら、司法書士であったならどの様にしてこの詐欺を見抜けばよかったのでしょうか。

原因のひとつに、取引相手の本人確認(KYC)が甘かった事が指摘されています。 地面師グループは「道具屋」と呼ばれる偽造屋にパスポートや免許証、印鑑登録証などを偽造させ、なりすましを行ったとされています。

積水ハウス自身も「分譲マンション用地の取引事故に関する経緯概要等のご報告」という報告書でこの様に述べています。

4.再発防止に向けて

本件を防げなかった直接の原因は、管轄部署が本件不動産の所有者に関して書面での本人確認に頼ったことにあります。ただ、司法書士も本物と信じたという偽造パスポートや公正証書等の真正な書類が含まれていたという地面師側の巧妙さもあり、また、売買契約締結時には所有権移転請求権の仮登記も実現しているといった事情もあって、初期段階で地面師詐欺を見破ることには、困難な点もありました。

パスポートには幾つかの偽造防止対策が講じられています。 例えば券面にブラックライトをかざせば顔写真が現れるというものです。 しかしプロの偽造屋にとって紫外線で発光するインクで顔写真を印刷することくらい朝飯前でしょう。

また、ある司法書士は運転免許番号の下2桁目がチェック・ディジットになっているのでこれを計算して真贋判定しているといいます。

このような拙いノウハウが本人確認業務の中で密やかに伝授されているようです。 というのも、この様な本人確認業務に関わる者は悪用されるという理由で具体的な確認手順を公にしません。 こうして不十分な本人確認手法が誰にも指摘されないまま、詐欺事件が起こってしまうわけです。

そもそも印刷技術が発達した近年、身分証の真正性を人間の目で判別することはほとんど不可能でしょう。 どうやら、紙を見て本人確認するという私たちの習慣に根本的な脆弱性があるようです。

運転免許証と電子署名

こういった問題を背景に、2010年以降に発行された運転免許証にはICチップが埋め込まれています。

このICチップには券面に記載されいる内容とほぼ同じ電子的なデータが記録されていて、このデータには電子署名が行われています。

警察庁が公開している運転免許証の仕様書を読むと、券面情報のSHA256ハッシュ値に公安委員会のRSA鍵で電子署名していることが分ります。

運転免許証及び運転免許証作成システム等仕様書 バージョン7より:

 電子署名アルゴリズム

この電子署名を検証すれば記載事項の真正性を確認できるのでは、ということでさっそくやってみました。

ISO/IEC 7816 Part 4のコマンド仕様に従い、免許証から署名値を読み出します。

# SELECT FILE
> 00 A4 02 0C 02 00 07
< 90 00
# READ BINARY
> 00 B0 00 00 FF
< [署名値part1]
# READ BINARY
> 00 B0 00 FF FF
< [署名値part2]
# READ BINARY
> 00 B0 01 FE 44
< [署名値part3]

署名検証には都道府県公安委員会の証明書を利用します。 証明書は国家公安委員会の証明書をRoot CAとして、47都道府県公安委員会の証明書が発行されています。1

OU=NPA ICDL Root CA,OU=National Police Agency,O=Japanese Government,C=JP
├──CN=Tokyo MPSC,OU=Prefectural Public Safety Commissions for ICDL,OU=National Police Agency,O=Japanese Government,C=JP
├──CN=Kanagawa PPSC,OU=Prefectural Public Safety Commissions for ICDL,OU=National Police Agency,O=Japanese Government,C=JP
︙
└──CN=Okinawa PPSC,OU=Prefectural Public Safety Commissions for ICDL,OU=National Police Agency,O=Japanese Government,C=JP

東京都で発行された運転免許証の場合、東京都公安委員会の公開鍵で署名値のRSA復号処理を行い、券面データのハッシュ値と比較します。

% openssl rsautl -verify -in sigunature.dat -pubin -inkey tokyo.pub -hexdump
0000 - 30 a2 7f 69 24 d1 de e1-e0 23 b0 8f 6e 4b 85 0c   0..i$....#..nK..
0010 - 1e 78 0b ea 03 58 b3 5a-b5 f4 50 82 08 48 ab ee   .x...X.Z..P..H..

仕様書にはPKCS#1 v1.5に準拠って書かれているのにDigestInfoが無くて少しつまずきましたが無事opensslコマンドで検証できました。 EMSA-PKCS1-v1_5エンコーディングって署名時に省略して良いのでしたっけ? おまわりさん、RFC違反ですよ!2

免許証の署名検証アプリをつくった

というわけで運転免許証の券面情報を検証するAndroidアプリを作りました。

「IDリーダー」というアプリをGoogle Playで無料公開しています。

jeidreader

Google Play で手に入れよう

このアプリで免許証を読み取ると、署名検証を行い、こんな風に券面の右下にチェックマークが表示されます。

verify

このアプリを使って運転免許証の記載事項が改変されていないかをチェックすることができます。 この手のアプリは個人情報を収集されるのではないかという心配があるかと思いますが、 このアプリにはインターネットアクセス権限を与えていませんので安心して利用できるかと思います。

ついでにマイナンバーカードの券面を読み取る機能も作りましたが、こちらは仕様が公開されていないので署名検証はできていません。

忘れられた暗証番号

このアプリのように署名検証すれば券面情報の真正性を確認できます。 しかし暗証番号1と暗証番号2の両方を入力しなければ免許証の署名検証を行うことはできません。

ここに、多く人は免許証の暗証番号を覚えていないという問題があります。 普段使わない暗証番号ですから忘れてしまうのは仕方のないことでしょう。 これでは実際の本人確認業務でIC免許証の署名検証を行うことは難しいことになります。

この問題は警察庁も認識されているようで警察庁 交通局運転免許課からこの様な通達が出ていました。

ICカード免許証の暗証番号の運用に係る留意事項について

 ICカード免許証のICチップに記録された情報を民間等において読み出すためには、
ICカード免許証読取り装置において、暗証番号1(「本籍」及び「顔写真」を読み出す
場合は更に暗証番号2)を入力する必要があるところ、暗証番号を失念している者が多
く、このことが、民間等におけるICカード免許証の利活用が進まない要因とされている。
(1) 暗証番号の作成
 ア 暗証番号1
  暗証番号1については、券面に記載されている免許番号のうち、赤色斜線が施
  されている4桁の番号(以下「券面抽出番号」という。)とすること。
 イ 暗証番号2
  被交付者本人のみが知り得る4桁の秘密番号とすること。
 ウ 暗証番号の選定
  暗証番号1及び暗証番号2については、前項ア及びイに示す番号を選定させる
  ことを原則とするが、最終的には、暗証番号1も暗証番号2も被交付者本人が自
  由に選べることとする。

ようするにみんな暗証番号を忘れちゃってICチップの活用が進まないから、免許番号の真ん中4桁を暗証番号1に設定する(暗証番号2は保持者が自分で決める)という運用に変わるようです。

免許証

券面に記載されている情報を暗証番号にすると言うと不安になるかもしれませんが、暗証番号1で保護されているデータは券面に記載されている情報とほぼ同じなので妥当なアクセスコントロールに見えます。

しかしこの通達が出たのは平成27年ですが、今年(平成30年)に免許証を更新した知人は暗証番号1と2の両方を自分で決めて設定したそうです。 実際の運用はどうなっているのかを警察庁に問い合わせてみると、各都道府県警察がこの通達通りの運用を行っているかどうかは分からない。という回答でした。

なんだかいい加減な印象を受けるかもしれませんが、この文書はあくまで「通達」ですので法的な義務や拘束力があるものではありません。 というのも、国家公安委員会および警察庁は各都道府県公安委員会の上部組織ではなく独立した組織となっているため、指示や命令は出来ないということになっています。 警察組織図を見ると、たしかに国家公安委員会の上は総理大臣で、都道府県公安委員会の上は都道府県知事となっていることが分ります。

平成30年 警察白書 第1章 警察の組織と公安委員会制度

ただIC免許証の運用方法を統一して欲しいだけなのに、道のりは長く険しそうです。

さいごに

本人確認は対面取引だけでなくオンラインサービスにおいても重要な手続きです。 すべてのサービスで厳密な本人確認を必要とするわけではありません。それぞれの事業リスクに応じて適切な確認レベルを設定する必要があります。

現状行われているような免許証やパスポートのコピー紙を郵送して本人確認するような手続きは利用者にも負荷がかかるので顧客損失にも繋がります。

パスポートの検証アプリもそのうち作るのでちょっと待ってね。

追記: 出来ました! → パスポートのセキュリティ

しかし詐欺師はまず偽造した免許証を使ってなりすましで戸籍謄本を取得、なりすましによって本物のパスポートを取得するという手口があるのでパスポートの過信は禁物です。

現在日本で最も確実な住所・氏名・年齢の確認方法は公的個人認証です。 しかしマイナンバーカードにはマイナンバーが記載されているので多くの人が使いたがりません。

対面の本人確認で重要なのは顔写真の真正性です。公的個人認証だけではこれが不十分です。 マイナンバーカードの顔写真も署名検証出来るはずなので総務省は公開鍵を公開してください。

参考資料


  1. 北海道はなぜか5つの公安委員会に分裂しているので正確には51個 ↩︎

  2. RFC 2313 には “Data encoding The message digest MD and a message-digest algorithm identifier shall be combined into an ASN.1 value of type DigestInfo” とあるのでDigestInfoは必須だと思う。 ↩︎

Recent Entries

マイナちゃんピオンシップ・かがわ 2022 参加レポ

認証器としてのキーボード

Using LDAP directory for FIDO 2.0

パスポートのセキュリティ

55億円詐欺と本人確認

マイナンバーカードでPAM認証

マイナンバーカードでmacOSにログイン

マイナンバーカードでSSHする

Python Flaskでつくる LDAPログインページ

GitHub EnterpriseとLDAPで認証連携する

Hot Entries