SSブログ

shl24 一時rootの可能性に関する考察 [携帯端末]

久しぶりにAndroidネタなど。
これまた久方ぶりに権限昇格が可能となるLinux kernelの脆弱性が公開されました(CVE-2016-5195)。
これ公開とともに多くの検証コードが公開されています、中にはAndroid用のコードもあります。

Fedora,Centos6系,Centos7系では、公開されたコードで本来権限が無く書き換えられないファイルを書き換えることが出来ることを確認しました(って、shl24関係ないじゃん・・・)。

ここからが本題、まずはAndroidでこの検証コードが有効かどうか、安全に確認できるroot化済のSO-04Eで検証してみます、詳細は省略しますがサクッと成功しました・・・。

shl24は01.00.04になってから一時rootを取るための穴が久しく見つかっていない(私が知らないだけで有ったりする?)わけですが、この脆弱性は使えるかもしれません。
とはいっても、私としては現状で不満はないので、挑戦して失敗して取返しのつかないことになるのは避けたいので積極的に試す気にはならないわけです。

でまぁ、参考になるかどうかわかりませんが、adb shellで接続しファイルを作成してwriteパーミッションを落として、検証コードを実行してみました。
writeパーミッションは落としてあるわけですから、普通にファイルをオープンしても書き込めないはずです、当然echoコマンドで作成したファイルを上書きしようとしても、パーミッションが無いよと怒られます、しかし、検証コードを使うと見事に内容を書き換えることが出来ます・・・(これで実証できたのかどうかは今一わかりませんが)。

ということで、なんか行けそうな感じがするのですが、本来の検証コードは/system/bin/run-asをroot shellで置き換えるものとなっています、しかしです、/systemは本来roでマウントされているはずです、このコードがマウント属性まで無視出来るのか、作成者がrwな状態で試したのかは不明です、マウント属性まで無視できるとなるとかなり極悪ですね・・・・、いきなり永久rootとれちゃうじゃないですか。
しかし、シャープ端末にはさらなるプロテクトがかかっていますので、上記の方法ではrun-asを書き換えることは出来ないかもしれません。

試してみるとすれば、/sys/kernel/uevent_helperをmakedevshに書き換えて/dev/shを作るあたりでしょうか、この手がこの端末で使えたかどうか記憶が定かではないですが。

んー、/sys/kernel/uevent_helperであれば再起動すれば基に戻ると思うので気軽に試せる気がしないでもないですが、なにかの間違いがあると困るのであまり試したくはないかなぁ・・・・。


nice!(0)  コメント(0)  トラックバック(0) 

nice! 0

コメント 0

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

トラックバック 0