自分の勉強のためや悪ふざけのために、自分でウイルスを作りたいと思ったことはないだろうか。ウイルスの作成には時間と知識が必要ですが、その気になれば誰にでもできます。ウイルスは、プログラミング言語の仕組みや、オペレーティングシステムやネットワークのセキュリティについて多くのことを教えてくれます。すべてが悪意のあるものであるかのように見えるかもしれないが、ウイルスは単なるコードの断片であり、その目的はそれ自体のコピーをできるだけ多く広めることである。以下のステップ1を見て、自分自身のウイルスを作って楽しんでみよう。
1
攻撃するオペレーティング・システムを決定する。最も一般的な標的はマイクロソフト・ウィンドウズ、特に古いバージョンである。多くの古いウィンドウズ・ユーザーは自分のオペレーティング・システムを使用していないため、新しいバージョンで修正されるかもしれないセキュリティ・ホールに対して脆弱なままになっている。
- Mac OS XとLinuxは、パーミッションの仕組みとオペレーティング・システムの一般的なアーキテクチャにより、どちらもかなりウイルスに強い。全ウイルスの95%はWindowsユーザーを標的にしている。
2
ウイルスをどのように拡散させるかを決める。ウイルスは、他のユーザーに広がってこそウイルスです。ウイルスのコードの基礎の1つであるため、始める前に配信方法を把握する必要があります。一般的な配信メカニズムには、以下のようなものがあります:
- 実行可能ファイル(.EXE、.BAT、.COMなど) - このプログラムはユーザによって実行される必要があり、しばしば他の何か(画像など)に偽装されます。
- マクロ(Microsoft Office) - マクロは、文書や電子メールに埋め込まれるプログラムです。Word、Outlook、その他のマクロ対応製品を対象としています。最も一般的な感染経路は、感染した文書が添付された電子メールです。
- ウェブスクリプト - ウェブマスターが知らないうちにサイトに埋め込まれる悪意のあるコードです。
3
標的とする弱点を特定する。成功するウイルスは、プログラムやシステムのセキュリティの弱点を突いて拡散し、その動作を実行します。これには多くのリサーチとノウハウが必要だが、必要なものを見つける手助けをしてくれるコミュニティがある。
4
ウイルスに何をさせたいかを決める。システムに感染したら、何をさせたいですか?何もしない、メッセージを表示する、ファイルを削除する、そしてもっと悪いことまで、さまざまな効果があります。 4 悪意のあるウイルスを作成し、広めることは、ほとんどの国で重大な犯罪であることに注意してください。
5
言語を選んでください。ウイルスを作成するには、少なくとも1つのコンピュータ言語またはスクリプトツールの基本的な理解が必要です。より複雑なウイルスは、複数の言語を含むことが多い。本当に効果的なウイルスを作るには、.NETや.NET Frameworkに精通している必要があります。
- 実行可能なウイルスの作成に興味があるのであれば、.NETや.NET Frameworkから始めるのがよいでしょう。
- マクロ・ウイルスを作りたい場合は、Microsoft Office などのターゲット・プログラムの言語を学んでください。
-
を使用して、Windows ユーザ向けの悪意のあるプログラムを作成することができます。
6
ウイルスを書き始める。これは長いプロセスになるでしょう。できるだけ多くの実験を行い、使用している言語に応じてコードを複製する方法を研究してください。様々な言語のフォーラムやコミュニティ・ブログにチュートリアルがあります。
- ポリモーフィックコードを研究してください。これは、複製するたびにウイルスのコードを変化させ、ウイルス対策プログラムでの追跡を困難にします。ポリモーフィックコードはかなり高度なもので、言語ごとに異なる実装がされています。
7
コードを隠す方法を研究する。ポリモーフィックコード以外にも、ウイルスを隠す方法があります。多くの練習と読書が必要ですが、あなたのウイルスの寿命を延ばすのに大いに役立ちます。
8
ウイルスをテストする。プロトタイプが完成したら、できるだけ多くのマシンとセットアップでテストしてみよう。様々な構成でセットアップできれば、これが最も簡単である。
- 準備が整う前に誤ってウイルスを放出してしまわないように、テストは必ず封じ込めた状態で行ってください。テスト・マシンを隔離されたネットワーク上に置き、ウイルスの拡散の影響を見てください。
- テスト・マシンで動作するのを観察しながら、ウイルスのコードを調整してください。ウイルスが遭遇するあらゆる問題を修正する。
9
ウイルスをリリースする。ウイルスの性能に満足したら、いよいよリリースです。しかし、その前に、ウイルスを野に放つことから生じるかもしれない結果に直面する覚悟があるかどうか自問してください。その経験を生かし、新しいプロジェクトに取り組んだ方がいいかもしれない。
この記事は、CC BY-NC-SAの下で公開された「 How to Create a Virus 」を改変して作成しました。特に断りのない限り、CC BY-NC-SAの下で利用可能です。
コメント
最新を表示する
NG表示方式
NGID一覧