SMS認証はワンタイムコードを送るシステムがクラックされた場合に、ワンタイムコードを送る先を敵の端末に書き換えられてワンタイムコードが盗まれる
ワンタイムコードを送るシステムがクラックされなければ問題はなさそうだ
では次の可能性はどうだろう?

端末の電話番号が変わったが、該当サービスに新しい電話番号を登録したが、うっかり前の電話番号の登録を削除しなければならないことを忘れていてそのままにしていた

この場合、敵に前の電話番号の端末を入手されたらワンタイムコードが敵にも送られてしまい盗まれることになる

いやいや敵がそんな端末の番号を選択的に入手するなんて非現実的でしょ

では次の可能性も考えてみよう
ターゲットはパスワード管理が杜撰なので簡単なパスワード(pAsSw0Rdなど)を使いまわしており、敵にバレてしまっているとする
尚且つ、敵はターゲットに物理的に近づくことができる友人関係か知り合いだったとする

この場合ターゲットがスマホを油断してテーブルに置いてトイレに行ったり、客との対応に離席している間に、該当サービスにIDとパスワードでログインをすれば、ターゲットのスマホへワンタイムコードをSMSで送らせることができる
しかも場合によっては通知欄にダイジェストとしてワンタイムコードは159928ですなどと表示されるスマホもある
これをチラ見すれば敵にログインを許してしまうことになる

一番あり得るのは、スマホにインストールしたアプリにマルウェアが仕込まれていてSMSの内容を傍受する例。この場合もワンタイムパスは漏れる

以上より、様々な可能性からSMSワンタイム方式は抜け穴があり危険なのである
二段階認証にスマホの電話番号紐づけのSMSを利用するサービスを運営している事業者は時代遅れでセキュリティ意識が低いのである