Linuxにおけるマルウェア

本項LinuxにおけるマルウェアではLinuxを対象にしたウイルス、トロイの木馬、コンピュータワームといったマルウェア、および対策ソフトウェアについて解説する。 LinuxやUnix系オペレーティングシステム (OS) はセキュリティに優れていると考えられているが、当然ながらマルウェアの問題はある。 Linuxは、いまだにMicrosoft Windowsが直面しているようなマルウェアの氾濫という脅威に晒されていない。マルウェアがルート権限を取得できないことと、Linuxの脆弱性の発見に対する迅速なアップデートによるものだと考えられている。 とはいえ、Linux向けにかかれたマルウェアは増加していて、2005年から2006年にかけて422から863と倍になったとのことである。 Windows向けのウイルスは約114000でLinux向けのウイルスは、Windowsウイルスの総数の0.76%にあたる。 Linuxのマルウェアについて、Kaspersky Labのシニア・テクニカル・コンサルタントShane Coursenは以下のように述べている。 Linuxにおけるマルウェアの発展は、単純にLinux、特にデスクトップOSとしてのLinuxの人気が高まったことに起因する。 ... OSの利用の拡大は、そのままマルウェア製作者の興味の拡大に結びつくと言っていい。 しかし、このような見方は普遍的なものとは言えない。Linuxの熟練システム管理者である Rick Moen は [そのような議論は] Webサーバや科学技術用ワークステーションといったデスクトップ用途以外の分野におけるUnix支配を無視している。Apache httpd Linux/x86 ウェブサーバを攻略したクラッカーが、恐ろしく多くのプラットフォームをターゲットにした環境での攻撃への応用に簡単に成功し、クラッカーとしての名をはせる、などということがあるだろうか。少なくても、そんなことはまだ起こってない。 と述べている。 一部のLinuxユーザーは、外部とやり取りするファイルをスキャンするために、Linuxにアンチウイルスソフトを導入する必要性を議論している。例えば、このようなソフトウェアであるClamAVは、Microsoft Office マクロのウイルスや携帯電話むけのウイルスを除去している。。 SecurityFocus の Scott Granneman は以下のように述べている。 ...ある種の Linuxマシンには間違いなくアンチウイルスソフトが必要だ。たとえば、Samba サーバとか NFS サーバには、ウイルスを広める可能性のある、WordやExcelなど仕様がオープンでなくて脆弱性のあるMicrosoftのフォーマットの文書が置かれる。 Linux メールサーバはアンチウイルスソフトを導入して、Outlook や Outlook Express のメールボックスに流れ込む前にウイルスを無害化するようになっているべきだ。 信頼できるソフトウェアレポジトリを使うことでマルウェアを実行する危険は大変小さくなる。なぜならパッケージ・メンテナがマルウェアでないことをチェックしているからである。この場合、安全な経路でファイルのチェックサムをダウンロードするので、古典的な中間者攻撃や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 ^ a b Granneman, Scott (2003年10月). “Linux vs. Windows Viruses”. 2008年3月6日閲覧。 ^ Yeargin, Ray (2005年7月). “The short life and hard times of a linux virus”. 2008年6月24日閲覧。 ^ a b Patrizio, Andy (2006年4月). “Linux Malware On The Rise”. 2008年3月8日閲覧。 ^ “Virus Department”. 2009年10月11日閲覧。 ^ ClamAV (2010年). “Clam AntiVirus 0.96 User Manual”. 2011年2月22日閲覧。 ^ a b Smith, Stuart (2007年6月). “Bad Bunny”. 2008年2月20日閲覧。 ^ Kissling, Kristian (2009年12月). “Malicious Screensaver: Malware on Gnome-Look.org”. 2009年12月12日閲覧。 ^ “ClamAV”. 2011年2月22日閲覧。 ^ “Dr.Web anti-virus for Linux”. Dashke. 2010年5月25日閲覧。 ^ “ESET File Security - Antivirus Protection for Linux, BSD, and Solaris”. Eset. 2008年10月26日閲覧。 ^ “ESET Mail Security - Linux, BSD, and Solaris mail server protection”. Eset. 2008年10月26日閲覧。 ^ “ESET NOD32 Antivirus for Linux Gateway Devices”. Eset. 2008年10月26日閲覧。 ^ “Kaspersky Linux Security - Gateway, mail and file server, workstation protection for Linux/FreeBSD”. Kaspersky Lab. 2009年2月11日閲覧。 ^ “Linux Malware Detect”. 2011年2月22日閲覧。 ^ “McAfee VirusScan Enterprise for Linux”. McAfee. 2009年6月11日閲覧。 ^ “Panda Security Antivirus Protection for Linux”. Panda Security. 2009年1月13日閲覧。 ^ “Root Kit Hunter”. 2013年3月5日閲覧。 ^ Symantec (2009年1月). “System requirements for Symantec AntiVirus for Linux 1.0”. 2009年3月7日閲覧。 ^ Florio, Elia (2006年2月). “Linux.Backdoor.Kaiten”. 2008年3月8日閲覧。 ^ Florio, Elia (2007年12月). “Linux.Backdoor.Rexob”. 2008年3月8日閲覧。 ^ Vervloesem, Koen (2009年12月). “Linux malware: an incident and some solutions”. 2010年9月16日閲覧。 ^ “The Mother of All Android Malware Has Arrived”. Android Police. (2011年3月6日). http://www.androidpolice.com/2011/03/01/the-mother-of-all-android-malware-has-arrived-stolen-apps-released-to-the-market-that-root-your-phone-steal-your-data-and-open-backdoor/  ^ herm1t (2008年8月). “Linux.42: Using CRC32B (SSE4.2) instruction in polymorphic decryptor”. 2010年1月17日閲覧。 ^ Ferrie, Peter (2008年9月). “Life, the Universe, and Everything”. 2010年2月2日閲覧。 ^ herm1t (2006年8月). “Infecting ELF-files using function padding for Linux”. 2010年2月2日閲覧。 ^ Kaspersky Lab (2007年5月). “Virus.Linux.Alaeda”. 2008年3月8日閲覧。 ^ Smith, Stuart (2007年5月). “Perl.Badbunny”. 2008年3月8日閲覧。 ^ McAfee (2004年12月). “Linux/Binom”. 2008年3月8日閲覧。 ^ Rieck, Konrad and Konrad Kretschmer (2001年8月). “Brundle Fly 0.0.1 - A Good-Natured Linux ELF Virus”. 2008年3月8日閲覧。 ^ de Almeida Lopes, Anthony (2007年7月). “Project Bukowski”. 2008年3月8日閲覧。 ^ herm1t (2008年2月). “Caveat virus”. 2010年2月2日閲覧。 ^ Ferrie, Peter (2009年7月). “Can you spare a seg?”. 2010年2月2日閲覧。 ^ herm1t (2007年10月). “Reverse of a coin: A short note on segment alignment”. 2010年2月2日閲覧。 ^ Ferrie, Peter (2009年9月). “Heads or tails?”. 2010年2月2日閲覧。 ^ Kaspersky Lab (2002年2月). “Virus.Linux.Diesel.962”. 2008年3月8日閲覧。 ^ herm1t (2007年10月). “Hashin' the elves”. 2010年2月2日閲覧。 ^ Ferrie, Peter (2009年8月). “Making a hash of things”. 2010年2月2日閲覧。 ^ Kaspersky Lab (2001年4月). “Virus.Linux.Kagob.a”. 2008年3月8日閲覧。 ^ Kaspersky Lab (undated). “Virus.Linux.Kagob.b”. 2008年3月8日閲覧。 ^ herm1t (2008年6月). “README”. 2010年2月2日閲覧。 ^ Ferrie, Peter (2008年2月). “Crimea river”. 2010年2月2日閲覧。 ^ The Mental Driller (2002年2月). “Metamorphism in practice or "How I made MetaPHOR and what I've learnt"”. 2008年3月8日閲覧。 ^ Kaspersky Lab (2001年12月). “Virus.Linux.Nuxbee.1403”. 2008年3月8日閲覧。 ^ herm1t (2007年11月). “INT 0x80? No, thank you!”. 2010年2月2日閲覧。 ^ Ferrie, Peter (2009年9月). “Flying solo”. 2010年2月2日閲覧。 ^ Ferrie, Peter (2007年4月). “Linux.Podloso”. 2008年3月8日閲覧。 ^ Ferrie, Peter (2007年4月). “The iPod virus”. 2008年3月8日閲覧。 ^ herm1t (2009年12月). “From position-independent to self-relocatable viral code”. 2010年5月7日閲覧。 ^ Kaspersky Lab (2003年8月). “Virus.Linux.Rike.1627”. 2008年3月8日閲覧。 ^ Kaspersky Lab (2002年1月). “Virus.Linux.RST.a”. 2008年3月8日閲覧。 ^ “The ways of viruses in Linux HOW SAFE?”. 2009年8月21日閲覧。 ^ Kaspersky Lab (2001年3月). “Virus.Linux.Satyr.a”. 2008年3月8日閲覧。 ^ Kaspersky Lab (2000年3月). “Virus.Linux.Vit.4096”. 2008年3月8日閲覧。 ^ Kaspersky Lab (2000年10月). “Virus.Linux.Winter.341”. 2008年3月8日閲覧。 ^ Rautiainen, Sami et al. (2001年3月). “F-Secure Virus Descriptions: Lindose”. 2008年3月8日閲覧。 ^ “The Wit Virus: A virus built on the ViT ELF virus”. 2008年12月31日閲覧。 ^ Kaspersky Lab (2001年1月). “Virus.Linux.ZipWorm”. 2008年3月8日閲覧。 ^ Kaspersky Lab (2001年5月). “Net-Worm.Linux.Adm”. 2008年3月8日閲覧。 ^ Rautiainen, Sami (2001年4月). “F-Secure Virus Descriptions: Adore”. 2008年3月8日閲覧。 ^ Kaspersky Lab (2001年5月). “Net-Worm.Linux.Cheese”. 2008年3月8日閲覧。 ^ Rautiainen, Sami (2001年4月). “F-Secure Virus Descriptions: Kork”. 2008年3月8日閲覧。 ^ McAfee (2005年6月). “Linux/Lupper.worm Description”. 2010年10月10日閲覧。 ^ Kaspersky Lab (2002年10月). “Net-Worm.Linux.Mighty”. 2008年3月8日閲覧。 ^ Perriot, Frederic (2007年2月). “Linux.Millen.Worm”. 2008年3月8日閲覧。 ^ Rautiainen, Sami et al. (2002年9月). “F-Secure Virus Descriptions: Slapper”. 2008年3月8日閲覧。 ^ Voss, Joel (2007年12月). “SSH Bruteforce Virus by AltSci Concepts”. 2008年3月13日閲覧。[リンク切れ]