Trojan:EC2/BlackholeTraffic!DNS is 何

この警告は何かというと公式情報によるとブラックホール IP アドレスにリダイレクトされるドメイン名へのクエリを実行している…ということです。ブラックホール IP アドレスって何?って感じですが、これは IP と HOST が正引きも逆引きもできないような状況のことを指すようです(推測)。

対処方法としては、まずは落ち着いて GuardDuty の詳細情報を確認します。GuardDuty にはいつ・何に対して通信を行ったかが記載されているはずです。

g1

今回の例だと 2020-03-15 01:13:19 に static-xxxx のようなホストを対象に DNS のリクエストをしているようです。このホスト名に心当たりがない場合は、何らかのプロセスが通信をしていることになります。というわけでログを確認してみます。とりあえず /var/log/secure を見ます。該当日時を確認します。すると以下のようなログが見つかりました。

Mar 15 01:13:19 ip-172-31-26-40 sshd[14987]: Address 111.93.235.74 maps to static-74.235.93.111-tataidc.co.in, but this does not map back to the address - POSSIBLE BREAK-IN ATTEMPT!

ビンゴですね。

試しに逆引き・正引きしてみます。

dig -x 111.93.235.74

;; ANSWER SECTION:
74.235.93.111.in-addr.arpa. 3600 IN	PTR	static-74.235.93.111-tataidc.co.in.
dig static-74.235.93.111-tataidc.co.in

;; ANSWER SECTION:
static-74.235.93.111-tataidc.co.in. 300	IN A	195.22.26.248

これを見ると 111.93.235.74 の逆引きした HOST は static-74.235.93.111-tataidc.co.in ですが、 static-74.235.93.111-tataidc.co.in から正引きした IP アドレスは 195.22.26.248 と全然違うものが返ってきています。

つまり、SSH でアクセスしてきた該当の IP アドレスと HOST 名が一致しないよと言われています。偽装扱いになります。これが GuardDuty のフィルタに引っかかって警告が出たということです。これが今回の攻撃者の意図したものなのかミスなのかは…ちょっと分からないですが…。

再現してみる

今回の事象を再現してみます。アクセス元の IP アドレスの逆引き・正引きが正常にできなければ上記のようなログが出力されるはずです。なので、ちょっと手間ですが IP アドレスの逆引き・正引きをおかしくしてみましょう。やり方はいくつかありますが、さくら VPS を使ったやり方にします。

  • さくら VPS サーバの IP アドレスを、適当なドメインの A レコードに登録する(今回は ip.sunaba.sh
  • さくら VPS コンソールから逆引き設定をする
    • 標準は tk2-1-1111.vs.sakura.ne.jp のようなもの
    • これを ip.sunaba.sh にする
  • 逆引き設定が正常に終了したら、最初に設定した A レコードを別の IP アドレスにする
  • これで逆引き設定はされているが、正引きすると別の IP アドレスという状況になる

この設定ができた状態で、さくら VPS から SSH ログインをすると上記のようなログが出力されます。

Mar 16 10:19:12 ip-172-31-26-40 sshd[12011]: Address 160.0.0.1 maps to ip.sunaba.sh, but this does not map back to the address - POSSIBLE BREAK-IN ATTEMPT!

同じようなログが出力されましたね。

対処方法

SSH に不正侵入されていなければ上記事象自体は問題ないですが、ちょっとうざったいので対処したいところです。基本的には SSH へのアクセスを制限するのが手軽な対応です。もしくは SSH をやめて AWS Systems Manger で接続するようにするなども効果的だと思います。