セキュリティ系の勉強、その他開発メモとか雑談. GithubはUnity触っていた頃ものがメイン Twitterフォローもよろしくです

dionaeaのVPSのポートがclosedばっかり - ハニーポットのポートが開かない

先日dionaeaをVPSに導入し、早く攻撃来ないかなとか思ってたんですが、全く来ないしログも増えない。すぐにおかしいなと思って、自分(VPS内から)をnmapでポートスキャン。
f:id:thinline196:20180906174611p:plain



次に外部(自宅環境)からポートスキャン。
f:id:thinline196:20180906175227p:plain
f:id:thinline196:20180906175324p:plain

外から見るとポートが閉じてますね。他の方が書いている記事はこの辺り触れてなかったですけど、常識ってことでしょうか?どうやら私はまだ知識不足っぽいですね、、反省です。

動作環境

さくらVPSさんが用意したubuntuを使用しております。

$ cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=14.04
DISTRIB_CODENAME=trusty
DISTRIB_DESCRIPTION="Ubuntu 14.04.5 LTS"

$ uname -a
Linux tk2-207-13081 3.13.0-157-generic #207-Ubuntu SMP Mon Aug 20 16:44:59 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

設定を変更する

ubuntu14をいじっているのですが、どうやらiptablesというのが噛んでいる様子。以下のサイトを参考にしました。
help.sakura.ad.jp
sekisuiseien.com

とりあえず、私の環境では設定ファイルは以下にありました。

/etc/iptables/

コマンドからでも設定を追加・変更できるらしいので、コマンドで打っていきます。

#80を別のポート番号に変更してあげればそのポートを設定できる
iptables -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT


これで状況を確認して見ましょう。

#現在の状況を表示
iptables -L

f:id:thinline196:20180906182739p:plain

先ほどはなかった(スクショ取ってなかった)httpの文字が追加されてますね。試しに自宅環境から80番をnmapして見ましょう。

f:id:thinline196:20180906182923p:plain


オープンしてました!試しにブラウザで自分のVPSのipにアクセスしても、一応応答が帰ってくるようになりました!

ufw

上の方法でとりあえず、攻撃が来ない理由が判明しました。本当はこの後ufwで設定を変更していこうと思っていたのですが、なぜかufwの変更が反映されず(ufwコマンドでの確認上は開いている). 仕方ないので(というか正当手段ですが)iptablesをいじっていくことにします!参考にさせてもらったのは以下のサイトさんです。
knowledge.sakura.ad.jp
qiita.com



2つ目のサイトを見てもらえると思うのですが、今回導入したubuntuはさくらVPSが用意したubuntu14だったので、iptablesの扱いが若干違っていたように感じます。iptablesのルールを永続的に変更するには以下のファイルをいじってください。

/etc/iptables/iptables.rules


今回はとりあえず以下のようにしようと思います。許可したポートはdionaeaを起動した時にnmap で表示される奴らです。

*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
# established connection
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

# icmp limit if get 20/m
-A INPUT -p icmp -j ACCEPT

# loop back(me to me)
-A INPUT -i lo -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT

#DNS
-A INPUT -p udp --sport 53 ACCEPT

#user defines
-A INPUT -p tcp --dport 21 ACCEPT
-A INPUT -p tcp --dport 23 ACCEPT
-A INPUT -p tcp --dport 42 ACCEPT
-A INPUT -p tcp --dport 80 ACCEPT
-A INPUT -p tcp --dport 135 ACCEPT
-A INPUT -p tcp --dport 443 ACCEPT
-A INPUT -p tcp --dport 445 ACCEPT
-A INPUT -p tcp --dport 1433 ACCEPT
-A INPUT -p tcp --dport 1723 ACCEPT
-A INPUT -p tcp --dport 3306 ACCEPT
-A INPUT -p tcp --dport 5060 ACCEPT
-A INPUT -p tcp --dport 5061 ACCEPT

COMMIT


これで、再起動をすると以降上の設定でiptablesが動くと思います。無事、ハニーポットも攻撃を受けているログを吐き出し始めました!




まとめ

いろんなサイトさんを見ましたがこのポート系には全く触れていなかったので、これをやるのは基本のキなのか、はたまたさくらVPSのubuntu14のみ初期設定でポートが閉じていたのかはわかりませんが、とりあえず色々触ることができたので結果良かったかなと思います。次なんかするときは、自分でイメージファイル用意しようかと思います。