列挙
弱点を見つけます
「列挙」はCoddyKit上の無料Ethical Hacking Academyレッスンです。 これはレッスン1/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはEthical Hacking Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Ethical Hacking Academyコースには全4レッスンが含まれています。
最初に列挙する理由
権限昇格とは、低権限の足掛かりをroot権限に引き上げることです。最初に行う最も重要な手順は列挙です。これは、システムに関する情報を体系的に収集し、権限を上げる経路を見つける作業です。「列挙が最も重要です」。
自分のコンテキストを把握する
まず、自分が誰で、どこにいるのかを確認します。ユーザー、グループ、ホスト名、OSのバージョンを特定してください。これらは、その後のあらゆる判断に影響します。
id
whoami
hostname
uname -a
cat /etc/os-releaseSudo権限
最も手早く成果を得られることが多いのはsudo -lです。現在のユーザーが別のユーザーとして実行できる内容を一覧表示します。sudoの設定に1つ誤りがあるだけで、即座にroot権限を取得できる場合があります。
sudo -lSUIDバイナリの探索
SUIDビットが設定されたファイルを探します。これらは、起動したユーザーではなく所有者(多くの場合root)の権限で実行されます。予期しないSUIDバイナリは、権限昇格の有力な候補です。
find / -perm -4000 -type f 2>/dev/null書き込み可能なファイルとディレクトリ
rootが所有する、全ユーザーから書き込み可能なファイルや、rootが実行する書き込み可能なスクリプトは危険です。それらを列挙して、コードを配置できる場所を見つけます。
find / -writable -type f 2>/dev/null | grep -v /proc
find / -perm -2 -type d 2>/dev/nullスケジュールタスク
cronジョブとsystemdタイマーを調査します。自分が編集できるスクリプトをrootのcronジョブが実行していれば、典型的な権限昇格経路になります。
cat /etc/crontab
ls -la /etc/cron.d/ /etc/cron.daily/
systemctl list-timers実行中のプロセスとサービス
プロセス、特にrootとして実行されているプロセスと、待ち受け中のサービスを一覧表示します。rootとして実行されている脆弱なサービスや、localhostにバインドされたサービスは、悪用できる可能性があります。
ps aux | grep root
ss -tulnp
netstat -tulnp 2>/dev/null認証情報と設定ファイル
設定ファイル、履歴、バックアップからパスワードを探します。開発者はデータベース設定、.bash_history、全ユーザーから読み取り可能なバックアップなど、さまざまな場所に秘密情報を残します。
grep -rni "password" /etc /var/www 2>/dev/null
cat ~/.bash_history
find / -name "*.bak" 2>/dev/nullカーネルとソフトウェアのバージョン
正確なカーネルのバージョンと主要パッケージのバージョンを記録します。古いカーネルには公開されたローカルrootエクスプロイトが存在する可能性があり、古いsudoやpkexecも脆弱な場合があります(例:CVE-2021-4034)。
uname -r
cat /etc/lsb-release
dpkg -l | grep -i sudo自動列挙スクリプト
手動での確認は不可欠ですが、スクリプトを使うと作業を高速化できます。LinPEAS、LinEnum、linux-smart-enumerationは数百項目のチェックを自動化し、可能性の高い成果を色で強調表示します。出力は批判的に確認してください。
./linpeas.sh | tee linpeas.out
./LinEnum.sh -t整理と認可を徹底する
権限昇格では複数の小さな設定ミスを連鎖させることが多いため、すべての発見事項を記録してください。また、明示的にテストを許可されたシステムでのみ権限昇格を行うことを忘れないでください。
クイックチェック
列挙に関する知識を確認しましょう。
まとめ
Linuxの体系的な列挙について学びました。
- コンテキストを確認する:
id、uname -a、OSのバージョン sudo -l、SUIDバイナリ、書き込み可能なファイルを確認する- cron、プロセス、サービス、設定ファイル内の秘密情報を調査する
- カーネルとソフトウェアのバージョンを記録し、LinPEASで自動化する
次は、SUIDとsudoの悪用について学びます。
よくある質問
「列挙」レッスンは無料ですか?
はい。「列挙」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Ethical Hacking Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Ethical Hacking Academyコースには全4レッスンが含まれています。
「列挙」で何を学びますか?
弱点を見つけます ブラウザで直接実行するハンズオンコードでEthical Hacking Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。
Ethical Hacking Academyを始めるのに経験は必要ですか?
事前経験は必要ありません。CoddyKitのEthical Hacking Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン1/4です。
「列挙」レッスンにはどのくらい時間がかかりますか?
ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。
このEthical Hacking Academyレッスンでコードを書いて実行できますか?
はい。すべてのEthical Hacking Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。