はじめに
Unix系オペレーティングシステムにおいて、setuid(set user ID)は、ユーザーがファイルの所有者の権限でファイルを実行できるようにする特別なファイル権限です。これは特定のシステム操作には便利ですが、誤用されるとセキュリティリスクを引き起こす可能性があります。このチャレンジでは、システム上のすべてのsetuidファイルを特定してリストアップする方法を学びます。これはシステム管理者やセキュリティ専門家にとって不可欠なスキルです。
環境
LabExでは、試験環境をシミュレートするためにRed Hat Universal Base Image 9 (UBI9) を使用しています。実際のRHCSA試験環境と完全に同一ではありませんが、遭遇するタスクを十分に再現しています。
環境には以下の2つのユーザーが存在します。
labex: sudo権限を持つ標準ユーザー。パスワードはlabexです。root: システム管理者。パスワードはredhatです。
このチャレンジには、実際の試験問題に加え、解説、要件、およびタスクの完了を確認するための自動検証スクリプトが含まれています。これにより、RHCSA試験でカバーされる知識領域を効果的にシミュレートできます。
Setuidファイルの特定とリストアップ
このステップでは、findコマンドを使用してファイルシステム全体からsetuidファイルを検索し、その結果をファイルに保存します。
タスク
- ファイルシステム全体を検索し、setuid権限が設定されているファイルを特定します。
- setuidファイルのリストを、ホームディレクトリ内の
setuid_listという名前のファイルに保存します。
要件
- すべてのコマンドは
/home/labexディレクトリでlabexユーザーとして実行してください。 findコマンドを使用してsetuidファイルを検索してください。- 出力結果は
/home/labexディレクトリ内のsetuid_listというファイルに保存してください。
例
このタスクを完了すると、setuid_list ファイルには以下のようなエントリが含まれるようになります。
/usr/bin/sudo
/usr/bin/passwd
/usr/bin/chage
/usr/bin/gpasswd
/usr/bin/newgrp
/usr/bin/su
/usr/bin/mount
/usr/bin/umount
/usr/bin/crontab
/usr/bin/pkexec
実際のリストは、システムの構成によって異なる場合があります。
まとめ
このチャレンジでは、Unix系システム上のすべてのsetuidファイルを見つけてリストアップする方法を学びました。このタスクは、システム管理者やセキュリティ専門家が、昇格された権限を持つ潜在的に危険なファイルを特定するために非常に重要です。findコマンドに特定のオプションを指定してsetuidビットが設定されたファイルを検索し、その出力をファイルにリダイレクトして分析する方法を習得しました。このスキルは、セキュリティ監査の実施、潜在的な脆弱性の特定、およびシステムの整合性維持に役立ちます。



