ランサムウェア機能を備えたPHP Webシェル「Ensiko」について解説

昨今、Webサーバなど公開サーバへの攻撃で「Webシェル」(web shell)というツールが用いられていることが確認されています。「Webシェル」とは、Web経由でのコマンド実行を可能にするバックドアの一種であり、主にサイバー犯罪者がインターネット上の公開サーバに対する遠隔操作を実現するために使用します。トレンドマイクロでは7月以降、新たな Webシェルである「Ensiko」の攻撃を確認しています。Ensikoはランサムウェア機能を備えているなど、これまでのWebシェルよりも危険性が高いものとなっています。

PHP WebシェルであるEnsikoはPHPがインストールされていればLinux、Windows、macOSなど異なるプラットフォームでも攻撃対象とすることが可能です。感染サーバ上でシェルコマンドを実行し、PHPリバースシェルによって攻撃者に結果を送信します。Ensikoは、Webサーバをスキャンして他のWebシェルの存在を確認する、Webサイトを改ざんする、メール爆撃を実行する、リモートのファイルをダウンロードする、感染サーバに関する情報を開示する、FTP・cPanel・Telnetに対するブルートフォース攻撃を実行する、指定された拡張子を持つファイルを上書きするなど、様々な機能を実行できます。

■Ensikoの詳細
Webシェル認証機能

Ensikoには、パスワード保護の機能が備えられています。Ensikoへのアクセス時には認証のために、非表示のログインフォームが隠されている[Not Found]ページを表示します(図1と2)。これは自身が設置したWebシェルを他のサイバー犯罪者などに使用されないようにするためのものと考えられます。

図1:[Not Found]ページに隠されたログインフォーム

図2:パスワード認証のためのPHPコード

以下の図は、ローカルの検証環境でキャプチャしたWeb シェルのパネルへの認証リクエストのネットワークトラフィックを示しています。このサンプルのパスワードは「RaBiitch」であることが確認できます。

図3: Ensikoにアクセスする際のネットワークトラフィックのキャプチャ例

図4:Ensiko Webシェルの外観

Ensikoの機能

以下は、Ensikoが備える機能一覧です。

機能 説明
Priv Index ensikology.phpをPastebinからダウンロード
Ransomware CBCモードでRIJNDAEL 128を使用してファイルを暗号化
CGI Telnet CGI-telnetバージョン1.3をPastebinからダウンロード(CGI-Telnetは、Webサーバ上でコマンドを実行可能にするCGIスクリプト)
Reverse Shell PHPリバースシェル
Mini Shell 2 ./tools_ensikologyへ、Webshel​​lペイロード「Mini Shell 2」をドロップ
IndoXploit ./tools_ensikology/へ、Webshel​​lペイロード「IndoXploit」をドロップ
Sound Cloud SoundCloud(サウンドクラウド)を表示
Realtime DDOS Map FortinetによるDDoSマップ
Encode/Decode 文字列バッファのエンコードおよびデコード
Safe Mode Fucker PHPセーフモードを無効化
Dir Listing Forbidden ディレクトリインデックスをオフ
Mass Mailer メール爆撃
cPanel Crack FTP、cPanel、telnetへのブルートフォース攻撃
Backdoor Scan リモートサーバにWebシェルがないかをチェック
Exploit Details システム情報とバージョン管理を表示
Remote Server Scan リモートサーバにWebシェルがないかをチェック
Remote File Downloader CURLまたはwgetによってリモートサーバからファイルをダウンロード
Hex Encode/Decode 16進エンコードあるいはデコード
FTP Anonymous Access Scanner 匿名FTPの検索
Mass Deface 改ざん
Config Grabber 「/etc/passwd」などのシステム設定をグラブ
SymLink リンク
Cookie Hijack セッションハイジャック
Secure Shell SSH
Mass Overwrite 指定したファイルタイプにデータを再書き込みまたは追加
FTP Manager FTPマネージャ
Check Steganologer EXIFヘッダによって画像を検出
Adminer PHPデータベース管理ツール「Adminer」を「./tools_ensikology/」へダウンロード
PHP Info PHP設定に関する情報
Byksw Translate 文字置換
Suicide 自身の削除

図5:Ensikoが持つ機能のコード一覧

ランサムウェア機能の解析

Ensikoは、Webシェルディレクトリおよびサブディレクトリ内のファイルを、CBCモードでPHP RIJNDAEL_128を使用して暗号化し、ファイル名に「.bak」拡張子を付加します。以下のコードはこの動作の部分を示しています。

図6:暗号化活動のコード

図7:暗号化及び復号コード

図8:Webシェルのランサムウェアの鍵入力部分

図9:暗号化されるファイルのログ

図10:ディレクトリ下にある暗号化されたファイル

図11:感染サーバへのPOSTリクエスト

Ensikoはまたindex.phpファイルを作成し、.htaccessファイルを使用してデフォルトページとして設定します。 攻撃者へはこのアクションが電子メールで通知されます。 以下は、この動作を示すコード部分です。

図12:作成される.htaccessページのコード

図13:index.phpがアクセスされると表示される通知

図14:index.phpページの外観

図15:index.phpの暗号化されたフォーム

図16:デコードされたindex.php

ツールセット

より多くのタスクを実行するために、Ensikoはさまざまなツールを感染システムに追加でダウンロードすることができます。ツールのほとんどは「Pastebin」から読み込まれ、次にツールを格納するためにtools_ensikologyというディレクトリが作成されます。

図17:Pastebinから読み込まれるツール

Steganologer

EXIF(Exchangeable image file format)形式の画像ファイルのヘッダ内にコードを隠し、exif_read_dataというPHP関数を使用して、感染サーバでこのコードを抽出して実行するステガノグラフィの手法があります。Ensikoが備える「Steganologer」と呼ばれる機能は、EXIFのヘッダで画像を識別し、Logger(ロガー)としてラベル付けします。以下に示すtest1.jpgとtest2.jpgには、コードが隠蔽されているEXIFヘッダがあり、これによりファイルが識別されます。

図18:隠しコードが含まれたファイル

図19:隠しコードによってファイルを識別するコード

Shell Finderがバックドアをスキャン

Shell Finder機能は、ハードコードされたリストによって、指定したリモートのサーバにWebシェルが存在するかどうかをチェックします。

図20および21:感染サーバに他のWebシェルが存在するかチェックするコード

Remote File Checkがリモートサーバをスキャン

Shell Finderと同様、Remote File Checkも、リモートのサーバ内の他のWebシェルについてチェックしますが、ハードコードされたリストではなく手動入力によるファイル検索を実行します。

図22:他のWebシェルを検索するRemote File Checkのインターフェイス

図23: Remote File Checkのコード

Mass Rewriteによる一括上書き機能

Mass Rewrite機能は、Webシェルのすべてのサブディレクトリを含む、指定された拡張子とディレクトリを持つすべてのファイルのコンテンツの書き換えおよび追加を可能にします。

図24:ファイルを上書きするMass Rewrite機能のUI

 図25:Mass Rewrite機能のコード

■まとめ

Ensikoは感染したWebサーバをリモート管理し、ファイルの暗号化その他多くの不正活動を可能にするWebシェルです。通常攻撃者は、Webアプリケーションの脆弱性を悪用するか、すでに侵害したサーバへアクセスすることによってWebシェルをサーバへデプロイします。さらにEnsikoは、感染Webサーバ上のファイルをRIJNDAEL暗号化アルゴリズムを使用して暗号化するランサムウェア機能を備えています。また、サーバをスキャンして他のWebシェルの存在を確認する、Webサイトを改ざんする、大量の電子メールを送付する「メール爆撃」の実行、リモートからファイルをダウンロードする、感染サーバの情報を開示する、データベースへのアクセス権を取得する、ファイル転送プロトコル(FTP)・cPanel・Telnetに対するブルートフォース攻撃の実行、指定された拡張子を持つファイルを上書きするなど、多様な攻撃を実行することができます。

 侵入の痕跡(Indicators of CompromiseIoC

今回の記事に関する侵入の痕跡はこちらを参照してください。

トレンドマイクロの対策

トレンドマイクロの「Hybrid Cloud Security」では、物理・仮想・クラウドの混在環境にシンプルな自動化されたセキュリティを提供し、環境を問わずにワークロードを保護します。特にTrend Micro Cloud One™ Workload Security(現製品名:Trend Micro Deep Security ™ as a Service)は、機械学習型検索や仮想パッチなどのセキュリティ機能により、対象サーバを保護します。

参考記事:

翻訳: 室賀 美和(Core Technology Marketing, Trend Micro™ Research)