Adversaries may abuse legitimate extensible development features of servers to establish persistent access to systems. Enterprise server applications may include features that allow developers to write and install software or scripts to extend the functionality of the main application. Adversaries may install malicious components to extend and abuse server applications.(Citation: volexity_0day_sophos_FW)
T1505は「Server Software Component(サーバーソフトウェアコンポーネントの悪用)」として定義されている、非常に強力かつ広範な永続化(Persistence)および防御回避(Defense Evasion)のテクニックです。
現在は、主に以下の4つのサブテクニックに細分化され、サーバー上に不正なモジュールやバックドアを設置する手法として管理されています。
この手法で攻撃者は、「インターネット公開されているWebサーバーを完全に支配し、セキュリティ製品の監視をすり抜けながら、リモートから自由自在にコマンドを実行できる恒久的な裏口(バックドア)」を実現します。
強固な永続化: サーバーのOSに直接マルウェア(.exeなど)を常駐させる必要がありません。Webサーバーの公開ディレクトリに1つのスクリプトファイルを置くだけで、サーバーアプリが動いている限りいつでも再侵入できます。
強固な防御回避(ファイアウォールの突破): 攻撃者は、Webサーバーが通常使用している 80番(HTTP)や443番(HTTPS)の正規の通信に紛れてコマンドを送信します。そのため、外部からの不審な接続を遮断するネットワークファイアウォール(FW)を完全に素通り(バイパス)できます。
内部ネットワークへの足がかり: Webサーバーを起点として、社内の重要なデータベースや他のサーバー、Active Directoryなどへ攻撃を拡大する(ラテラルムーブメント)ための強固な「踏み台」として機能します。
Webサーバーが稼働している環境(PHP、JSP、ASP.NETなど)に適合するスクリプトを設置する形で実行されます。
初期侵入(脆弱性の悪用): 攻撃者は、Webアプリケーションの脆弱性(リモートコード実行:RCEや、ファイルアップロード機能の不備など)を突いて、サーバーにアクセスします。
ウェブシェルの設置: サーバー内の公開フォルダ(例: /var/www/html/ や C:\inetpub\wwwroot\)に、数行のコードで書かれた悪意あるスクリプトファイル(例: info.php などの正規ファイルに見せかけた名前)をアップロードまたは書き込みます。
コード例(PHPの場合、わずか1行):
```php
```
リモート操作(目的達成):
仕込み完了後、攻撃者はブラウザや専用のツールから、設置したファイルへアクセスします。
http://target-server/info.php?cmd=whoamiこれにより、攻撃者が送った任意のコマンドがWebサーバープロセス(apache、nginx、w3wp.exe など)の権限で実行され、結果がWeb画面に返ってきます。ここからさらに本格的なマルウェアのダウンロードやデータ窃取を行います。
「ファイルの改ざん監視」と「サーバープロセスの挙動監視」の組み合わせが極めて有効です。
ファイル整合性監視(FIM / 最重要):
Webサーバーの公開ディレクトリ(HTMLやスクリプトが置いてあるフォルダ)に対する、予期せぬファイルの新規作成や変更をリアルタイムで監視・ブロックします。通常の運用において、開発者のメンテナンスやシステムアップデート以外でここにファイルが追加されることはありません。
WAF(Webアプリケーションファイアウォール)の導入:
初期侵入の原因となる脆弱性攻撃(SQLインジェクションやRCE、不審なファイルアップロード)をネットワークの境界で検知・遮断し、そもそもWeb Shellを設置させない環境を作ります。
Webサーバープロセスの挙動監視(EDR):
Webサーバーの実行プロセス(例: w3wp.exe や apache2)を親プロセスとして、通常ではあり得ない子プロセス(Windowsの cmd.exe や powershell.exe、Linuxの sh や bash)が起動していないかをEDRやSysmonで監視します。
「隠れ蓑」としてのWebサーバー: タスクマネージャーなどでプロセス一覧を見ても、怪しいマルウェアのプロセスは一切動いていません。動いているのは100%正規のWebサーバープログラムだけであるため、従来の「プロセスベースのアンチウイルスソフト」では見落とされやすいという高いステルス性を持っています。
足跡を残さないファイルレス化: 近年では、ディスク上にファイルを置くことすら避け、既存の正規スクリプトファイルの途中に数行のコードを埋め込む(コードインジェクション)手法や、メモリ上にのみWebサーバーモジュールを展開する高度な手口(T1505.004 IIS Modulesなど)が増加しています。
Web Shellなどの設置を許してしまう、Webアプリケーション側の設計・開発上の致命的な不備です。
CWE-434: Unrestricted Upload of File with Dangerous Type(危険なタイプのファイルアップロードの無制限の許容)
ユーザーが自由にファイルをアップロードできる機能において、拡張子のチェック(PHPやASPXの禁止など)が不十分で、Web Shellそのものをサーバーに設置されてしまう問題。
CWE-94: Improper Control of Generation of Code ('Code Injection')(コード生成の不適切な制御)
外部からの入力をそのままスクリプトとして実行してしまう、Webアプリケーションの脆弱性。
インターネットに公開されているWebサーバーやエンタープライズ製品の脆弱性が突かれ、この T1505.003 (Web Shell) が大量に設置された歴史的・現代的な大企業の侵害事例です。
CVE-2021-26855 / CVE-2021-27065 (ProxyLogon - Microsoft Exchange Server):
2021年に世界中の数万組織に壊滅的な被害をもたらした脆弱性です。ハッカー集団(HAFNIUMなど)は、認証なしでExchangeサーバーにアクセスできるこのバグを悪用し、初期侵入直後に「China Chopper」と呼ばれる有名なWeb Shell(T1505.003)をシステム内に大量にバラ撒き、永続的な制御権を確保しました。
CVE-2023-34362 (MOVEit Transferの脆弱性):
広く使われているファイル転送サーバー「MOVEit」に存在したSQLインジェクションおよびRCEの脆弱性です。ランサムウェア集団(CL0Pなど)がこれをゼロデイ攻撃で悪用し、即座にカスタムのWeb Shell(通称: LEMPO)を配置して、数テラバイトに及ぶ企業の機密データを一網打尽に窃取(Exfiltration)する大規模なサプライチェーン侵害に悪用されました。