IPブロックリストについて考えてみる RIPE NCC Webinar "IP Blocklisting Basic"
皆さんこんにちは。今回はRIPE NCCのウェビナー「IP Blocklisting Basic」に参加してみてのメモです。備忘録レベルですが。
RIPE NCCのウェビナー情報はこちら。無償のe-learningコースはこちら。どちらもコンテンツが充実しています。
イントロ
- インターネットはBGPで経路交換している、などの基本的な説明。
- Adobeconnectのシステムを利用して四択の質問が何度かありました。「インターネットリソースが悪用、誤った利用がされるのはどういったときでしょう?」A.人為的なミスによる経路広報、、などの選択肢が表示され、リアルタイムで投票結果が受講者、講師の両方から見えていて講師がコメントしていました。ウェビナーだと気を抜くと受け身になりがちなので、良い機能だと思いました。イントロ以外でも何度もこの形式での質問が挟まれていました。
- RIPE NCC配下には20,000以上のLIRがある。
IRRに登録するルートオブジェクトの話
- ルートオブジェクトはプレフィックスに情報を紐づけるもの。ASにプレフィックスを紐づけるものではないので注意。あくまでプレフィックス(RIRやLIRから配布されているIPリソース)が主体。
- RIPE Statの使い方が説明されていました。
Public Blocklist
- SPAMHAUSやspamcop.net、CBLなどのアイコンがスライドに出てきていました。
- IPがブロックリストに登録される理由が紹介されていました。スパム、ミスコンフィグ、ボットやマルウェアなどなど。
- 特にマルウェアに感染すると自分のIPがブロックリストに載りやすいので注意すべき。
- Open Mail Relayは悪用されやすいのでRFC5321で推奨されていない。
- 再配布(Transfer)されたIPリソースは過去に悪用されている可能性もゼロではないので注意しておくべき。RIPEの場合はRIPE Database上のデータをすべて削除して、6か月待ってLIRに再配布されるとのこと。
自分のIPがブロックリストに載ったときの対応
- Don't panic.
- ブロックリストに乗るような通信が発生していないか確認。
- 難しい場合があるがリストに載せた人に連絡をつける。
どこかしらのブロックリストを見て、それを元にコンフィグを書くようなことをした経験はないので、実際にどの程度使われているのか、どのブロックリストが信頼性が高いのかが気になってきました。
自分が管理しているIPがブロックされると解決するのは手間がかかると思うので、事前にIRRやROA、abuseされやすい通信が起こる環境でないか等できることをするのが大切ですね。
Adobeconnectの質問機能が秀逸で、ウェビナー全体の体験としてはとても良かったです。アメリカより英語が聞き取りやすいのも助かりました。。
局地的に使われているプレフィックスがリークされた場合の影響 TELIN AS7713によるリーク
皆さん、こんにちは。今回の記事はKintikのブログの一部要約です。 New Year, New BGP Leaks | Kentik Blog
TELIN AS7713によるリーク
- 05:37 UTC on 2 January 2023から5分間リークが検知された。
- AS7713がリークした経路がAS138805を経由して、そのトランジットであるAS4800にアナウンスされた。
- 最初にAS138805からルートリークが検知された。
- プレフィックス長の長い経路が広報されるBGP Optimizerなどとは異なる現象だった。
リークされた具体的な2つのプレフィックスが例示されますが、これら二つはVisibility(経路を受信しているBGPデバイスの数や比率)が低かったようです。恐らく、国単位あるいはアジアなど限られた範囲で利用されている経路だったのでしょう。このようなVisibilityが低いプレフィックスの場合、リークした経路と競合する経路が存在しない可能性が高まり、経路が広範囲に伝搬されやすいというのが筆者の分析でした。 実際にRouteviewsのBGPデバイスの情報をソースにして、興味深いグラフが示されています。通常時に伝搬されている数が少ない(経路が広報されている範囲が狭い、恐らく地域的に使われているプレフィックス)経路ほど、リーク時の経路伝搬の数は多いことがグラフからもわかります。(リンク先参照)
Purple Cow Internet社 AS397545の104.36.174.0/23
- TorIX AS11670からリークを確認。
- KentikのBGP測定用デバイスからのVisibilityが平常時の20%から70%に伸びた。
Digital United社の123.205.251.0/24
- HKIX AS4365からリークを確認。
- リーク時にVisibilityが30%から70%に増加した。
BGP、RPKIのリアルタイム監視&通知ツールPacketVisを使ってみた
皆さんこんにちは。今回はPacketVisについての記事になります。
PacketVisとは
BGP、RPKIのリアルタイム監視&通知ツールです。ASを登録するだけで経路のハイジャックや消失、RPKI Invalidな経路の広報、ROAの期限切れなどを通知してくれます。核になっている通知機能自体はBGPalerterとして開発されているようで、PacketVisはWebインターフェイスのようです。
BGPalerterはOSSで、利用している組織のリストがあるのですが、有名どころはLINX、Fastlyあたりでしょうか。NTTのチームを中心に開発されているようです。
データセットはOregon大学のRoute Viewsです。
見た目もかっこいいですし、使い勝手がよいと思いました。ポイントとしては
- 無料(2023/1/7時点)
- GitHubでサインインできる
- Organizationを作って、複数ユーザーで同じダッシュボードで監視ができる
- メール、Slack、Teams、syslogなどと連携できる
- APIでこれまでの通知と、PacketVis自体のアップタイムを取得できる
使い方の流れ
最初にやることは単純で、
- アカウント登録
- 監視するASの登録
を行えば後はイベントが発生して、通知が来るのを待つのみです。
左上に並んでいるタブが大切なので一つ一つコメントしていきます。
Notificationsタブ
登録したASに発生したイベントの通知が並びます。
フィルターと検索窓の使い分けに注意が必要です。例えば、複数のASを監視していてそのうちの一つのASについて確認したい場合は、検索窓を利用する方が早いです。フィルターはカラム毎に適応させるもので、カラムにはASという項目がないためです。特定のプレフィックスについて調べる場合も同様に検索窓を利用した方が早いと思います。フィルターで使いそうなのは、severityが高いものだけ見たい時や、typeがhijackのものを見たいときに限られるかと思いました。
また、CSVやプリントでのエクスポートが可能です。不要な通知は個別にアーカイブすることもできます。通知が多くと見づらくなってくるので行の幅を広げたりもできます。使いやすいように作り込まれていますね。
各通知のSummary部分にマウスをあわせるとホバーで全文が表示されます。クリックすると詳細を確認することができます。これは経路ハイジャックと疑わしきイベントの詳細です。
ハイジャックしたASやされたASはもちろんのこと、ハイジャック経路を受けとったPeerやAS-PATH、コミュニティまで一目で確認できます。
さらに下にスクロールダウンするとActionsという項目があり、この経路についての通知をこれ以上受け取らないようにしたりもできます。Prefixをクリックさらに詳細な通知の設定やディスクリプションの記述が可能です。
BGPタブ
左に表示されるサイドバーで画面を切り替えることができますが、最初に表示されるのはResouresバーで監視対象になっているプレフィックスが一覧表示されます。EDITボタンから各プレフィックスの通知設定を行うことができます。
Resource TypeをASに切り替えると監視しているASのリストが表示されます。ASを監視対象から削除するにはEDITボタン→右下のDELETEボタンという流れになります。新しくASを登録するには左に並んでいるWizardバーから追加できます。
Monitoring featuresバーは通知のデフォルト設定?をする画面です。通知できる項目を少し見てみましょう。
HijackはRPKIで検知されています。原因はRPKI invalidになるので1週間ほど試しに使っていた範囲ではほぼ同じタイミングで通知されてきました。
Misconfigurationが少しつかめていないところですが、ROA登録がない経路が対象になるようです。あるASがもつ経路のリストに含まれていない経路が広報された際に通知されるとのことです。
これは英語の問題ですが、経路が広報されている状態/経路が消失することをVisibilityというのですね。
最後の方にいくつか通知の例を残しておきます。
APIタブ
APIのドキュメントです。APIキーの生成はSettingsタブのAPIバーから行う必要があります。
Uptimeタブ
PacketVisに関わるシステムの稼働状況を一目で確認できます。
Settingsタブ
ユーザーやOrganizationの設定だけでなく、Slack等との連携のためのIntegrationsバーやAPIキーを生成するためのAPI Keysバーがあります。
通知の例