経緯Twitterを眺めていたところ、Monacoinの盗難事件を発見した。いつもMonappyをご利用いただきありがとうございます。この度、弊サイトに対して外部からの攻撃が発生し、調査の結果ホットウォレット内のMonacoinが盗難されていることが判明いたしました。そのため、現在サービスを停止して調査を行っております。詳細な攻撃の内容に関しては現在調査を進めております。ユーザーの皆様をはじめご関係者の皆様に、多大なるご迷惑をおかけしていますことを深くお詫び申し上げます。attackについてご報告を受け調査したところ、サーバ上にあるホットウォレットよりMonacoinが盗難されていることが判明いたしました。全残高の50%以上を保管しているコールドウォレット内のMonacoinについては影響はありませんでした。従来より対策として必要な承認数を引き上げるなどの処置をしておりましたが、外部からの攻撃により盗難されたものと考えられます。この件を受けてすぐにサーバを切断し確認作業を行っておりましたが、調査の結果ほぼすべてのサーバ上にあるMonacoinが盗難されていることを確認しました。現在も攻撃の内容について調査を行っております。この件につきましてメールアドレスやパスワードなどユーザー情報などの流出は確認されておりません。23:35関連不明だがmonappyに100mona謎の入金あり。てめーはコインを引き出せねーよ)^o^(ケケケって書いてある。皆さん謎解きの時間だ。これはドッキリなのか、ほんとに引き出せない罠をはっているのか、お恵みなのか。attackなどとは関係しないだろうとの声明がでた[https://twitter.com/monappy/status/1035951273143455744:embed]上記声明より引用2018年9月2日午前1時、検証の結果攻撃に至った原因が高負荷時におけるギフトコード機能の不備であることを確認いたしました。2018年8月27日から2018年9月1日にかけて、攻撃者と見られる複数のユーザーがギフトコードを大量に発行しました。同8月29日から9月1日にかけて外部受け取り機能を利用してギフトコードを受け取る際、高い頻度でリクエストを行うことで一つのギフトコードに対し数回の送金が行われてしまい、今回の攻撃に至りました。ギフトコードの処理に関してはデータベースのトランザクション機能を利用しており、本来同じギフトコードを二重に使用することはできないようになっていました。行ロック処理に不備があったため、もしくはcoindの接続がタイムアウトした場合にロールバックが行われることにより、極端なcoindの高負荷時には複数回の送金が行えたものと思われます。この攻撃に際し少額のMonacoinを大量に送付しておくことでcoind送信時の負荷を増大させようとする試みも確認しました。現時点での調査結果は以上の通りですが、引き続き不確定な部分につきまして原因を究明するために調査を進めて参ります。MonappyからMonacoinを送信する際は、monacoindという別のサーバ上のアプリケーションと通信する仕様になっています。この通信がタイムアウト等で失敗した場合はサーバダウンなどで送金に失敗しているとみなして、取引をロールバックする仕様となっていました。ギフトコードの処理に関してはデータベースのトランザクション機能等を利用しており、本来同じギフトコードを二重に使用することはできないようになっていました。高負荷状態でギフトコードを連続して使用しようとした場合、通信を受け取ったmonacoindの応答に時間がかかり、サイト側ではタイムアウトとなってロールバックされたあとにmonacoind側では送金が行われていました。この結果、一つのギフトコードから複数回送金されたものと考えられます。この攻撃に際し少額のMonacoinを大量に送付しておくことでcoind送信時の負荷を増大させようとする試みも確認しました。ListMonappyのアドレスがわからん。このアドレス何者だろう。