
三菱UFJニコスカードのWebサービス、パスワードを強制的に8桁に切り詰める 73
ストーリー by hylom
他人事だと思っていたら 部門より
他人事だと思っていたら 部門より
11月19日、三菱UFJニコスのクレジットカード所有者向けWebサービスにおいて、9桁以上のパスワードを設定していたユーザーに対し、パスワードを強制的に8桁に切り詰める処理が行われたことが話題になっている(Togetterまとめ)。
ユーザーに送付されたメールによると、処理の内容は以下の通り。
従来、MUFGカードWEBサービスでは、お客様がパスワード登録に際して9桁以上の文字をご入力された場合、お客様のご入力された文字数にかかわらず、頭8桁をパスワードとして登録し、その後のご利用時に照合させていただいておりました。
このたび、MUFGカードWEBサービスのログイン方法変更に伴い、同サービスのパスワードの文字数を6~8桁に限定し、ご利用時にはそのすべてを照合させていただくことにいたしました。
パスワードご登録時に9桁以上ご入力されたお客様におかれましては、前述のとおり、頭8桁をパスワードとして登録させていただいておりますので、ご利用時にはこれをご入力くださいますようお願い申しあげます。(9桁以上入力された場合はエラーとなり、ログインできませんので、ご注意ください。)
ユーザーにはこのようなメールで通知が行われているものの、Webサービスのログインフォームが表示されているトップページには一切このことが表示されていないことが混乱に拍車を掛けている模様。
その前に長すぎる会社名どうにかしろ (スコア:4, すばらしい洞察)
以前、三菱東京UFJ銀行から登録している住所を長すぎるから切り詰めろ、という
依頼が来たの思い出した。
自分たちはどんどん会社名伸ばしておいて、顧客には短縮を強いるなよと思う。
Re:その前に長すぎる会社名どうにかしろ (スコア:4, おもしろおかしい)
ちゃんと三菱東京UFJ銀行も名前切り詰めてますよ。
本来なら、三菱横浜正金十一百三十四名古屋貯蓄堀川豊島幅下津島笠松西尾金城宝飯貯蔵安達多治見淀橋伊藤貯蓄中埜内海知多伊藤三十四百二十一百四十八十三銀行なのが、ずいぶん短くなっています。
パスワードの桁数 (スコア:2)
パスワードの桁数を限定する理由がよくわかりませんよね。
DB の定義を CHAR(8) にしてそのまま保存しているのでしょうか?
ハッシュ化して保存するのであれば桁数なんて影響無いですし。
ちょっと不思議な出来事ですね。
Re:パスワードの桁数 (スコア:5, 参考になる)
例えば、昔の UNIX で、DES を利用した暗号化形式だと、ASCII の文字コード(7bit)をつなげて DES の鍵(56bit)して使う、という事をしているから、原理的に最大8文字で、もし、9文字以上のパスワードだったら、先頭から8文字文だけを使って DES の鍵とする、という事をします。
おもいっきり邪推すると、この「古典的な形式」でパスワードを保存していて、「9文字以上は切り捨て」とやっていたのを、「パスワード長が9文字以上だったら弾く」という処理を追加したのかな、と。
で、パスワード長を長くしたいと思った場合、「古典的な形式」とは言え、保存されているパスワード情報から平文を戻すには時間が掛かるし(本当にそうだとしたら、一応、ソルト付きなのでレインボーテーブルは使えないから、ブルートフォースしかない)、もし9文字以上のパスワードを設定している人がいても、実際に有効なのは8文字目までで、9文字め以降は、そもそも切り捨てられているから、仮に平文のパスワードを戻した上で、9文字以上が使える形式で保存しようとしても、ユーザが覚えている9文字目以降の文字が復元できないことになります。
で、一旦、9文字以上のパスワードを拒否することで、必ず8文字以下の状況を作り、その上で、パスワード長の拡張対応をするようにした、とか...。
ただ、もし、9文字以上にする予定があるのだとしたら、素直に、新規、及び、パスワード変更のタイミングで新しい形式で保存し、既存ユーザでパスワードを変更していない人には、変更を促すようにした上で、旧形式で認証する、というのが正しいと思うんだけど。
Re:パスワードの桁数 (スコア:1)
そういうのをなくすために PBKDF2 のような規格があると思うのですが、
ちゃんと使っている所は少なそうですねぇ・・・
Re:パスワードの桁数 (スコア:3, 興味深い)
昔電車内で聞いた世間話。
おばさんがパスワードを忘れたから、忘れた人用のページで再発行。
「面倒くさいことさせられた上に、今までのパスワードと違うから何度も再発行しちゃった」
「よくよく見てみたら勝手にパスワード変えられちゃってるのね。酷い話よ」
「同じパスワードにしてくれないとまた忘れる。せっかく他の所とパスワード合わせてるのに」
とこんな感じ。(要約)
Re:パスワードの桁数 (スコア:2, すばらしい洞察)
パスワード忘れてないじゃん。
Re:パスワードの桁数 (スコア:1)
話を聞いてたら
パスワードは
『名前』とか『誕生日』とか『利用するサービス名』とかを組み合わせた
何かしらの法則をもたせてたらしい。
コレ書かないとイミフだったねごめん。
Re:パスワードの桁数 (スコア:1)
じじいの昔話じゃ.
昔はの, 9文字目より先は無視する, 「です」というやつが当たり前のようにのさばっていた時代があったんじゃ.
当時はいろいろ厳しい時代じゃった, 今の若いもんにいうてもピンとこんようじゃが.
その名残かもしれんのう.
Re:パスワードの桁数 (スコア:2, 参考になる)
これ結構知られてない(忘れられている・引き継がれてない)んですね。UNIXでも使われてたのに
参考: http://www.atmarkit.co.jp/aig/02security/des.html [atmarkit.co.jp]
# 暗号化方式変えるための1ステップなのかなーって気がしないでもない
Re: (スコア:0)
crypt関数のこと?
DESのせいじゃないんだけど…
Re:パスワードの桁数 (スコア:3, 興味深い)
初期の crypt 関数は、前述の「DES を使って、パスワード文字列を不可逆な文字列にする」という処理をしていました。
今でも、この古典的な形式を扱えたと思いますが、今の crypt 関数はいろいろ拡張されて、MD5 や SHA-256 を使った形式にも対応している、といったのが現状です。
手前味噌ですが、glibc の crypt 関数が MD5 を使った時の処理 [hatena.ne.jp]を調べた事があります。
あと、DES を使った古典的な処理に関して、ここ [wikipedia.org]に記述がありました。
パスワードを DES の鍵として、固定の内容を暗号化、というのは分かっていたんだけど、その「固定の内容」は、上の Wikipedia の記述を読むと、オールゼロのデータだったんですね。(encrypt an all-bits-zero block)
Re: (スコア:0)
うちの会社のイントラも、シングルサインオンが
「セキュリティ向上のためにパスワードは8桁”ちょうど”だけに設定してください。」
という謎システムになっています。
情シスに「なんで8文字を超えたら駄目なのか?」と聞いても「セキュリティ上の理由でそうなってます」のコピペ回答しか返ってこず、
しかたなく使ってますが…
Re: (スコア:0)
「8文字を超えたら駄目なのか」じゃなくて「8文字以上が入力可能なシステムはむろんの事、8文字以下が入力可能なシステムよりもパスワードのバリエーションが少なく脆弱という見方も可能な状態なのだが、なぜセキュリティ向上などという嘘を付くのか」って聞いて見て欲しいな。
# 任意のパスワードが設定可能な時点で、8文字以下もOKだと弱いパスワードで満足する奴が居るからって言い訳は通用しない。
Re:パスワードの桁数 (スコア:2)
8文字丁度なんて、攻撃する側からすればとても良い情報だよね。
そうでもない。
使える文字を ASCII 図形文字(英数記号と半角スペース)の 95 文字とすれば、
950 + 951 + 952 + .... + 958 = 6,704,780,954,517,120 通り。
「8文字以下」が「必ず8文字」であった時に、少なくなるバリーションは、950 + 951 + 952 + .... + 957 = 70,576,641,626,496。減った割合は 70,576,641,626,496 / 6,704,780,954,517,120 = 1.05 %。
実は、大差ない。
「8文字以下」という事が分かっている事は大きな情報だけど、「必ず8文字」は意外にインパクトが小さい。
Re:ハッシュは使っちゃ駄目みたいですよ (スコア:2)
ハッシュは使っちゃ駄目みたいですよ
難しくてよくわかんないですが、bcrypt を使え!
って事らしいです。
この話ははじめて聞きました。興味深いので後でじっくりと読ませていただきます。
三菱UFJニコスは解約したほうがいい (スコア:2)
ここから導かれる結論は、パスワードの重要性すら理解できない三菱UFJニコスはセキュリティーが低いから解約したほうがいいという事だ。技術は技術屋に任せればいいといった事も解らずにわざわざセキュリティーを低くするシステム変更の指示がまかり通る体制でWebサービスが構築されているるようでは、他にも「もっと凄いこと」をやっているかもしれないので。
お詫びと訂正 (was:三菱UFJニコスは解約したほうがいい) (スコア:2)
日曜朝の「機密戦隊、パスワジャー」 (スコア:2)
情報教育は3才から。日曜朝の「機密戦隊、パスワジャー」 で教育だ!
悪者 「次にパス・レッドのカードをWebからハックさせてもらおう!」
レッド「ふっ、俺のパスワードは長くて強固だ。13ケタで数字と英字を混ぜてある」
悪者 「どうかな。我らの凶悪兵器ブルートフォースGPU-Zを使えば 10分以内で...
あれ、10秒で解けちゃった。18187979だな」
レッド「そんなばかな!数字のあとの英文字はどこに消えた?18187979ufufuだったのに」
悪者 「バカモノ。三菱UFJニコスのパスワードは9桁以上でも11月19日に8桁に切り詰められたのだ。」
レッド「俺としたことが不覚...自爆ボタンだ!」 ドカーン。
理由は案外… (スコア:2)
永世小学六年生神アイドル支持者(バランス取らなくっちゃなぁっ!!)
以前のみずほ銀行は6文字までだった (スコア:1)
ので普段のパスワードが切られていたのだけど、これが伸びたので普段のパスワードを入れるとエラーになったのを思い出した。
何文字まで伸びたんだっけ………半角英数6桁~32桁 [mizuhobank.co.jp]!!
文字数多いのを切る銀行系カードっつーのもどうかなぁ。
小文字・大文字・数字・特殊記号が最低一つづつ入って8文字とかじゃないとダメダメとか言われても困るけどありそうだよなぁ
Re: (スコア:0)
グンマー銀行が現在進行形でやばいような気がする
・せっかくトップページ [gunmabank.co.jp]はEVSSL対応してるのに、いざ利用しようとするとanser.or.jp(EVSSLだけどNTT DATA名義)
・パスワードは6~12桁と一見マシだけど数字、英数大文字のみ。記号、英数小文字が使える8桁とどっちが安全なんだか
・ログイン時に口座の4桁暗証も要求される
Re:以前のみずほ銀行は6文字までだった (スコア:1)
>・ログイン時に口座の4桁暗証も要求される
最小4桁だが、MAXで12桁までいけるって書いてあるけど…………
(キャッシュカードの暗証番号とは無関係)
まさか「4桁」とあるのを真に受けてキャッシュカードの暗証番号と同じにしてるとか?
ちなみに私は4桁にしてるけど、OTPを併用してるのでまあいいや。
もっとも、実際の取引には乱数(第三暗唱)を使うと云っても、
ログインパスワード(第一暗唱)と暗証番号(第二暗唱)を同じ
画面で入力させるセンスの悪さは、どうしようもない。
ファミマクレジットは5-10字 (スコア:0)
おまけに小文字になる罠もあったので、初期設定であたふたした。
# 文字種も悩みではあるんだろうけど、数字必須にしてるだけましか?
M-FalconSky (暑いか寒い)
Re:ファミマクレジットは5-10字 (スコア:1)
ファミT/ポケットカードのシステムは、パスワードに大文字も使える…ように見えるんですが、
実際はシステムには小文字で格納されている、というやつですね…。
ログイン時にもパスワードの大文字小文字区別してないもんだから、「大文字を混ぜたパスワード」で
ふつうにログインできる。
で、「小文字オンリー」であることに気づかないユーザは3Dセキュア(これは大文字小文字区別する)で
認証が通らなくてエエエッとなる
# オレだよ、オレ orz
今じゃ利用登録ページやQ&Aページに書いてあるんだけど、むかし登録した時にそれ書いてあったかなぁ?
8文字まで詰めたワケじゃないんでは? (スコア:1)
元々ハッシュでパスワードを保存しているとしたら
ハッシュを生成するタイミングで8文字に切り捨てられてるわけですよね?
で、改修前の認証では、入力文字を8文字までしか認識しないハッシュ生成ロジックを使っていたか
もしくは8文字までに切って処理してたかだけど、新しい認証ロジックに切り替える時に
ハッシュ生成に8文字より長い文字列を利用するロジックが使えるようになったんじゃないですか?
この時の以降の手順としては、過去のデータも使えないといけないけど
パスワードそのものが残っているわけじゃないからデータを使い回しできないと大変。
なので
・昔のデータはそのまま旧タイプのハッシュデータを移行
・8文字以下のパスワードを登録するときは旧タイプのハッシュで登録
・8文字より長いのパスワードを登録するときには、新タイプのハッシュを使って登録
こうしとけば、入力されたパスワードの長さによってハッシュを切り替えることで長いパスワードも使えるようになる。
こうした時に出てくる弊害が、今回の問題だよね。
つまり、入力した長さが8文字より長い場合は強制的に新ロジックでチェックされてしまう。
8文字に詰められてしまうというのはわかりやすく表現した結果じゃないかなと思うんです。
どうしたもんですかね?この場合。
パスワード9文字以上の時は、まず9文字以上のハッシュでチェックして一致しなかったら
8文字にカットして認証チェックしてみるべきでしょうか?
それ、何だか間違ってるきがするんですよねぇ……
まぁ、昔からやってたことだから別にありっちゃありなので改修を入れるとしたらこの方向?
Re: (スコア:0)
たれこみちゃんと読めよ
元から最大8文字でしたよ (スコア:1)
ニコスの会員向けサービス(Net Branch)のパスワードは昔から最大8文字までしか
入力できませんでしたよ。
実際、私は昔から利用してて8文字しか入力できないことが不満でした。
公式のお知らせも出ましたので参考にどうぞ。
http://www.cr.mufg.jp/corporate/info/pdf/2012/121120_01.pdf
9文字以上設定してたからログインできなくなったとかつぶやいてる人たちは
よくわかりませんが、何かの間違いでしょう。
もしかして (スコア:0)
パスワードを8文字までの平文で格納しているとか。
混乱ということだけを考えれば (スコア:0)
> 9桁以上入力された場合はエラーとなり、ログインできませんので、ご注意ください。
こんなん混乱を助長するだけなんだから。
入力したパスワードも8桁に切り詰める処理しろよ。
その上で
「今後は8桁になる」旨を表示すればいいのに。
Re: (スコア:0)
混乱を考えれば、
通知も改修も何もしなければよかったのです。
なんで「8桁以上入力すると照合しなくなるように改修した」のでしょうね。
今までは無視して照合してたのに。
他システムとの連携時に「こんなアホなパスワード照合があるかい」と言われたのでしょうか。
それはそれで正論ですが。
(一応は)前進なんだけど (スコア:1)
なんで「8桁以上入力すると照合しなくなるように改修した」のでしょうね。
今までは無視して照合してたのに。
要するに、9桁め以降を無視するのを止める、ということは、近い将来には
パスワードを9桁以上格納してチェックするようになる、ということでしょう。
過去に9桁以上を格納していなかったのは今更どうしようもないけれど、
改善していく方向にあるということですよ。
Re: (スコア:0)
うーん、それなら、
リニューアル後の初回ログイン時に8桁目までしか見ないのは「データを持ってないなら仕方ない」と思うけど、
ログインしたら9桁以上のパスワードに変更できるように今からしといて欲しい気がする、けど
# ムリか
Re:(一応は)前進なんだけど (スコア:1)
普通、元が何桁だろうがハッシュ後の桁数は同じだと思うのですが。
単純に入力時のチェックの問題だけじゃないんでしょうかね。
Re:混乱ということだけを考えれば (スコア:1)
8桁の安全度しかないものを、
実際以上に安全であるかのように誤認させ続けるよりは
マシだと思いますよ。
Re: (スコア:0)
じゃ、直しますって修正したら
直し方が斜め上を行く修正方向だったと…
いまどき、こんな仕様変更通す神経が判らん。
某カードの、暗証番号確認サイトよりはマシだけど
普通は、だれか止めるでしょ。
切り詰めるも何もいまさら (スコア:0)
お客様のご入力された文字数にかかわらず、頭8桁をパスワードとして登録
ってことは、もともと9文字目以降は「使われていなかった」と言えるわけで、
そんな「9文字目以降はでたらめでも通る」状態だったことがコワイ…
# もっとも、9文字以上の入力を受け付けておいてエラーになる、って変更のしかたも
# どうなのよとは思うけど…
Re:切り詰めるも何もいまさら (スコア:3)
いや、こういう実装自体は昔から存在するから、その点だけでは非難できないよ。
ていうかググったら昔にも話題になってた。
http://srad.jp/story/07/05/07/0615253/%E9%96%93%E6%8A%9C%E3%81%91%E3%8... [srad.jp]
今回の問題は、どっちかというと「勝手に8文字に詰めた」というのと、「分かりやすい告知がなかった」というところかと。
theInsiderman(-1:フレームの元)
Re: (スコア:0)
確かに使ってないけど、勝手に8cmに切り詰めないで!
別の視点で (スコア:0)
割りとパスワードっていうと8文字って多いですけど、なんで8文字なんですかね?
組み合わせ的に4文字+4文字で8文字なのかなぁ、とも思いますが
記憶できる文字数的に8文字ってのが無難ってことなんでしょうか
Re:別の視点で (スコア:1)
末広がりで縁起がいいからです
Re:別の視点で (スコア:1)
コの業界では2nで物事を勘定する習慣があるからでしょう。
4文字では短いし16文字では長い。間を取って8文字。
メインフレームのファイル名も8文字しか使えなかったし(正確にはメンバ名だけど)。
銀行側の怠慢にしか見えません (スコア:0)
昔の実装はともかく、どっかのシステム更新時に拡張はできたはず。
またか。 (スコア:0)
合併前のDCなのだが。
サイトリニューアル時に"パスワードはそのまま使用できます"とあったのに、先頭が数字のパスワードだった私のは使えなくなってた。
…って平文でパスワード持ってた可能性があるって事か…
8文字は短かすぎる (スコア:0)
普段から17文字以上のパスを使ってると、8文字は短かすぎて不安になる。
記号を混ぜるなと文句を言うやつとかもそう。
どんな理由で制限かけてるんだか。生値で持ってるんじゃないかと疑いたくなる。
Re: (スコア:0)
省略しない人なので同感、というか8文字に納めるのもめんどくさい。入力しにくいし
そもそも、入力制限する意味がわかんない。
保存する情報は2種類のハッシュ値だけで事足りるわけだし。
UNIX系のシステムにログインするわけじゃないんだから
パスワードじゃなくてパスフレーズにするべきで
どうして、わざわざセキュリティレベルを落としてめんどくさい方向へ持って行くのかと
文句を言いたい。
昔の定番のままで十分だと考えている人が多すぎる
セキュリティレベル上がるのなら便利な方がいいじゃないか
ちなみに、今のPC性能だと8文字程度だとハッシュ値がもれても、パスワードを簡単に逆算できます。
Re:8文字は短かすぎる (スコア:1)
>ちなみに、今のPC性能だと8文字程度だとハッシュ値がもれても、パスワードを簡単に逆算できます。
今時、128ビットくらいのソルト付きハッシュで SHA-256 を使うと思うので、なかなかパスワードの計算は難しいとおもいます。
こういうサイトのloginってブルートフォース対策ってしてるのかな? (スコア:0)
x回失敗すると、しばらくloginできませんとか。
オレのブラックカードがやばいぜ!
まあ8文字あればなんとかなるじゃろ (スコア:0)
当然このあたりの文字を全てパスワードに使える [srad.jp]んだよね?
だったら頑張って設定すればそこそこ強めのパスワードになるから無問題(てへっ)
自分からセキュリティ弱体化していくのか…(困惑) (スコア:0)