お財布に優しいT-Potの植え方
はじめに
10月末に駆け出した、新米ハニーポッターの秋山です。
この記事は、Honeypot Advent Calendar 2018の13日目の記事です。
今回は、以下のような人を対象として、ハニーポットを低予算で植えるための情報を共有したいと思います(低予算具合は所感です)
なお、今回の対象としているハニーポットは、初心者でも扱いやすそうな(Kibanaでログを手軽にみれる)T-Pot
となります。
ハニーポットとの邂逅
セキュリティの勉強をしているときに、ハニーポットを使えばこういう情報(マルウェアの検体/現実の攻撃方法)が収集できるよということを教えてもらった。 大学の時にも単語レベルでは聞いたことあったが、どのようなものかを理解していなかったので、興味本位で触ってみたいと思いました。
実際、ハニーポットからマルウェアの検体収集や、生の攻撃手法の分析ができることから、セキュリティの勉強には最適かなと思い構築するに至りました。
「AWSの無料枠もあるし、ハニーポッターに俺はなる!」
お財布問題
と、意気込んでみたはいいものの、この時点ではT-Pot
を植えること以外は何も考えてなかったため、お金の問題が降りかかる事になるとは思ってもいなかった。
T-Potに関する記事を色々と調べてみると、ほぼ全ての記事でAWS上にT-Potを植えていた。その記事の中では、月額5千円ほどかかる旨が書かれており驚愕する。
にわかに信じられず自分で試算してみたが、やはりそれぐらいの運用費用はかかることが判明した。
なぜそんなに高いのかというと、T-Pot自体が他のハニーポットに比べて高機能(Kibanaによる可視化など)なため、要求するスペックが高いことが問題だった。
AWSだと最低でもt2.medium
タイプが要求されるので、これが高くなる要因だった。
「んー、正直これで一年間運用するのは厳しいな。そもそも妻の許可が出なそうだ!」
空からのお告げ
運用費用の辛さを吐露していたら、友人からあるサービスを紹介された。
AWSである理由がないのであれば、こういうのもあるよと。
今まで全く聞いたことのないサービスだなと思いながら公式ページをのぞいて見たら、凄く安い。
メモリ4GBのプランで 1,028.23 円
AWSで運用するときの 1/5 ぐらいではないか。
余裕を持って1-L
のプランにしたとしても、2,057.75 円
という破格の安さ。
安心するのはまだ早い
安価で使えるVPSサービスが見つかったことはいいが、AWSと比べるとScalewayに関する情報がかなり少ない。ましてや、Scaleway上でのハニーポット構築に関する記事は皆無。
情報が無いなら、手探りで進めばいいやと腹をくくり、いくつかの地雷を踏みぬいていく。
- t-pot-autoinstallがコケる
- 1日経たずにディスク容量を使い切る
- tpotのサービスが不安定
- 料金体系をちゃんと理解してない恐怖感
安定稼働までの道のり
これらの地雷を踏みぬきながら安定稼働までこぎつけたので、地雷の避け方を綴る。
t-pot-autoinstallがコケる
T-Potのインストーラ t-pot-autoinstall でサクッとインストールする予定が、何故かコケる。
cp: cannot stat '/usr/share/consolefonts/Uni2-Terminus12x6.psf.gz': No such file or directory
consolefonts
ディレクトリが無いのは何故だろう?と調べてみると、どうやらconsole-setup
というものが入っていないとダメらしい。なので事前にこれをインストールしてあげる。
apt-get install console-setup
無事T-Potがインストールされ、この問題は解決する。
(検索ではかからなかったけど、他の人はこの地雷を踏んでないのかな?)
1日経たずにディスク容量を使い切る
T-Potのインストールが無事完了し、Kibanaでログを見ることができるようになった。
のも束の間。1日経たずしてKibanaからの反応が返ってこなくなった。
サーバーにログインして調べて見ると、ディスク使用率が100%になっており、サービス自体が起動できて無い。
そして気になるのが、プランでは200GB割り当てられているはずのディスクサイズが、たったの50GB
しか認識されていない。
どうやら、起動時は50GBのディスクのみマウントされているため、残りの150GBのディスクは自分でマウントしないといけないらしい。
How to attach and detach additional volumes to an existing server - Scaleway
上のドキュメントを読みながら150GBをマウントし、この問題も無事解決する。
tpotのサービスが不安定
今度は、何日か経つとKibanaの挙動がおかしくなった。何故だか動かなくなった機能もある。
またもや調査をすると、不可解なログが目に付く。再起動していないのに、毎日再起動しているではないか。
(これは、t-pot-autoinstallがCronに再起動の設定を追加していることが原因だった)
そして、tpotサービスのエラーとして、ハニーポットのログファイルがバックアップできなかったと出ている。
どうやら毎日再起動をかけており、起動時に毎回ログファイルをバックアップしているらしいのだが、手動で再起動などをしたときに、ログファイルのバックアップに失敗することがあるらしく(権限系だったかな)それが原因でサービスが起動できていなかった(起動できたが一部の機能はダメなど)
ので、ここら辺は手動で再起動などをかけなければ特に起こらないため、気をつければ問題なかった。
料金体系をちゃんと理解してない恐怖感
何回か地雷を踏んでいると、クラウドだしインスタンスを削除してクリーンな状態から作り直せばいいや。という精神になり、サーバーインスタンスの破棄を繰り返す。 料金体系を正確に理解していないので、それがどのように課金されるかわかっていない。
なので、ここら辺は料金系のドキュメントを読みながら、10月分請求の実際に請求額から確認して理解した。
- Scalewayでは、一つのサーバーインスタンスの連続稼働時間が一定時間以上になると、料金が頭打ちとなりそれ以降は定額となる
- Linux上からRebootした場合は、稼働時間が途切れずに継続した状態であるため、何回やっても大丈夫
逆に、サーバーインスタンスの停止や削除を行なった場合は、その時点までの稼働時間(H)* 単価が請求に乗ってくる(稼働時間はリセットされてしまう)安定稼働したら、このような使い方は避けた方が無難(それでも1時間当たりの料金が安いため、定額制にならなくても結構安い)
安定稼働のその先
サーバー自体が海外にあるため、ネットワークのレスポンスは若干遅いが、普通に使ってる分ではあまり気にならないレベルのため、この値段で安定して運用できるならコストパフォーマンス的には良かったです。 AWSと比較まではいけなかったので、攻撃頻度の違いなどは比較はできなかったですが、攻撃自体はかなり多いので運用するには良さそうです。
Dionaeaのアクセス数
休日に攻撃が少ないのは、稼働している端末(踏み台)が少ないから?🤔 pic.twitter.com/BFsaR7BwI9
— kiyoto Akiyama (@kyonta1022) November 14, 2018
1日分のSuricataアラート
Suricataであがったアラートで [ DoublePulsar Backdoor installation communication ] が3807792回。多すぎる。そしてログのディスク消費量が半端ない。。。
— kiyoto Akiyama (@kyonta1022) October 26, 2018
Scaleway上でのT-Pot構築に関する記事
今日から僕もハニーポッター!(ってイキれる)https://t.co/2awBbdFs5b
— kiyoto Akiyama (@kyonta1022) October 23, 2018