www.morihi-soc.net

誰もが安心して使える、安全なインターネットを目指して

ハニーポット観察記録(43)「ftpの設定情報を狙ったファイルの探査」

どうも。ハニーポッターの森久です。

2月になりました。今年もまた「サイバーセキュリティ月間」が始まりました。2018年のキャッチフレーズは「#サイバーセキュリティは全員参加!」とのことです。セキュリティエンジニアだけがセキュリティを考えるのではなく、一人ひとりがセキュリティを考えていかなければいかない世の中になっていますからね。
私もこのブログや勉強会などを通して、いま発生している攻撃情報を紹介し、攻撃を知っていただきたいと思います。

さて今回は、プログラマの方に気をつけていただきたい攻撃を紹介します。
プログラミングに使っているエディタは何ですか?

 

WOWHoneypot で、同一の IP アドレスから、攻撃ログ1から3までのアクセスを検知しました。順番に紹介していきます。

攻撃ログ1

※一部の情報を意図的に伏せています。

 

まず攻撃ログ1ですが、アクセスしているファイルが「.ftpconfig」です。ファイル名から想像すると、FTP の設定ファイルのようです。
もうちょい調査してみます。ファイル名で Google 検索してみると、Atom エディタRemote FTP プラグインに関する情報が出てきます。


Atom エディタは GitHub が開発したエディタです。私も使っていまして、WOWHoneypot のプログラミングでもお世話になっています。
Remote FTP プラグインは、Atom エディタから FTP サーバへアクセスし、ファイルのアップロードや同期などファイル管理をする機能があります。
プラグインの紹介ページを見ていくと、下部に .ftpconfig の書き方サンプルが紹介されています。

 

Atom エディタの Remote FTP プラグインの設定情報サンプル

上記の画像で、赤線で囲んだ部分に注目すると、FTP サーバのホストとポート番号、ユーザ名、パスワードを指定するパラメータがあります。
FTP サーバへアクセスするための情報なので、設定ファイルに記載があることは不思議ではありません。
しかしながら、もしこのファイルを FTP サーバにアップロードしてしまっていて、なおかつ Web サーバの公開領域に含まれていた場合は、FTP のアカウント情報が漏洩してしまいます。

 

攻撃ログ2

※一部の情報を意図的に伏せています。

 

次に攻撃ログ2を見てみましょう。アクセスしているファイルは「sftp-config.json」ですね。
おや、今度は SFTP の設定ファルと見受けられる名前ですね。Google で検索してみます。すると Sublime Text エディタSFTP パッケージの情報が出てきます。


Sublime Text エディタは高機能なテキストエディタで、Atom エディタと同様にプログラミングにも利用されています。
SFTP パッケージは、Sublime Text エディタから FTP サーバへアクセスし、ファイルのアップロードや同期などファイル管理をする機能があります。このSFTPパッケージの設定情報の説明ページを見てみます。

 

Sublime Text エディタの SFTP パッケージの設定情報サンプル

 

赤線の枠内の通り、SFTP サーバのホスト、ユーザ名、パスワード、ポート番号を記載するパラメータがありますね。
もし攻撃者に sftp-config.json ファイルを見られてしまうと、SFTP サーバへアクセスする情報を知られてしまうわけですね。

 

攻撃ログ3

※一部の情報を意図的に伏せています。

 

さてそれでは最後、攻撃ログ3を見てみます。
アクセス先のディレクトリが「.vscode」で、その中の「ftp-sync.json」ファイルへアクセスしています。
.vscode を Google で検索してみると、Visual Studio Code エディタの情報が出てきます。Visual Studio Code エディタは、Microsoft が開発したエディタでプログラミングに利用されます。


さらに ftp-sync.json で Google 検索すると、FTP-Sync エクステンションの情報が出てきます。ファイルを同期する機能があります。もう予想がつきそうですが、ファイルの書き方を調べてみます。

Visual Studio Code エディタの FTP-Sync エクステンションの設定情報サンプル

 

赤線の枠内の通り、FTP サーバのホスト、ユーザ名、パスワード、ポート番号を記載するパラメータがありますね。
もし攻撃者に ftp-sync.json ファイルを見られてしまうと、FTP サーバへアクセスする情報を知られてしまうわけですね(3回目)。

 

攻撃者の狙い

攻撃ログ1から3までを通して、攻撃者はどうにかしてプログラミングをする開発者の FTP サーバのアクセス情報を窃取することが狙いと考えられます。
さて、さらに一歩進んで、妄想してみます。もし攻撃者がFTP サーバのアクセス情報を得たらどうするでしょうか。

最初にサーバ内部の情報をダウンロードするでしょう。プログラマがアクセスするサーバなので、ソースコードが手に入ります。
ソースコードが手に入った攻撃者の次の行動は何が考えられるでしょうか。いわゆるソースコード診断をして、プログラムの脆弱性を見つけられるかもしれません。当然、修正されていないのでパッチが存在しない 0day の状態です。この脆弱性を利用して、攻撃が可能になってしまいますね。

またソースコードが手に入っているということは、それをビルドして、ソフトウェアを作成することが可能です。もちろんソースコードを改変してソフトウェアを作成した場合、マルウェアを含めることができます。そしてそっと FTP サーバの正規のソフトウェアとすり替えておいたら・・・。被害範囲は広大になりますね。
正規のソフトウェアにマルウェアを混入させて感染させる手法は、(ソフトウェアの)サプライチェーン攻撃と呼ばれています。今回の FTP サーバのアクセス情報の窃取は、その最初の一手だったのかもしれません。

 

まとめ

今回は、Atom エディタの Remote FTP プラグイン、Sublime Text エディタの SFTP パッケージ、Visual Studio Code エディタの FTP-Sync エクステンションの設定ファイルを探査する通信を紹介しました。

今回の攻撃ログだけを見ると、FTP サーバのアクセス情報を窃取することが狙いと考えられます。しかしながら、もし攻撃が成功した後のことを考えると、次の大きな攻撃につながる可能性があることに気付きます。

プログラマの方は、こういった設定ファイルが公開状態になっていないか一度、ご確認ください。またスタバでドヤるリモート接続する場合のように、端末にグローバル IP アドレスが割り当てられていると、意図せぬ公開状態になってしまっているかもしれません。ネットワークからのアクセスを遮断するには、ファイアウォールを利用することが一般的なので、あわせてファイアウォールの設定をご確認ください。

 

参考情報

サイバーセキュリティ月間(NISC)
https://www.nisc.go.jp/security-site/month/index.html

Remote FTP(Atom)
https://atom.io/packages/remote-ftp

Sublime SFTP(wbond)
https://wbond.net/sublime_packages/sftp/settings

FTP-Sync extension for VS Code(GitHub)
https://github.com/lukasz-wronski/vscode-ftp-sync/

2018年はどんなセキュリティ脅威が?9社予測まとめ《前編》(ASCII.jp)
http://ascii.jp/elem/000/001/611/1611970/


告知

第3回 ハニーポッター技術交流会を開催します。
大変ありがたいことに、一般参加枠はキャンセル待ちの状態です。しかしながら、ハニーポットを運用中の方や、運用経験をお持ちの方のためのハニーポッター枠は現時点(2月3日)では空きがあります。また LT 発表枠も残り1つです。発表をどうしようか悩んでいる方がいましたら、お早めに募集ページからお申し込みください。
なお LT 発表申込後は、メール(morihisa.sec(@)gmail.com)でもツイッター(@morihi_soc)でも何でもいいので、私まで発表タイトルと発表時間(15-30分以内)をご連絡ください。

勉強会詳細

開催日時:2018年2月24日(土) 午前10:00-12:00 (受付は9:40から)
開催場所:東京都中央区日本橋兜町12-7 兜町第3ビル NATULUCK茅場町新館 2階大会議室
募集ページ:第3回 ハニーポッター技術交流会 https://hanipo-tech.connpass.com/event/78002/

 

Written by 森久

2月 3rd, 2018 at 10:06 pm