見出し画像

No329 全銀ネットで何が起きたのか?

2023年10月10日から11日にかけて一部の銀行で振込みなどができなくなるという大変なトラブルが発生しました。

トラブルの対象となる銀行は11行だったようですが、三菱UFJやりそな銀行などのメガバンクも含まれており、影響を受けた取引は500万件を越えていたとのことです。

今回は、このトラブルと全銀ネットの目的についてお話をします。


事故の経緯

全銀ネットは、振込や手形決済といった銀行間の送金処理を行うためのシステムです。
全国銀行協会が運営しているシステムで、銀行だけでなく信用金庫や信用組合も加入している超大規模システムです。

この全銀ネットは、送金処理を行うためのシステム本体に加えて、各金融機関に設置している中継コンピュータというサブシステムから成り立っています。

今回、10月7~9日の三連休を使って14の銀行の中継コンピュータをリニューアルしたところ、10月10日朝から10行で他行への送金(と他行からの送金)が行えなくなり、トータルでは500万件もの取引が行えなくなるという事態になりました。

銀行側システムと全銀ネットは直接通信は行えず、各金融機関専用の中継コンピュータを経由して、全銀ネットを利用する形態となっています。

各銀行側からは、中継コンピュータを経由するしかありませんから、これが動かなくなると全銀ネットが利用できません。

今回のトラブルは中継コンピュータ内のプログラム改修のバグが表面化したものとのことですが、後述する通り、簡単なバグの類ではなさそうです。

なお、全銀ネットには銀行だけでなく、信用金庫や信用組合など千を越える金融機関が参加しています。
そのうち、中継コンピュータのリニューアルは今回の14行が最初で、今後全ての中継コンピュータを更新する予定だったようです。

10月12日の朝からは一時しのぎの改修(バグが見つかっているプログラムを事実上無効化する)を行い、まずは回避しているという状況のようです。

一時しのぎの逃げとはいえ、二日間という超短期間でこれだけの事態を収束させたわけです。

この危機管理能力の高さは本当にすごいものだと思います。
大したものです。

全銀ネットの役割

さて、今回のトラブルでは「全銀ネットって何するシステムなの?」とお思いの方は多いのではないかと思います。

一言で言えば「銀行間の送金処理を手伝うシステム」なのですが、その存在意義がわかりにくいので、詳しく説明します。

そもそもの課題は、銀行振込などの銀行間での送金処理を二つの銀行システムで行うのが難しいという点にあります。

例えば、α銀行のAさんの口座からβ銀行のBさんの口座に3万円を送金するとしましょう。

それはきっとこんな手順ですよね。

 1)α銀行のAさんの口座から3万円を減算する
 2)β銀行のBさんの口座に3万円を加算する

バカバカしいほどあたりまえのことしか書いていませんし、これのどこが難しんだろう?と思いますよね。

ですが、これを二つの銀行間で通信しながら「確実に」成功させようとするとメチャクチャ難しいのです。

例えば、1の減算処理の直後にβ銀行が停電になったらどうしましょうか?
他にも、
 外部からの攻撃でβ銀行のシステムが落ちた場合は?
 バグでプログラムが止まったら?
 β銀行での加算処理でエラーになったら?
 α銀行とβ銀行間でネットワークが不通になったら?
などなど、困りそうな事態はいろいろ想像できます。

銀行システムではどんなトラブルがあっても残高の不一致なんて問題外です。

確かに、銀行システムなど重要な社会インフラではハードウェアの二重化などでかなりの備えをします。
それでも絶対故障しないシステムはありませんし、ましてやバグや外部からの攻撃なんてゼロにできようはずがありません。

トラブルになった場合は完遂はできないにしても、矛盾のない状態(取引前の状態)に戻せなければ、お話になりません。

ですので、何の工夫もなく二つの銀行システムだけで送金を「確実に」成功させるのはものすごく難しいわけです。

この課題への答えは実っにシンプルです。
誰か一人(単一システム)が主体となって一連の作業を責任を持って進めれば良いのです。

もうおわかりでしょうが、その誰かが全銀ネットなのですね。

各銀行は、送金処理(内国為替処理)を行う場合は、全銀ネットに「手続きの指揮を取ってください」と依頼をし、全銀ネットが銀行間の送金処理(実際には日銀当座口座残高の増減)を保証します。

これを全銀ネットという単一のシステムで行いますから、途中でエラーなどが発生した場合も全てを元に戻せます。
後は、各銀行内のシステムでAさんなりBさんなりの残高を変更すれば万事丸く納まるというわけです。

万一、エラーになった場合は全銀ネットは「エラーだったので元に戻しましたよ」と返信をしますから、各銀行システムは再実行を依頼するなど、対応が取れるわけです。

こういった一連の処理の矛盾ない実行やエラー時には元の状態へ戻す仕組みのことをトランザクション処理と言います。

全銀ネットは銀行間のトランザクション処理を保証してくれる非常に重要なシステムなのです。

中継コンピュータ

上述の全銀ネットはトランザクション制御という非常に重要な役割を持つシステムです。

そのためかどうかはよくわかりませんが、全銀ネットへの依頼は必ず中継コンピュータを通すことになっていたようです。
この中継コンピュータと全銀ネット間はVPNで接続をしているそうですので、全銀ネット側の責任範囲をはっきりさせるための仕組みなのでしょう。

今回はこの中継コンピュータ内のプログラムに問題が起きたようです。

最初にこの話を聞いた時に不思議だったのは、これまでトラブルを起こしたことがない全銀ネットがなぜプログラムの改修ミスなどを見逃したのだろうか?という点でした。

問題が起きたのは手数料のチェックプログラムとのことですが、どうも単純なバグではなさそうです。

といいますのは、今回の目的が次期全銀システムに向けた中継コンピュータのリニューアルにあるという報道が見られるからです。

全銀ネットは今までも数年(8年)ごとにリニューアルを繰り返してきています。
現在は第8次システムへの更新中とのことで、中継コンピュータのリニューアルもその計画の一部なのだそうです。

中継コンピュータ自体は全銀ネット側の持ちもの(責任範囲)のようですが、第8次システムでは、コンピュータ自体も新しいものに更新し、置き場所も今までの各銀行内での設置から、全銀ネット側に移動させようとしています。

こうなると、中継コンピュータの設計も動作確認もかなり大がかりなものとならざるを得ません。

後講釈に過ぎませんが、これだけ大きな更新を一気に行ったことが今回の大規模トラブルの遠因なのかもしれません。

まとめ

2023年10月10日から11日にかけて一部の銀行で振込みなどができなくなるという大変なトラブルが発生しました。

他行への送金は銀行にとって最重要機能と言って良いほど重要な機能です。

全銀ネットはその送金処理の実行を保証(エラーの時は元に戻せることを保証)するという重要な役割を担っているシステムです。

それが止まる事態になったのですから、金融システムの危機と言っても良いほどの大変な出来事です。

今回のトラブルは、全銀ネットのシステム本体で発生したわけではなく、全銀ネットと各銀行のシステム間をつなぐ中継コンピュータのリニューアルでのトラブルでした。

中継コンピュータと言うと単に右から左にリクエストを送り直すだけに見えますが、実際には、銀行ごとの様々な事情を考慮したシステムでしょうから、特に大きな銀行向けの中継コンピュータははかなり複雑なシステムではないかと思います。

今回は、その中継システムのプログラムにバグがあり、送金処理が行えない事態となりました。

今回の中継コンピュータのリニューアルは14行だけだったのですが、メガバンクが含まれていたこともあり、500万件を越える取引に影響がありましたので、関係者(特に銀行サイド)の心労は大変なものだっただろうと思います。

最後に、全銀ネット側の危機管理体制の優秀さについて触れます。

今回、全銀ネット側では取引データの磁気テープ持込みを認める、引き落とし不可でも不渡りとならないように依頼する、といった例外措置を即座に取りました。

システム改修についても、対応方針を決め、関係各方面に周知し、修正作業とテストを行い、本番環境への反映する、しかも品質は保って、という離れ技を二日という短期間で完了させました。

今回はプログラムの事実上の無効化対応としましたが、他の選択肢(例えば旧来の中継コンピュータに戻す)といった選択肢も比較検討した上で、よりリスクが低い方法を選択したそうです。これなどは危機管理体制や手順の定着を如実に示すエピソードです。

銀行という業種が危機管理能力に長けているのは事実ですが、それでもこのような体制の構築は一朝一夕でできるものではありません。

ちょっとほめすぎかもですが、こういった全銀ネットの対応はもっと評価されて良いと筆者は感じます。

今回は全銀ネットのトラブルについてお話しました。

次回もお楽しみに。

(本稿は 2023年10月に作成しました)

このNoteは筆者が主宰するメルマガ「がんばりすぎないセキュリティ」からの転載です。
誰もが気になるセキュリティに関連するトピックを毎週月曜日の早朝に配信しています。
無料ですので、是非ご登録ください。
https://www.mag2.com/m/0001678731.html
また、公式サイトでも最新版を公開していますので、そちらもどうぞ。
https://www.egao-it.com/

ttps://www.egao-it.com/

この記事が気に入ったらサポートをしてみませんか?