SOCでは引き続きSYN/ACKリフレクション攻撃を検知・観測しています。2018年9月の観測レポートで本攻撃の原理を説明している通り、攻撃で使用するSYN/ACKパケットを発生させるために、攻撃者は送信元を攻撃対象に偽装したSYNパケットをリフレクタに送信します。Three-way handshakeにおいて、そのSYNパケットの応答としてリフレクタがSYN/ACKパケットで返答します。SYNパケットの送信元は偽装されていることから、リフレクタが返送したSYN/ACKパケットが被害者となるIPアドレス宛に届くことで攻撃が実現されます。SOCでは2019年7月頃から頻繁に攻撃を観測するようになり、2019年10月は前月までに比べ、Carpet-bombingと呼ばれる攻撃手法の観測事例が増加しています。Carpet-bombingとは、攻撃の対象となる特定のIPアドレスレンジに対する攻撃です。SYN/ACKリフレクション攻撃の場合、攻撃対象となるIPアドレスレンジで表現できる大量のIPアドレスに送信元が偽装されています。
2019年10月の観測事例として既にIIJ SECTブログにて、SYN/ACKリフレクション攻撃の観測レポートを公開しています。本記事は、IIJ SECTブログで紹介した攻撃のうち「(2)トルコへの攻撃」と「(3)イタリア、フランスへの攻撃」について統計的な情報を補足する立場としてレポートします。その他の事例については攻撃の観測点が異なる 1ことからSOCでは観測できていない攻撃が存在します。そのため、共通の観測事例である攻撃に焦点を当てた情報共有となることにご留意ください。
トルコ(AS12903)への攻撃
トルコの大手金融機関であるGaranti BBVAがDDoS攻撃を受けたことを明らかにしており、2019年10月27日から10月28日の期間中、Garanti BBVA(AS12903)に対してSYN/ACKリフレクション攻撃が発生していることをSOCでも観測しています。その影響でAS12903の上位ASであるTürk Telekom(AS9121)も影響を受けたようです。以下に本攻撃の推移を示します 2 3 4。
Garanti BBVAへの攻撃を観測している主な時間帯は2019年10月27日の20時頃から10月28日23時頃までです。この攻撃の時間帯において偽装された送信元IPアドレス数は6,000以上であり、IPアドレスレンジごとに集約すると4つのアドレス帯への攻撃を観測しています。ほとんどの場合において、偽装されているIPアドレス数は、サブネットマスクで表現できる最大のホスト数とネットワークアドレス、ブロードキャストアドレスを合計した数でした。
図-1と図-2を併せて確認すると、基本的には偽装されたIPアドレス数の推移と大きく乖離する部分はありません。しかし、検出件数が極端に減少する時間帯が存在しています。これは、攻撃ツールもしくはリフレクタにSYNパケットが届くまでのネットワーク経路において不安定な状況が発生していた可能性が考えられます。
イタリア(AS35574、AS200994)、フランス(AS50894)への攻撃
IIJ SECTブログで記述している通り、Lottomatica(AS35574)、Eurobet(AS200994)、Unibet(AS50894)に対するSYN/ACKリフレクション攻撃は、オンラインギャンブルサイトへの攻撃であることがわかっています。Eurobetについては、攻撃の観測前に攻撃者と思しき人物からTwitter上で金銭を要求する脅迫メッセージが発信されていることが確認できていますが、各オンラインギャンブルサイトへの攻撃についてこのツイートをした人物と同一であるかはわかっていません。以下にLottomaticaへのSYN/ACKリフレクション攻撃の推移を示します 5。
LottomaticaへのSYN/ACKリフレクション攻撃については、2019年10月19日18時頃から10月23日16時頃までと、10月31日17時頃から発生した攻撃を観測しています。
Lottomaticaに対する攻撃の特徴も基本的にはGaranti BBVAへの攻撃と同様です。大きく傾向が異なるのは、図-3と図-4を見比べた際に2019年10月22日19時ごろから10月23日16時ごろまでの間において、検出件数が増加しているものの、偽装された送信元IPアドレス数の数が極端に減少していることです。このことは、2019年8月にSOCで観測した攻撃でも同様の現象を確認しています(リンク中の図-2と図-3)。
次に、EurobetへのSYN/ACKリフレクション攻撃の推移を示します。
EurobetへのSYN/ACKリフレクション攻撃については、2019年10月14日頃から10月16日22時頃までと、10月31日3時頃から発生した攻撃を観測しています。図-5において、10月31日の攻撃を観測しはじめたあたりに注目すると、徐々に検出件数が増加している傾向が確認できます。
SOCではUnibetへのSYN/ACKリフレクション攻撃を以下の2時間のみ観測しています。
日時 | ネットワークレンジ | 偽装されたIPアドレス数 | 検出件数 |
---|---|---|---|
2019年10月31日 21時 | Victim IP network 1 | 2,048 | 16,326 |
2019月10月31日 22時 | Victim IP network 1 | 256 | 1,857 |
各攻撃事例におけるTCPポートの統計
以下に、先述した各AS(AS12903、AS35574、AS200994、AS50894)に対するSYN/ACKリフレクション攻撃で利用されたTCPポートの割合を示します。
過去にSOCで観測してきたSYN/ACKリフレクション攻撃の傾向と同じく、一般的にWebサーバで利用される80/tcpと443/tcpの割合が多いことが確認できます。リフレクタとして利用されたWebサーバは、インターネット上に広く公開されています。しかし、同時に80/tcpや443/tcpにおいては、SYN/ACKリフレクション攻撃を発生させる上で攻撃者がリフレクタとして利用しやすいポートであるということも言えます。
そのほかにもWebサーバを管理している上では、80/tcpや443/tcpにおいてはアクセス量が増加することにおいては特に不思議な事象ではありません。また、Three-way handshakeでコネクションを確立しているわけではないため、コネクションを確立しないセッションは一般的にサーバ上のアクセスログとして記録されにくいことが多く 6、攻撃者から見ると80/tcpや443/tcpはリフレクタにDDoS攻撃の踏み台として利用していることが検出しにくいものと考えられます。
攻撃者の視点でリフレクション攻撃を考えると、リフレクタを管理している管理者などに攻撃の踏み台として利用していることが気付かれると、攻撃通信の一部が管理者により遮断される恐れがあり、攻撃者が期待する最大規模を実現できない可能性が高くなります。そのため、攻撃者はできるだけ攻撃失敗のリスクを避けるために、リフレクタとなる踏み台をできるだけ多く分散することで、攻撃失敗のリスクを下げることができると考えられます。
一方で、攻撃に対する対処方法について慎重に判断するべきだと考えています。SYN/ACKリフレクション攻撃はリフレクタ側からみるとSYN Flood攻撃のように見えてしまう恐れがあります。例えば、SYNパケットをブラックリスト方式で永続的にリフレクタで遮断してしまうと、SYN/ACKリフレクション攻撃における2次的な被害を発生させる可能性もあります。リフレクタで遮断することにおいて、リフレクタ側の保護ができ、上述したようにSYN/ACKリフレクション攻撃の緩和につながる対応に成り得そうですが、SYN/ACKリフレクション攻撃の被害者にとっては攻撃の悪影響を残存した対応となってしまいます。これは普段からアクセスすることの多い80/tcpと443/tcpが踏み台として利用されているからこそ難しい判断が迫られると考えています。
観測事例における情報共有の必要性
SYN/ACKリフレクション攻撃は、特定の観測点だけでDDoS攻撃の開始から終了時までの攻撃通信を全て観測できるわけではありません。このことは、観測点がリフレクタであることと攻撃者が利用できるリフレクタの範囲が広すぎるということによって、観測することの難しさが生まれているものと考えています。仮に攻撃者が事前に幅広くリフレクタで利用できる端末をスキャンしていれば、攻撃最中に攻撃規模を保ったまま柔軟にリフレクタを差し替えることも実現可能であると考えており、そのような場合には攻撃の検出がさらに困難になる可能性が高まります。
IIJだけでなく他の観測点において攻撃の観測情報を交え、幾つもの攻撃事例の観測情報を積み重ねることで、統計的に攻撃における説明が可能な範囲が拡大すると考えています。SOCでは今後もSYN/ACKリフレクション攻撃について観測情報の共有を図っていきますので、皆様の分析にも役立てていただけると幸いです。
追記と訂正
記事公開当初、提示しているグラフをはじめとし、説明が不十分かつ難解な表現になっている箇所がありました。公開当初よりも読者となる方々の範囲を広げるために文章を一部訂正しています。公開後の対応となってしまったことを深く謝罪いたします。
グラフの内容については公開当初と同様のデータになっていますが、ご覧いただきやすくなるようグラフを分割しています。
Notes:
- [1] IIJ SECTブログでは、IIJ のマルウェア活動観測プロジェクト MITF のハニーポットの観測結果をもとにレポートしているが、SOCはIIJマネージドファイアウォールサービスの観測結果をもとにレポートしている。 ↩
- [2] 本記事で示す「検出件数」は正規化した値を提示している。そのため、実際の値は提示している値よりも大きい値となる。 ↩
- [3] SOCでは、SYN/ACK攻撃の監視を行う対象として、IIJマネージドファイアウォールサービスのログとしている。1セッションあたりのログが記録されるため、検出件数で示している数値はセッション数を示している。 ↩
- [4] “Victim IP network x”は特定のIPアドレスレンジを示す。攻撃先が異なれば、”x”が同一であるとしても別のアドレスレンジを意味する。 ↩
- [5] 攻撃を観測していない日時はグラフ上で省略している。 ↩
- [6] サーバ上のログを取得する方法や取得対象に依存する。例えば、サーバ上でセッションタイムアウトを記録している場合にはサーバ上でも確認することができる。また、ファイアウォールやIPSといったセキュリティ機器で確認することができる。 ↩