Linuxにおけるマルウェア

本項**Linuxにおけるマルウェア**ではLinuxを対象にしたウイルス、トロイの木馬、コンピュータワームといったマルウェア、および対策ソフトウェアについて解説する。 LinuxやUnix系オペレーティングシステム (OS) はセキュリティに優れていると考えられているが、当然ながらマルウェアの問題はある。

Linuxは、いまだにMicrosoft Windowsが直面しているようなマルウェアの氾濫という脅威に晒されていない。マルウェアがルート権限を取得できないことと、Linuxの脆弱性の発見に対する迅速なアップデートによるものだと考えられている。

とはいえ、Linux向けにかかれたマルウェアは増加していて、2005年から2006年にかけて422から863と倍になったとのことである。
Windows向けのウイルスは約114000でLinux向けのウイルスは、Windowsウイルスの総数の0.76%にあたる。

## Linux のかかえる問題
Linuxのマルウェアについて、Kaspersky Labのシニア・テクニカル・コンサルタントShane Coursenは以下のように述べている。

しかし、このような見方は普遍的なものとは言えない。Linuxの熟練システム管理者である Rick Moen は

と述べている。

一部のLinuxユーザーは、外部とやり取りするファイルをスキャンするために、Linuxにアンチウイルスソフトを導入する必要性を議論している。例えば、このようなソフトウェアであるClamAVは、Microsoft Office マクロのウイルスや携帯電話むけのウイルスを除去している。。 SecurityFocus の Scott Granneman は以下のように述べている。

### ウイルスとトロイの木馬
信頼できるソフトウェアレポジトリを使うことでマルウェアを実行する危険は大変小さくなる。なぜならパッケージ・メンテナがマルウェアでないことをチェックしているからである。この場合、安全な経路でファイルのチェックサムをダウンロードするので、古典的な中間者攻撃やARP poisoning、DNS poisoningといった手口は検出できる。電子署名を確認すれば、攻撃コードをかけるのはオリジナルの作者、メンテナ、システム管理権限を持った人（これは鍵やチェックサムファイルの取扱いによって決まる）に限られる。

つまり、トロイの木馬と、ウイルスにたいする欠陥は、完全には信頼できない開発元のソフトウェアを実行した場合と、そのような理由から標準レポジトリとしては外されたようなレポジトリからソフトウェアをインストールして実行することからくることになる。

### ワームと個別攻撃
昔から、UnixライクなOSではネットワークからの要求に対応する、SSHやWebサーバといったプログラムの脆弱性が問題になっていた。また、運用に問題があり、弱いパスワードが設定されている場合や、Webサーバでは脆弱性のあるCGIスクリプトが使われている場合もある。これらはワームや個別のターゲットに対する攻撃で問題になる。セキュリティアップデートを怠っていたり、ゼロデイ攻撃の場合、この様な脅威に晒される。

### バッファオーバラン

古いLinuxのディストリビューションでは、比較的バッファオーバランの問題に弱かった。つまり、プログラムがバッファオーバランに関する脆弱性を抱えていた場合、カーネルによる保護は限定的で、そのプログラムを実行したユーザの権限下では任意のコードを実行することができた。setuid bitを設定することで、非特権ユーザのプログラムの欠陥からルート権限の奪取までできるこのような状況は、攻撃者にとって魅力的な状況だったと言える。この問題は、2009年のASLRのカーネル導入によって大体解決された。

### クロスプラットフォームのウイルス
2007年からクロスプラットフォームのウイルスが登場するようになった。このことは、OpenOffice.org のウイルス*Bad Bunny*の出現によって始まった。

コンピュータセキュリティ企業SymantecのStuart Smithによれば、
「このウイルスが問題なのは、スクリプト環境、拡張、プラグイン、ActiveX、といったものがいかに攻撃されやすいかということを示すからである。機能拡張に夢中になっているソフトウェア・ベンダーでは、いつもこういった問題は忘れられているからね...。クロスプラットフォーム・クロスアプリケーション環境で生き残るマルウェアの能力は、ウェブサイト経由で配布される傾向がさらに強まってきたことと特に関係があると考えている。 このようなウイルスを使って、プラットフォームに関係なくウイルスに感染させるJavaScriptをWebサーバに置くようになるのは時間の問題だろう。」
とのことである。

### ソーシャル・エンジニアリング
一般に、Linuxはソーシャル・エンジニアリングを使った攻撃に弱い。実際GNOME用の視覚効果アプリケーション・テーマファイル配布サイト Gnome-Look.org では2009年12月にDoS攻撃を行うプログラムを仕掛けたスクリーンセーバが発見された。

## アンチウイルスソフト

サーバ向けを中心として、以下のようなソフトウェアがある。

* AVG Anti-Virus (商用・フリーウェア)
* Avira (商用・フリーウェア)
* BitDefender (商用・フリーウェア)
* ClamAV (オープンソース)
* Dr.Web (商用) 
* ESET (商用)
* F-Secure Linux (商用)
* Kaspersky Linux Security (商用)
* Linux Malware Detect (オープンソース)
* McAfee VirusScan Enterprise for Linux (商用)
* Panda Security for Linux (商用)
* rkhunter (オープンソース)
* Sophos (商用)
* Symantec AntiVirus for Linux (商用)
* Trend Micro ServerProtect for Linux (商用)

## マルウェアの一覧

以下にLinuxのマルウェアを挙げる。ただし、これらは基本的に過去のマルウェアのリストであり、実際の脅威は今後新しく作られるマルウェアや、新しく発見された欠陥やマルウェアに利用されてこなかったような欠陥を突く攻撃であることに注意されたい。

### トロイの木馬
* Kaiten - Linux.Backdoor.Kaiten trojan horse
* Rexob - Linux.Backdoor.Rexob trojan
* Waterfall screensaver backdoor - on gnome-look.org
* Droiddream

### ウイルス

* 42 
* Arches 
* Alaeda - Virus.Linux.Alaeda
* Bad Bunny - Perl.Badbunny
* Binom - Linux/Binom
* Bliss - requires root privileges
* Brundle
* Bukowski
* Caveat 
* Coin 
* Diesel - Virus.Linux.Diesel.962
* Hasher 
* Kagob a - Virus.Linux.Kagob.a
* Kagob b - Virus.Linux.Kagob.b
* Lacrimae (aka Crimea) 

* MetaPHOR (also known as Simile)
* Nuxbee - Virus.Linux.Nuxbee.1403
* OSF.8759
* PiLoT
* Podloso - Linux.Podloso (The iPod virus)
* RELx 
* Rike - Virus.Linux.Rike.1627
* RST - Virus.Linux.RST.a (known for infecting Korean release of Mozilla Suite 1.7.6 and Thunderbird 1.0.2 in September 2005)
* Satyr - Virus.Linux.Satyr.a
* Staog - obsoleted by updates
* Vit - Virus.Linux.Vit.4096
* Winter - Virus.Linux.Winter.341
* Winux (also known as Lindose and PEElf)
* Wit virus
* ZipWorm - Virus.Linux.ZipWorm

### コンピューターワーム

* Adm - Net-Worm.Linux.Adm
* Adore
* Cheese - Net-Worm.Linux.Cheese
* Devnull
* Kork
* Linux/Lion

* Linux/Lupper.worm
* Mighty - Net-Worm.Linux.Mighty
* Millen - Linux.Millen.Worm
* Ramen worm - targeted only Red Hat Linux distributions versions 6.2 and 7.0
* Slapper
* SSH Bruteforce

## 脚注