2026年4月20日月曜日

フィッシング詐欺はパスキーで防げるわけだけれども…

このエントリーをはてなブックマークに追加
このエントリーをBlueskyに送信

大手ポータルサイトのYahoo!Japanがパスワードのみのログインを停止する方針を打ち出した。ケータイを絡めた認証、とくにパスキーを使って欲しいようだ。

利用できるサイトは少ないのだが、証券会社などの大きな金額を扱うサイトも、昨年の大規模不正アクセス事件*1を受けてかパスキーの利用を推奨している。パスキーに対応するためのミドルウェアも概ね揃っており*2、今後、利用サイトが増える見込みだ。

1. パスワードはフィッシング詐欺に弱い

現在の一般ユーザーが対処すべきセキュリティー驚異は、フィッシング詐欺だ。SNSでアカウントを乗っ取られたと言う話はぼちぼち聞く。「不正侵入を検知しました。ログインして問題を確認してください。」と言うような文面で偽サイトに誘導し、IDとパスワードを入力させて奪取するような手口が使われる。ケータイ会社やクレカ会社を装った「引き落としに失敗しました。」ようなメールもある。私は習慣的にリンク先のURLを確認するが、仕事をテキパキこなしてしまう人は学歴などに関わらず引っかかりやすい。

2. 確認コード併用も、リアルタイム・フィッシングには脆弱

簡便な対策として、二段階認証が使われてきた。ユーザーをIDとパスワードで認証した後、使い捨ての確認コードを、あらかじめ登録してあるメールアドレスに送信して通知し、確認コードを入力させる。IDとパスワードを奪取するだけでは、不正アクセスはできない。しかし、リアルタイム・フィッシングという手法が一般化している。ユーザーにIDとパスワードを入力させた偽サイトは、そのIDとパスワードを真サイトに入力する。真サイトはユーザーに確認コードを送信するわけだが、偽サイトはその確認コードも入力するように促すのだ。

3. パスキーはフィッシング詐欺への銀の弾丸

誰しも疲れなどで不注意になることはある。フィッシング詐欺を防ぐためには、ユーザーがパスワードを入力する認証をやめたほうがよい。

  • 強制的にサイトの真偽を判定する仕組み(SSL/TLSのウェブサイト運営者情報はいちいち確認されない)
  • パスワードを送信しない仕組み(チャレンジ&レスポンス方式)

が必要だ。さらに、

  • ユーザーにパスワードを作らせない(脆弱なパスワードを使ったり、同じパスワードを使いまわしをする人がいる)
  • サイトに登録してある情報が流出しても、そのサイトにすらログインできない(公開鍵暗号方式)

とすると理想的になる。

パスキー(FIDO)と言う認証方式は、以上の特性を満たしている。つまり、フィッシング詐欺に対しては銀の弾丸として働くし、その他、不注意なユーザー操作やサイト運営で問題が引き起こされづらい。

4. パスキーの欠点

パスキーを使うには、ユーザーに秘密鍵とその管理機構のFIDO認証器(Authenticator)が必要になる。FIDO認証器を動かしてよいユーザーなのかをローカルで認証する方法(PIN/カメラ/生体認証デバイス)も必要だ。これ自体はスマホやPCの機能を使ったソフトウェアとして用意できるので、大事ではない。

何かの事故で、ログイン不能になるリスクが高い。スマホやPCが壊れたらFIDO認証器が喪失してログイン不能になる。複数のデバイスで同じFIDO認証器を使えるセキュリティーキーも売っているが、紛失するリスクは小さくない。複数の端末でバックアップ用のパスキーを登録すればよいのだが。

パスキーはローカルでの攻撃にはネットワークからの攻撃に対するほど強くない。スマホのPINは脆弱なパスワードであるし、生体認証デバイスは意外に突破されやすい。子どもが寝ている父親の指でスマホの認証を行い、勝手におもちゃを買い出したという故事*3がある。他に顔認証を写真で突破した*4、赤外線顔認証を加工した写真で突破した*5と言う話題もある。

BitwardenのようなクラウドサービスにFIDO認証器(をパスワードで暗号化したデータ*6)を預ける方法もあるが、クラウドサービスがクラックされると暗号化されているとはいえFIDO認証器が流出するし、クラウドサービスを狙ったリアルタイム・フィッシング詐欺にはパスキーで対抗できない。また、クラウドサービスのFIDO認証器を弾いているサービスもあるようだ。Yahoo!Japanで、うまくBitwardenは使えない。

フィッシング詐欺が氾濫しているので、とくにお金が絡むところはパスキーを使う方がよいと思うが、バックアップを準備し、デバイス盗難に注意しないと痛い目にあう。

*1偽サイトで2段階認証も突破する「証券口座乗っ取り」横行 - 日本経済新聞

*2例えばJavaではパスキーを使うためのライブラリーWebAuthn4Jがある。また、代表的なIDアクセス管理(IAM)システムのKeycloakでも使える。Keycloakを運用していれば業務システムにすぐに組み込める。

*3寝ている親の指で指紋ロック解除、6歳児がポケモン商品を大量購入 - CNET Japan

*4最高レベルのセキュリティと言われた顔認証が...1枚の写真でロック解除されるスマートフォン - MK

*5「Windows Hello」による顔認証、赤外線顔写真で突破される - PC Watch

*6Firefox SyncやBitwardenのようなクラウドサービスによるパスワード同期は大概、ローカルでパスワードを暗号化してからクラウドサービスに送信するようになっている。なお、Firefox SyncはAES-CBC 256暗号を、BitwardenはAES-256-GCM暗号を用いているので、微妙にBitwardenの方が安全だ。

2026年4月18日土曜日

IPv6は地味に普及している一方、IPv4は段々と機能しなくなっている

このエントリーをはてなブックマークに追加
このエントリーをBlueskyに送信

IPv4と完全下位互換の「IPv8」ドラフト公開。IPv6は事実上失敗」という記事が話題になっていた。「IPv6は事実上失敗」は「IPv6の課題を克服」に書き直されたわけだが、IPv6に対する漠然とした失敗感を世間は感じているようだ。

実際にはIPv6はハードウェアとソフトウェアの面でほとんど準備完了しているし、既に多くのサービスで利用されていて、一般消費者の皆様も実際に使っている。IPv8が出てきたとしても、拡張されたネットワークアドレスを使うにはハードウェア(もしくはファームウェア)と(その他の)ソフトウェアの対応が必要で、IPv6が積み上げてきた30年間の普及の差を、急いで詰めないといけない。

2026年4月13日月曜日

駆け出し職業プログラマにオススメしたいJavaをPythonのように使う自己研鑽

このエントリーをはてなブックマークに追加
このエントリーをBlueskyに送信

新卒ソフトウェアエンジニアの研修にJavaとPythonのどちらを使うべきかと言うお題が話題になっていた。この2つに限らず職場で使っているモノを優先し、この2つのどちらも使っている場合はJavaの方がよいとされている。Pythonの方がちょっとした事に使いやすく自発的に学びやすいから、穏当な考えに思える。

逆にちょっとした事にもJavaを使うと、Javaに慣れるようになる。テキストファイルの操作、ウェブ・スクレイピング、ウェブAPIクライアント、ブラウザーなどのアプリの自動化など、コマンドラインで動かす使い捨て色の強いちょっとした事をこなすコードは、Pythonで書かれることが多い。これらもJavaで書いてみよう。

2026年4月5日日曜日

ガバクラ移行で苦労された地方自治体の皆さん、脱パブリッククラウドはいかがですか?

このエントリーをはてなブックマークに追加
このエントリーをBlueskyに送信

デジタル庁のガバメントクラウドに地方自治体の基幹業務を移行させたところ、当初の見込み運用費3割減は遠く達成できず、ほとんどの地方自治体でコスト高になった。

デジタル庁も責任はともかく事実を認めており、ネットワーク構成の複雑化、パブリッククラウドの専門知識のある運用補助者の必要性などを理由としてあげている。さらに、パブリッククラウド向きのアプリケーションの構築、クラウドに詳しい高度人材の育成のような改善策を提案している*1

2026年4月2日木曜日

トランプ大統領(≠アメリカ)の継戦能力は4月末まで

このエントリーをはてなブックマークに追加
このエントリーをBlueskyに送信

2026年2月28日から、アメリカとイスラエルの2度目のイラン空爆が開始された。イスラエルの諜報能力を活かした斬首作戦は戦果をあげてはいるのだが、イランが八つ当たり気味に米国の同盟国に弾道ミサイルや自爆ドローンを打ち込み、ホムルズ海峡を実質的に閉鎖したために経済的に動揺が走っている。いつまで続くのか不安があるが、米軍の作戦行動は間もなく不可能になる。

2026年3月13日金曜日

CI/CDパイプラインがなくともテスト自動化は行えるし、CI/CDパイプラインはテスト地獄で開発効率が低下しがちだよ

このエントリーをはてなブックマークに追加
このエントリーをBlueskyに送信

CI/CDパイプラインは、バージョン管理システムへの変更反映をトリガーに、アプリケーションの①ビルド、②テスト、③パッケージング(含コンテナ化)、④デプロイを自動実行する手法で、インハウス開発でウェブサービスを作っていて、DevOpsになっているところで流行っている。

2026年2月21日土曜日

トランプ関税違憲判決で進むレームダック化

このエントリーをはてなブックマークに追加
このエントリーをBlueskyに送信

米連邦最高裁が1977年国際緊急経済権限法(IEEPA)を理由としたトランプ関税を無効とした。議会が大統領に与えた権限の勝手な拡大解釈を戒めるものだ。市場や企業は判決を歓迎している。トランプ政権に振り回されてきた貿易相手国の外交官も、本音ではほっとしている事であろう。

2026年2月20日金曜日

疎結合なアプリケーションを目指したマイクロサービス化は、システム開発を破綻させるので

このエントリーをはてなブックマークに追加
このエントリーをBlueskyに送信

デジタル庁は業務システムのマイクロサービス化をずっと推奨している。

マイクロサービスは操作的定義では*1排他的なデータベース利用を行うWeb APIのことだ。他のサービスや(ブラウザーで動くJavaScriptを含む)アプリケーションから呼び出されて使われる。このようなWeb APIの集合体によるアプリケーションを指すこともある*2

比較的新しい設計手法なので優れていると思われがちだが、大概のケースで上手くいかないアプローチだと知られている。

2026年2月16日月曜日

日本医科大学武蔵小杉病院のVPNからのクラッキング被害は、医療機器とその監視用VPNアプライアンスをVLANを用いてネットワーク的に隔離すればたぶん防げたよ

このエントリーをはてなブックマークに追加
このエントリーをBlueskyに送信

日本医科大学武蔵小杉病院がクラックされランサムウェアの被害にあった事件*1だが、侵入経路がまたVPN機器とあって、VPNの是非を巡って議論が起きている*2。経験的にVPNはセキュリティーホールになりやすいのは間違いない一方、VPN機器のアップデートがされていなかったり、脆弱なパスワードを利用していたりするのが直接の原因で、テクノロジーが悪いのか利用者が悪いのか明確な境界が無いからだ。

2026年2月9日月曜日

中道改革と言うか立憲民主党の敗北

このエントリーをはてなブックマークに追加
このエントリーをBlueskyに送信

第51回衆院議員選挙は、自民党の大勝、中道改革の大敗となった。とくに小選挙でボロ負けとなり、比例上位が公明党出身者で占められていたので、旧立憲民主党の人々が議席を失うことになった。

高市自民党が(石破自民党よりも)支持されていたのは確かだ。昨年末の自民党の全国的な情勢調査では、単独過半数を回復すると見込んでいた。また、投票率は厳しい気候に関わらず前回選挙を上回っており、前回選挙で投票を行わなかった自民党支持者が戻ってきた可能性が示唆される。立民と公明の統合に関わらず、自民党が勝った可能性は高い。