私の銀行は最近、顧客のオンラインバンキングシステムを大幅に再設計しました。プラットフォーム全体でセキュリティを管理する方法もレビューされました。ログインに設定できるパスワードは、強制的に6桁、数値 。
これは、私が 安全なパスワードポリシー であると私が考えていたものに対して、長い道のりを歩んでいます。一方、私は私の銀行が彼らが何をしているかを知っていると信じています。
このポリシーがいかに優れているかを理解していただけませんか。
注:
異常?はい、クレイジー?いいえ。理由を理解するために読んでください...
あなたの銀行には強力なロックアウトポリシーがあると思います。たとえば、3回の不正なログイン試行でアカウントが24時間ロックされます。その場合、6桁のPINは、思ったほど脆弱ではありません。1年間、毎日3つのPINを試した攻撃者は、約0.1%しか持っていません。 PINを推測する可能性。
ほとんどのWebサイト(Facebook、Gmailなど)では、ユーザー名として電子メールアドレスまたはユーザーが選択した名前のいずれかを使用しており、これらは攻撃者が容易に推測できます。このようなサイトでは、たとえば60秒間のアカウントの3つの誤ったログインロックなど、より緩やかなロックアウトポリシーが適用される傾向があります。彼らがより強力なロックアウトポリシーを持っている場合、ハッカーは正当な人々をアカウントから締め出すことによってあらゆる種類の問題を引き起こす可能性があります。緩やかなロックアウトポリシーでアカウントを安全に保つ必要があるため、強力なパスワードを要求しています。
銀行の場合、ユーザー名は16桁の数字-カード番号です。通常、カード番号は非公開にします。確かに、あなたはそれをカード取引(オンラインとオフライン)に使用し、平文で財布に入れられます-しかし、それはかなりプライベートです。これにより、銀行はユーザーをサービス拒否攻撃にさらすことなく、より強力なロックアウトポリシーを設定できます。
実際には、この配置は安全です。あなたの家の仲間があなたのカードを見つけた場合、彼らはPINを知らないので彼らはあなたのアカウントにアクセスできません。何千人ものハッカーが何千ものアカウントを一括でハッキングしようとした場合、カード番号がわからないため、ハッキングできません。ほとんどのアカウントの侵害はフィッシングやマルウェアが原因で発生し、6桁のPINは、非常に長くて複雑なパスワードよりもこれらの攻撃に対して脆弱ではありません。銀行にはもう1日はないと思われます-通常のパスワードを使用する他の銀行よりも今日のセキュリティ問題。
あなたはトランザクションが多要素認証を必要とすると述べました。したがって、PIN=が侵害された場合の主なリスクは、誰かがあなたのプライベートバンキングの詳細を閲覧できることです。彼らはあなたの給与や不正な購入の履歴を閲覧できます。6桁のPINは、オフラインのブルートフォース攻撃に対して無防備に脆弱です。そのため、誰かがデータベースを盗んだ場合、ハッシュが解読され、PINが取得される可能性があります。それは事実ですが、それほど重要ではありません。彼らがあなたのPIN=をクラックした場合、彼らはログインしてあなたの銀行の履歴を見ることができます-しかし取引はできません。しかしそのシナリオではとにかくあなたの銀行の履歴を見ることができます-彼らはすでにデータベースを盗んだのです!
したがって、この配置は一般的ではありませんが、結局それほど気違いではないようです。それが持つかもしれない1つの利点は、人々が他のサイトで同じパスワードを再利用しないことです。使いやすさの理由でこれを行ったのではないかと思います。以前はサイトで必要だった長くて複雑なパスワードを思い出せないという人々の不満がありました。
6桁の数字のパスワードではあまり効果がありません。
Troy Huntには優れた 強制されていることについてのブログ が弱いパスワードを作成し、短い数値のパスワードを強制することを含むさまざまな悪い慣行について話し、よく使用される言い訳を提示します
「電話のキーパッドで同じパスワードを使用できるようにしたい」
数値のみのパスワードを要求する唯一の有効な理由は、ユーザーが使用できる入力は数値のみであることです(ATMなど)。 (同様に、人間が読めるパスワードを要求する唯一の正当な理由は、人間がそれを読むことです-テレフォンバンキングだけではなく、悪いサインを使用した場合、ウェブサイトにも)。
しかし、それが理由である場合、完全なqwertyキーボードにアクセスできるのに、なぜオンライン(またはモバイル)で同じ安全でないパスコードを使用するよう強制するのでしょうか。
10個あります6 6桁の可能なパスワード。
未熟練の攻撃者にとって、ユーザー名と無制限の試行があれば、アカウントにアクセスすることはまったく問題ありません。あなたは彼らがあなたのユーザー名を持っていると仮定するべきです。 ユーザー名は秘密ではありません。
銀行がこれを考慮し、3回の不正な試行後に各口座をロックするか、またはキャプチャのようなロボット制限オプションを開始して、その後に再試行するとします。その後、攻撃者は依然としてそのウィンドウ内でランダムなアカウントに侵入する可能性があります。
つまり、1000000のアカウントを攻撃した場合、3に入る可能性があります。また、3000000のリクエストを実行しても、それほど長くはかかりません。
これを、6文字の英数字を使用したパスワードの数と比較してください(ほとんどのセキュリティ標準では、短すぎて複雑ではありません)。
62があります6 = 56800235584可能な6文字の英数字パスワード。それはまだ弱すぎるですが、すでに56800倍強力です!
言うまでもなく、ユーザーデータベースが侵害された場合は、106 可能なパスワードは途方もなく低いエントロピーであり、彼らが使用したハッシュおよびソルティングシステムが何であれ、パスコードを安全に保つことはできません。
データベース違反の場合のあなたの銀行の計画は、恐らく転覆して泣くことです。多分彼らは結果がとても悪いと彼らはそれを計画するつもりはないと思っています。
攻撃者があなたの財務履歴を見ることは本当に大きな問題です。転送をブロックする他の認証方法が安全であっても心配する必要があります。そして、あなたは他の方法が安全であることを期待すべきではありません。
2番目の認証方法なしで、あなたについて他にどのくらいの情報が漏らされていますか?あなたの名前、住所、メール、多分?
これらは、追加の情報を入手するために、あなたに関する背景調査を始めるのに十分以上のものです-これらは、あなたの他のパスワードへの手掛かり、またはあなたをフィッシングする方法に関する良い強力な情報であるかもしれません。彼らはあなたに電話して、信頼を得るためにあなたがこれまで持っていた情報を使って、銀行になりすましてあなたをだまして、最後のいくつかに答えることによって彼らに認証する必要のある悪用の下であなた自身について他の秘密を明かそうとするかもしれませんアカウントにアクセスするために必要な質問。
別の例として、2番目の認証方法が強力なパスワードであるが、あなた(およびほとんどの顧客にとって、「あなた」は技術に精通していない)でも、顧客がever同じユーザー名/メールアドレスとパスワードを使用した別のWebサイトのデータベース違反に含まれ、その後ゲームオーバー。 -このロジックは任意のユーザー名/パスワードベースのシステムに適用されますが、攻撃者が最初の安全でない認証方法によって公開されたあなたに関する他の情報を発見でき、2番目のパスワードがのみ彼らがあなたのお金を受け取ることへの障壁-これは、業界標準が銀行のウェブサイトで2要素認証を要求する前にユーザーに何かを示すことの1つの理由です。
業界標準については、私の銀行には、特殊文字を入力する機能を備えた最大長のパスワードがありません。次に、一連の文字列からいくつかの文字を選択することによってのみ入力できる2番目のパスコードを使用します。ドロップダウン(したがって、2番目のパスコード全体が1回の試行で使用されることはありません)。
私の銀行が帯域外の2番目の認証要素を使用している場合は、これを使用します。コードが私の電話に送信されるなど。
これは悪い、悪い方針です。 10しかない6 または100万の異なる6桁の数字。それは少なすぎます。
使用するハッシュアルゴリズムの速度がどれほど遅くても、オフラインのブルートフォース攻撃を防ぐことはほとんど不可能です。 1回の試行に1秒かかると、11日でパスワードが解読されます。また、攻撃者が複数のIP(たとえば、ボットネットの制御)を使用でき、さまざまなカード番号を試すことができる場合、オンラインのブルートフォースによる巧妙な攻撃を完全に停止するには少なすぎる可能性もあります。
これは、通常のパスワードと同様に、 ほとんどの人がランダムに選択しない という事実によってさらに悪化します。 _123456
_は頻繁に表示され、日付を表す数値も表示されます。実際には、ほとんどのパスワードのログは6×ログよりはるかに少なくなります。2(10)≈20ビットのエントロピー。
より強力なパスワードを選択することを許可してはならない理由はわかりません。この習慣は、彼らが単にセキュリティを気にしないというシグナルを送ります。また、データベースのどこかに、ハッシュの代わりにNUMBER(6)
が格納されていると思われます。
認証の別の要素なしでは支払いを行うことができないということは、少し楽ですが、多くはありません。攻撃者は引き続きアカウントの履歴を見ることができます。これには、非常に機密性の高い情報が含まれている可能性があり、フィッシングにも使用される可能性があります。
これがおそらくあなたに対して決して使われることはないとしても、私があなただったら、私は新しい銀行に切り替えることを検討します。ログイン時に2要素認証を必要とするものが望ましい。
コメントでいくつかの議論があり、別の見方でいくつかの良い答えが浮かび上がってきたので、いくつかの批評について詳しく説明し、対応したいと思います。
しかし、ユーザー名は秘密です!
質問によると、IDカード番号(クレジットカード番号と混同しないでください)は「ほぼ公開」であり、OPはそれらのリストを「公共サービスの結果」と見なしていることをコメントで明らかにしました。つまり、ユーザー名は秘密ではありません。そして、それらはそうである必要はありません–システムのセキュリティがユーザー名が秘密であるという事実にかかっているなら、あなたはそれを間違っています。
アカウントおよび/またはIP番号ごとのレート制限がこれに対応します。
ボットネットを使用するなどの分散型ブルートフォース攻撃は、いくつかのアカウントを破る可能性があります。たとえば、1万台のコンピュータがあり、各コンピュータが1か月に1日に3つのパスワードをさまざまなアカウントでテストするとします。それは約10です6 試み。パスワードが本当にランダムである場合、平均して1つのアカウントが与えられます。現実の世界では、はるかに多くのものが得られます。
もちろん、銀行は理論的には、このような攻撃を検出して防御するための高度なシステムを持つことができます。多分そうでないかもしれません。顧客として、私は知る方法がありません。そして、より高度なことを行うためにパスワードポリシーの権利さえ取得できない組織を信頼することはありません。
オフライン攻撃は無関係です。パスワードが不足している場合、それらが保護している機密データも同様です。
多分そうでないかもしれません。不完全なデータを含むインターネットの周りにたくさんのデータダンプがあります。パスワードがアカウントの履歴に永久に貼り付けられると主張するには、侵害がどのように発生し、その後どのようにデータが処理されたかについて、非常に強力な仮定を行います。
クレジットカードPINは4桁の数字なので、何が問題なのですか?
クレジットカードPINは、2要素認証の1つの弱い要素です。もう1つの要素、つまりカードの所持は、システムをより強力にします。
このパスワードは弱い要素であり、財務情報を保護する唯一の要素でもあります。
明確にするために、銀行がこのシステムを他の手段で安全にすることは不可能だと言っているのではありません。私は誰かのアカウントへの攻撃が成功する可能性があるとは言っていません。私が言っていることは、これは銀行にとって「十分に安全」ではないということです。
銀行はすでに、金融振替のために二要素認証を設定する問題を経験しています。ログインにも使用しないでください。
銀行は(うまくいけば)パスワードをハッシュ化してデータベースに格納するという問題をすでに経験しました。パスワードを6桁に制限するコードの一部を削除しないのはなぜですか?
反対意見:注意してください
ユーザーとして、銀行によって実施されている他のセキュリティ対策の前に PINを知らされていない可能性が高いです。同様の4〜6桁のピンシステムを持つCapitalOne360については、ショックを受けました。しかし、同じコンピューターでPIN=を使用してしばらくしてから、別のマシン(異なるIP、異なるブラウザー)にログインする必要がありました。これを実行すると、実際にpasswordの場合これだけでなく、パスワードの入力に成功した後、ボーナスとしてPINも要求されました。
調査の結果、ユーザーが最初にWebサイトにアクセスして何らかの認証Cookieを受け取ったときにのみ、ブラウザがパスワードを要求することがわかりました。ユーザーアカウントがそのマシンのIP/Cookieの組み合わせで信頼されると、パスワードなしのPINのみのログオンが許可されます。しかし、ユーザーが初めてログインするとき、パスワードを入力するのに[〜#〜] are [〜#〜]が必要です。あなたはその慣習を知らないかもしれません(私がそうだったように)。
機能する有効なパスワードシステムをすでに持っている銀行が6桁の数字のみPIN=番号に完全にビニングすることは信じられないほど信じられません。企業はおそらくばかげているように見えるかもしれませんが、 6桁の認証は常識を覆すだけでなく、PCI規格に違反しているので、これが唯一の認証であると私は心から疑っています。
6桁の数字パスワードは、オンラインバンキングに十分安全ですか?
いいえ、そうではありません。悪意のあるユーザーがこのような認証メカニズムを破る能力があるだけでなく、 PCI-DSS コンプライアンス標準および FFIECガイダンス に違反しているためです認証。さらに、多要素認証が必要でした 2006年以降のFFIECガイダンスによる 。
私はあなたがあなたのウェブサイトの検査で何かを見逃していると確信しています-つまり、特定の状況下でのみ起動する認証の追加の要素があるかもしれません。デバイスまたはIPアドレスを変更した場合。それとも、実際のオンラインバンキングWebサイトについて書いているのではなく、いくつかのサードパーティの金融支援サイト(私があなただったらおそらく使用を停止するでしょう)です。
私は逆張りの立場をとるつもりです。そうです、銀行にとっては十分に安全です。
したがって、これは絶対的なセキュリティの問題ではなく、このパスワードポリシーが利益を最大化するかどうかの問題です。ほとんどの西欧諸国では、銀行の取締役は株主の利益を最大化することが法的に要求されています。
顧客の観点から:
自分のパスワードを総当たりにしようとすることはお勧めしませんが、そうした場合、3〜5回の試行後にアカウントのロックアウトに気付くでしょう(うまくいけば)。これにより、ブルートフォース攻撃の効果が低下します。
私の銀行では、これまでにログインしたことのないコンピューターからログインすると、セキュリティの質問が表示されます。したがって、ハッカーが別のコンピューターを使用している場合、パスワードを推測し、セキュリティの質問に対する答えを知っている必要があります。
あなたが消費者なら、あなたの政府はうまくいけば詐欺があった場合にあなたのお金を返す消費者保護を提供します。
セクターの一般的な慣行と比較して、あなたの状態はそれほど珍しいことではありません。私の銀行には似たようなポリシーがありますが、2つの大きな違いがあります。
ユーザー名は私のカード番号ではありません。私は、PINの送信に使用したものと同様の保護された封筒に郵送でそれを受け取りました。しかしそれは本当の秘密ではありません、それは同様にいくつかの声明で見つけることができます。
私のパスワードは6桁以上の数字です(最大10桁と思います)。しかし、それでも6桁のピンを使用します。
私のオンラインバンキングアカウントも、3回ログインに失敗するとロックされます。そのため、ブルートフォースに強制されることはないと確信しています。あなたの銀行も同じ方針を持っていると思います。契約を読んだり、確認したりすることができます。私は自分のアカウントへのアクセスを拒否されたことはありません。ただし、数字の1つを忘れてブルートフォースにしようとしたことがあるだけです。
セキュリティは弱いように見えますが、実際には、オンラインバンキングではブルートフォースハッキングは実行できません。
銀行は非常に堅牢な不正検出システムと非常に厳密な監視を使用しています。単に時間ベースのロックアウトを使用する他の多くのオンラインシステムとは異なり、アカウントロックアウトは通常、再度アクティブ化するために電話を必要とします。
また、ほぼ確実にログインフォームで偽造防止トークンを使用しているため、エンドポイントで単に投稿リクエストを発行して、それらが機能することを期待することはできません。現実的には、ブラウザーの自動化ハッキングに限定されます。これは、物事をかなり遅くし、セットアップにはもっと複雑なプログラミングを必要とします。多くのオンラインバンキングサイトもランダムに生成されたキーパッドを使用するため、自動化スクリプトはOCRを実行して、どのキーを押すかを認識できる必要があります。
したがって、実際には、ピンの長さが短いことは、他の人が示唆している重大なセキュリティ障害ではありません。
いずれにせよ、ブルートフォースは通常、オンラインアカウントがどのように侵害されるかではありません。フィッシングとソーシャルエンジニアリングは推奨される方法であり、ピンの長さ/複雑さはこれを防ぐのに役立ちません。
ノートで指摘したように:
私のアカウントを入力した人は、別のセキュリティメカニズム(これは適切であると見なします)を通過する前に支払いを行うことができません。
その場合、6桁のパスワードで保護されるのは、アカウントの残高と履歴だけです。
比較のために:日本の銀行から、口座の履歴が印刷されたメールが郵送されてきました。私のメールボックスは保護されておらず、だれでも手紙を受け取ることができます。
したがって、6桁のパスワード(再試行の制限とタイムアウトが設定されている可能性があります)は改善のようです。
一見したところ、誰かがあなたのアカウントにアクセスしてデータ(例:アカウントの残高、および(2要素認証により)トランザクションを実行できる可能性がさらに低い場合。
これはnotであり、ランダムなPINをランダムなPINで簡単に入力できる限り十分に安全です(チェックディジットを含むアカウント番号の正確な形式は、既知の情報であり、これにより検索スペースが大幅に制限されます)。ランダム-ランダムが誕生日のパラドクソンの前提条件であることに注意してください。したがって、運は攻撃者側にあります。
ロックアウトをトリガーするときに銀行がIPアドレスでブロックしない限り(ボットネットから簡単に攻撃を実行できる可能性がありますが)、その強力なロックアウトポリシーは価値がありますまったくないこの攻撃に対して。文字通り、1秒あたり数千のアカウント/ PINの組み合わせをテストできます。
はい、あなたをターゲットにすることは不可能です個人的に、それでもまだターゲット誰か、しかしターゲットsomeoneは実際には不可能ではありません、それは完全に可能ですサーバーに侵入したり、アカウントデータベースなどを盗んだりすることもありません。
誰かがあなたの口座残高と個人データを読み、あなたの収入を一緒に暮らすことができるものとして知っている可能性を考えれば(あなたは隠すことは何もありません!)、それでもそれは心配なことです。
彼らはあなたが誰で、どこに住んでいるのか(そしてそれがあなたの家を盗んだり子供を誘拐したりする価値があるかどうか)を知っているだけでなく、有効な口座名義人の名前と名だけでなく口座番号さえ与えられれば完全に可能です口座振替あなた。
案の定、トランザクションに異議を唱えることができます-4週間以内に気づいた場合。しかし、それがあなたの注意を免れたら、それはあなたにとって不運なだけです。どちらの場合も、大変なことです。
全体像では、実際にはmoreである可能性があります。
コンピュータの人々がセキュリティについて話すとき、私たちは少しのエントロピー、ハッシュアルゴリズム、ブルートフォースの試みなどについて話します。シンプルで避けられないルールを忘れがちです。 人々は愚かです!ユーザーがパスワード、PIN番号、セキュリティの質問/回答を紙に書き留めると、そのすべてがウィンドウから消えます。 、その紙をATMカードで包み、すべてを財布に押し込みます。 (または、モニターの下にある黄色の付箋にパスワードを記入します。)
多要素認証と組み合わせて単一の6桁のパスワードを使用し、強力なロックアウトポリシーを使用することは、「全体像」ではおそらくはるかに優れており、次にいくつかのより複雑なパスワードを使用します。
例を見てみましょう:
旧式:
ユーザーは自分のアカウントを設定し、カードピンを選択する必要があります。彼らは覚えている数字を使うように言われます。ほとんどの人は日付または日付の組み合わせ、または1234を選択します。
次に、ユーザーは、電話をかけるときに「セキュリティの質問と回答」を設定するように求められます。「5年生では、どの小学校に行きましたか」のようなものを選択します。
次に、ユーザーはWebサイトで安全なパスワードを設定するように求められますが、安全なパスワードを本当に思い出せないため「sunsname123 @」と窓口係を設定するため、これらのことを嫌っていますそれらを書き留めますおよびユーザーが財布に入れます。
これはかなり標準的な方法です。ピン番号は、有効な日付である可能性のある番号のサブセットをいくつかの組み合わせで確認するだけで把握できます。秘密の質問は、それが公の知識であり、パスワードがすべての技術的要件または「安全なパスワード」を満たしているため、無意味です。
新しい方法:
ユーザーは自分のアカウントを設定し、6桁の全ピンを選択するよう求められます。彼らはまだ日付に基づいて1つを選択します。
次に、ユーザーは、多要素認証システムをインストールするように手伝われるか、与えられるか、または指示されます(今のところ、キーフォブのふりをさせてください)。
ATM、支店、電話のいずれの取引でも、銀行のスタッフと顧客にPINとMFAコードを提供/受信するように指示できます。
現実の世界では、これはおそらくリスクが低く、セキュリティを重視しない人々がパスワードを忘れたため、セキュリティに関する質問が少ないため、セキュリティに関する質問への回答を提供し、パスワードを再設定して書き留め、財布に貼り付けているためです。 。
グローバルな観点からは十分に安全ではありません。 1つのパスワード番号を使用して、システムが100000アカウントにログインしようとしていると考えてください。多くの銀行がそれに依存している理由は、私の理解を上回っています。 (お金を引き出すことができない)アカウントを表示することでさえ、実際に害を及ぼす可能性があります(アドレス、バランスなど)。
もう1つの問題は、アカウントをロックすることさえ、一種のソーシャルエンジニアリングになる可能性があることです。 3/5間違ったパスワードを入力して他人のアカウントをロックすることはできません。あまり使用されていませんが、多くの害や不便をもたらす可能性があります。誰かが故意に他人のアカウントをロックし、フィッシングの理由で彼を「銀行に代わって」呼び出すと考えてください。または単に彼を怒らせるために(オンラインの復讐など)
はい、問題ありませんが、多要素認証の一部であり*、ユーザーアクションのサイドチャネル検証システムが含まれている場合に限ります**。
私の意見では、安全性の低いソリューションはすべて、現代のインターネットバンクでは適切ではなく、感染したコンピュータやMIBなどには対応していません。
*たとえば、携帯電話で、使用しているコンピュータを保証する必要があります。
**各支払いアクションは、受け入れている支払いアクションの詳細も含むコードとともに携帯電話に送信されるためです。