Nickブログ

セキュリティを中心に過ごしているNickのブログです。

BIG-IPの脆弱性「CVE-2021-22986」の注意喚起と再現

f:id:NickShadows:20210322185724j:plain
※この記事で知り得たことを悪用することは禁止とします。
 影響が大きいため、早めにアップデートすることを推奨します。

概要など

※この記事で知り得たことを悪用することは禁止とします。
 影響が大きいため、早めにアップデートすることを推奨します。


複数のBIG-IP製品には、認証なしでリモートコマンド実行できる脆弱性があります。
対象製品は以下になります。

BIG-IP (LTM, AAM, Advanced WAF, AFM, Analytics, APM, ASM, DDHD, DNS, FPS, GTM, Link Controller, PEM, SSLO)
 ・ 16.0.0 - 16.0.1
 ・ 15.1.0 - 15.1.2
 ・ 14.1.0 - 14.1.3
 ・ 13.1.0 - 13.1.3
 ・ 12.1.0 - 12.1.5
 BIG-IQ Centralized Management
 ・7.0.0、7.1.0
 ・6.0.0 - 6.1.0

対象・対象外製品の詳細は公式を参照ください。
https://support.f5.com/csp/article/K03009991

対策方法

バージョンアップを行ってください。

緩和策として、有効なものと有効ではないものがあります。
公式でQ&Aがまとめられているので、そちらを参照ください。
https://support.f5.com/csp/article/K04532512

再現

※検証はローカルで行っています
1.脆弱性があるBIG-IPを準備する。
f:id:NickShadows:20210322181113p:plain

2.アクセス可能なことを確認する。
f:id:NickShadows:20210322181137p:plain

3.pocを実行する。
認証API
f:id:NickShadows:20210322183744p:plain コマンド実行API
f:id:NickShadows:20210322181211p:plain

個人的な感想

今回検証してみようと思い、環境準備からpoc実行までで1時間かからなかったので、非常に簡単な部類のRCEだと思います。

pocで使われていたパスを調べてみると、iControl REST インターフェイスにはもともとコマンド実行するためのAPIが用意されているようでした。
公式ドキュメントが出てきたので、このAPIは間違いないと思っています。

BIG-IP製品を使ったことが無いので、対策されているバージョンへのアップデート方法がわかりませんでした。
そのため、今回はどこが修正されたのかが現段階ではわかっていません。
分かり次第追記します。

現段階の推測では、トークン発行用の認証が簡単にできるのが問題だと思っています。
実際、コマンド実行用のAPIはトークンが有効でないと401になりました。
f:id:NickShadows:20210322184232p:plain


pocはバグバウンティで使われているツールがサポートしていたので、バグバウンティしている人なら容易に使えるし知っていると考えています。

正直な話、広まっているバグバウンティツールがサポートしたので、hackeroneにワイルドカードドメインで登録しているようなサイトはガンガンツールが回されるので、あっという間に見つかって安全な状態になるのかなと考えています。

日本の企業はバグバウンティ登録していないところがほとんどだと思うので、有志が見つける機会がほとんどありません。
自社内で気づいて対策するしかないです。

これまで放置していたドメインや、思いがけないサブドメインで見つかったりする可能性もあるのですが、ワイルドカードドメインのプラットフォーム診断というサービスはあるのでしょうか?

簡単なスキャンだけでも防げる脆弱性は多いと思いますが、料金がすごいことになりそうなので、あったとしてもやるところは少ないのかなと思っています。

少し話がそれましたが、Exchangeに続きBIG-IPと、連続で大きな脆弱性が出てしまっているなと思いました。
3月は何かがあるのでしょうか。

終わりに

BIG-IPのリスクが高い脆弱性の注意喚起と再現でした。

注意喚起とかに「攻撃されてないかログを確認すること」とあったのですが、使用されているAPIが日本語記事で公開されていなかったので、何を確認していいかわからないと思いました。

pocを読めばわかるのですが、それぞれの会社でpocを読み、その後にログを読むのは時間の無駄だと感じました。

jpcertくらいはAPIとパスを提供してくれても良いんじゃないかと思います。
個人では何か言われるのが怖くて公開できませんので、本当に注意喚起をするのであれば、運用している方々のことを考えてそこまで公表してくれると助かると思います。

この記事で間違っていることなどありましたら教えていただけますと助かります。

繰り返しますが、この記事で知り得たことを悪用することは禁止とします。