※注意
本投稿は2018/9/1前後に起きた、Monappyが攻撃を受けユーザーから預かっていたMonacoinの内半分近くが盗難された事件について僕が経験した流れを備忘録として残すものです。事件の全容や詳細を正確に書き記すものではありません。
monappyに100mona謎の入金あり。
てめーはコインを引き出せねーよ)^o^(ケケケって書いてある。
さて、皆さん謎解きの時間だ。これはドッキリなのか、ほんとに引き出せない罠をはっているのか、お恵みなのか。名回答珍回答にカードかモザイク配るよ(*´ω`*)
あと、割とガチで困ってますw pic.twitter.com/bnZoavbzhR— ねっむ@伸縮自在ラッコ (@nempoint) August 31, 2018
monappyに100mona謎の入金あり。 てめーはコインを引き出せねーよ)^o^(ケケケって書いてある。 さて、皆さん謎解きの時間だ。これはドッキリなのか、ほんとに引き出せない罠をはっているのか、お恵みなのか。名回答珍回答にカードかモザイク配るよ(*´ω`*) あと、割とガチで困ってますw
まずこのツイートが回ってくる。Monappy内のトランザクションのようだが100monaという数字に、最近見た奇妙な動きを思い出しdiscordにて共有する。
https://bchain.info/MONA/addr/M8Fj6b7Dk76KjrGcxG3yFp3eufQMLKKs8t
このアドレスである。9/1前後に100monaの送金をひたすら繰り返している。この動き自体が事件と関係あるのかはわからなかったが言い知れぬ不安感を覚える。
このあたりでdiscordやもなっぴどんで何かが起きてる?といった声が出始める。なおMonappy自体はこの数時間前から技術的対処のためメンテナンス中とのことでアクセスできない状態だったがもなっぴどんは別サーバらしくアクセスできる状態だった。
共有の数分後、Monappy公式から最初のアナウンスが出る。
ホットウォレット内の全Monacoinが盗難され原因の調査中との内容だった。これを受けてdiscordともなっぴどんで動揺が広がる。原因は何だ、どの規模なんだと議論が巻き起こる。
ワンテンポ遅れてTwitterのMonacoin界隈以外にも事件の発覚が広まる。初版の公式アナウンスのわかりづらさのせいか盗難の原因がBWAのせいだとするツイートがいくつか出回る。(以下は例、その後訂正ツイートがされています。)
monappyハック。
そしてまたblock withholding attackなのか。ハッシュパワーが低いPoWコインには苦難。https://t.co/J2gc7jxTVU— Junya Hirano 平野淳也 (@junbhirano) September 1, 2018
monappyハック。 そしてまたblock withholding attackなのか。ハッシュパワーが低いPoWコインには苦難。 https://monappy.jp/index.html
これらの意見に対し反論が出る(以下は例)
reorgが多くても2blockしか発生していないので違うと思います。
— なちゃっと (@nachat_dayo) September 1, 2018
reorgが多くても2blockしか発生していないので違うと思います。
その後のアナウンスでギフトコードの問題を不正利用した攻撃であったことが判明する。
9月2日 午前2時30分 攻撃がおそらくギフトコードの問題を使ったものであるとするアナウンスが出る。
9月2日 午前4時40分 攻撃内容の詳細、全体の54.2%のコインが保管されているコールドウォレットには影響がなかったことのアナウンスが出る。
2018年9月2日15:00現在その後のアナウンスはないが運営が今後について相談をしていると思われる。
なお日付が変わるころのTwitterの様子
暗号通貨を盗まれてTLがお葬式ムードの中こんなこと言うのもアレですが、セミなんて1週間しか生きられないのにあんなに元気に騒いでるんですよ。
みんなでGOXすれば怖くない。
辛い時こそはしゃごうぜ(^q^)
ツクツクオーッシツクツクオーッシwwwwwwwwwツクツクオーッシツクツクオーッシwwwwwwwww— zori (@gs100zori) September 1, 2018
セミになったり、
ウッホホホーホホwwwウッホホホーホホwwwウッホホホーホホwwwウッホホホーホホwwwウッホホホーホホwww
— LEMONA🍋USA (@Lemon_ss719) September 1, 2018
ゴリラになったりしていた。外野から見るとなんだこいつら……であるが裏では真面目な議論をしていたことを知っている立場から考えると、皆少なからずショックを受けていてもはや騒ぐしかない、そんな部分があったのだと思う。
また、アナウンスを受けて技術者諸氏が意見を発している。
ユーザーのリクエストに対して逐一coindを叩く設計は極力避けてください。
送金リクエストはDBに格納した後、cronで処理が正しいです。
その際sendmanyで複数の送金を纏めると手数料・処理負荷の点で有利です。— monacoinproject (@tcejorpniocanom) September 2, 2018
bitcoind系を使っているサービスでもし、WEBからのリクエストでcoindが直結しているところがあったら、攻撃を防ぐのは難しいのでやめておいたほうがいいよ。バッチ運用に切り替えよう
— ゆあ☆ミ (@you21979) September 2, 2018
↑coindを使った設計の注意点
Monappy、コールドウォレット比率54.2%って低すぎでは……?
— びりある*@彼女募集中 (@visvirial) September 2, 2018
しかし公式発表どおりだとしたら、コールドウォレットに預かり資産全額が入っていなかったのか…。
Web ウォレットやTipbot 等の、秘密鍵預かり型のサービスは、預かり資産は全額コールドとし、運営者資産をホットに置く。そういう運用が、最近の常識だと思っていた。— もなか (@monamour555) September 2, 2018
↑ホット&コールドウォレットの運用
以上がおおむねの流れである。ポスターラリーが無事に終わりMonappyの運営移行も行われるというこのタイミングでの事件発生に犯人に対して憤りの声が出る一方で、Monappy運営開発陣への労いの声も多数出ている。
もちろん出来ることなら全額保証&サービス継続が一番であると考えている人が多いだろうし今後のことを考えて嘆いている人は少なくないのだがそれでも、Webウォレットはそういうものだ、暗号通貨は自己責任だといった考え故に彼らに文句を言う人は少なくとも僕の観測範囲では限りなく少ない。
僕も同じような考えである。理想は入っていた分すべて保証とサービス継続である。しかしかなりの額が盗難されていることが予想できるゆえにコールドの分が帰ってくればそれで充分であるし、こういう場合に最悪全く帰ってこないことも想定してWebウォレットは使っている。またサービス継続に関しても、運営移行ぎりぎりで起きた事件故に新運営も考え直すだろうし旧運営も移行が出来なければ閉鎖するはずだった。なにより開発者さんの心労を考えると厳しいのではと思われる。
2018年はMonacoinにとって苦難の年となっている。不幸中の幸いにして今回はいちサービスの問題であり、5月のBWAに続くMonacoinブロックチェーンへの追撃ではないためMonacoinという暗号通貨をつかう分には問題ない。しかしほぼすべてのモナコイン勢がアカウントを持っているだろうMonappyというサービスが攻撃を受けた状況が大問題であることに違いはない。