
[推奨される説明] pdftoroff hovacui 1.1.0 は、コマンド実行の影響を受けます。影響は、任意のコードを実行することです (ローカル)。コンポーネントは hovacui.c の 1574 行目です。攻撃ベクトルは次のとおりです。 この脆弱性を悪用するには、HOME 環境変数を変更し、postsave として何らかのコマンドを設定し、 PDF ファイルを開いて保存するだけです。hovacui には、任意のコマンド実行を可能にする脆弱性が 見つかりました。1574 行目: 1574 system(command); 環境変数 HOME は信頼されており、攻撃者は それを偽装できます。その後、攻撃者は設定ファイル内の
postsaveとして任意のコマンドを入力でき、 あとは PDF ファイルを開いて保存するだけです。これは、マシンに対してコード実行、サービス拒否、 または EoP の影響を与える可能性があります。
[追加情報] hovacui Linux フレームバッファと X11 向けの hovacui PDF ビューアは、テキストのブロックに自動的に ズームします。小さな画面でのファイル表示を目的としており、複数カラムのドキュメントに特に便利です。
hovacui は pdftoroff の一部です。リンク: https://aur.archlinux.org/packages/pdftoroff
設定ファイルのパスは次のようにして求められます
snprintf(configfile, 4096, "%s/.config/hovacui/hovacui.conf", 3358\t\t\tgetenv("HOME"));
したがって、HOME を偽装して独自の設定ファイルを作成するだけで済みます。
そして、コマンド実行を得るには PDF を保存するだけです。なぜなら savepdf() 関数には 次のコードがあるからです:
else { cairoui_printlabel(cairoui, output->help, NO_TIMEOUT, "saved to %s", path); if (post && output->postsave != NULL) { command = malloc(strlen(output->postsave) + 100); sprintf(command, output->postsave, fileno, fileno); system(command); free(command); } return CAIROUI_DONE; }}
output->postsave は攻撃者によって完全に制御されます: if (sscanf(configline, "postsave %900[^ \r]", s) == 1) output.postsave = strdup(s); 保存するには d を入力し、続けて s を入力します hovacui Web ページ:
[脆弱性タイプ: その他] コマンド実行
[製品のベンダー] pdftoroff
[影響を受ける製品コードベース] hovacui - 1.1.0
[影響を受けるコンポーネント] hovacui.c、1574 行目
[攻撃タイプ] ローカル
[影響: コード実行] true
[影響: サービス拒否] true
[影響: 権限昇格] true
[攻撃ベクトル] この脆弱性を悪用するには、HOME 環境変数を変更し、postsave として何らかのコマンドを設定し、PDF ファイルを開いて保存するだけです。
[発見者] Maher Azzouzi