巫女が死ぬとファイルが消える東方作った

ゆっくりしていってね!!!・・・と
言いたいところだが、
君等(のファイル)には消えてもらう。
実は今まで君たちが巫女だと思っていた
残機の正体は、
ハードディスクの肥やしになっている
マイドキュメントの.docファイルだったのだ。
君等は何も知らずに
作りかけのレポートを削除していたのだよ。
しかしそれは、
私の筋書どおりなのだ・・・
あとはゲームを強制終了させれば
私の計画は完成する。
これからは私の最強の
特別戦闘部隊をもって
君等を抹殺するので
よ ろ し く。

巫女が死ぬとファイルが消える東方作った

ついカッっとなって作った†1。後悔はしていない。

巫女(じゃなくても可)が死ぬ度に、マイドキュメントのファイルがランダムで一つずつ消えていきます。消すファイルが無くなった場合、ゲームがアプリケーションごと終了します。もうこれは死ぬ気で練習するしかないねー

 

パッチダウンロード

すいません公開できません m(_ _)m

公開して割れゲーに紛れて流されると色々ヤバイwのでwwwwww

原理

簡単に言うと、巫女が死ぬ処理に無理やり割り込んで、ファイルを消す処理をくっ付けてるだけです。だから、洞窟物語の「どこでもセーブ」パッチと技術的にはほとんど同じです。ただ、こっちの方が追加されてる処理が多くて複雑ってだけです。

アイデアは「【自己責任】敵機を撃つとHDDのファイルが削除されるシューティングゲームが登場」から貰い、ファイルが消える条件を反転させて一般のゲームに実装した形になります。ルールとしてはこちらの方が緊張感があって良いと思うのですが、どうでしょうか(笑

知らず知らずの内に悪意のある処理が行わせる事が可能

今回は実験なので、ファイルを削除した際にウインドウを表示して削除した事が分かるようになっていますが、もちろんそうした表示処理をすべて消してしまう事も可能です。その場合、プレイヤはファイルが消されていることにおそらく気づかないでしょう。

この実例で、P2P等にこうして改造したゲーム等の実行ファイルを流すことで、ダウンロードした人が全く気づかないうちに悪意のある処理を実行させることが可能という事が分かったと思います。もちろんUACが不要な範囲内で、ですが、それでも個人情報を流出させるには十分です。

現在、キンタマウイルスのようなファイル名を偽装するような手口がよく知られていますが、このファイル名を偽装したウイルスを実行させる方法には引っかかった場合大抵すぐ気づくという難点があります。

しかし今回の手法ならもっとナチュラルに実行させる事が可能でしょう。ゲームと一心同体ですから。

感想と今後の展望

今回、パラサイトルーチンは全部手書きアセンブラですw

正直全部アセンブラで書くのは、まあ…たまにやる分には楽しいがしんどすぎるw 今回はファイルの列挙を行う処理ということで再帰処理が入ってるんですが、スタック操作がなかなか大変でした。まあその分今後解析を行う際の参考にはなったかな、と思いますけどね。

アプリの最後の方にdllのファイルをそのままくっ付けておいて、パラサイトルーチンはdllを分離して実行させて、処理に割り込んだ時の処理はdll内の関数を呼ぶだけ、みたいな感じで、任意のDLLが呼べたりすると楽ですね。もうこんなにたくさん書きたくないわ…。

ふと気づいた

これただのファイル感染型ウイルスじゃね?(

今までずっと「本物のファイルに紛れてるキンタマウイルス」という線で考えてたので気づかなかった。

みんながみんな全く疑うことなく実行しているだろうと思われるP2Pのゲームに入れるのは効果的だと思うが、P2Pの大半の人間はDL専門だとすると拡散させにくいという気はする。特定のファイルだけ気をつければいいならハッシュ指定とかで防げちゃうだろうし。

あ、あと

五月祭お疲れさまでした え、ああ、ちゃんとさきゅばすも作ってるよ 仕様書も無い言語の言語処理系って難しいな…。ニワン語はプロトタイプ型オブジェクト指向ってことでいいの?

  • †1: 製作時間は3時間程度