0x01脆弱性はじめに
Google Project Zeroのサイバーセキュリティ研究者は、カーネルバージョン3.16から4.18.8以降、Linuxカーネルに存在する高級脆弱性の詳細と概念実証(POC)エクスプロイトをリリースしました。カーネルの脆弱性(CVE-2018-17182)は、Linuxメモリ管理サブシステムのキャッシュ障害エラーであるWhite Hat Hacker Jann Hornによって発見され、リリース後に脆弱性が発生しました。悪用された場合、攻撃者がターゲットシステムで特権を取得できるようになります。 UAF後の脆弱性は、非主権ユーザーがメモリ内のデータを破損または変更するために活用できるメモリの破損エラーのクラスであり、その結果、サービス拒否(システムクラッシュ)またはアップグレード許可を得て、システムLinuxカーネルの脆弱性にアクセスするための管理権限を取得して、9月18日にオスセキュリティの郵送リストで、翌日のボースでパッチをかけた登録リストで公開されました。 4.14.71、4.9.128および4.4.157。 2058年3月16日のリリースにも修正があります。バージョン4.15.0-34.37を備えたUbuntu 18.04に添付された醜い脆弱性。カーネルLinux-Image-4.15.0-34-Generic。ルートシェルがポップアップする前に(40分〜1時間)実行する必要があります。
0x02脆弱性はバージョンに影響します
Linux Kernel 4.18.8および以前のバージョン
0x03脆弱性の再発
1。この繁殖環境:ubuntu18.04*64カーネルバージョン:Linux-image-4.15.0-34-generic
2.更新ソースを追加します
sudo vi /etc/apt/sources.list
deb-src https://mirrors.tuna.tsinghua.edu.cn/help/ubuntu/Main Restripted
3.オペレーティングシステムを更新します
sudo apt-getアップデート
4.オペレーティングシステムを更新します
sudo apt-get dist-upgrade
5。GCCとG ++をインストールします
sudo apt-getインストールGCC
sudo apt-getインストールg ++
6.新しいテストアカウントを作成します
7。Expをダウンロードして利用します
git clone https://github.com/backlion/cve-2018-17182.git
8。VMacacheディレクトリを入力し、コンパイルされたファイルを削除します。
RM Puppet Puppeteer Suidhelper
9。コンパイルを実行してコンパイル。shで、3つのバイナリファイルが現在のディレクトリで生成されます:puppet、puppeteer、suidhelper
10.次に、通常のユーザー許可テスト:に切り替えます
11.バイナリ特権エスカレーションファイルの操り人形を実行します。これには、待つのに約1〜1.5時間かかり、最終的にテスト許可からルート許可までアップグレードが表示されます。
0x04脆弱性修復の提案
現在、メーカーは脆弱性を修正するためのアップグレードパッチをリリースしています。パッチはリンクから取得されます。
http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=7a9cdebdcc17e426fb5287e4a82db1dfe86339b2