家studyをつづって

IT技術やセキュリティで勉強したことをつづっています。

【Hack The Box】Beep

偵察/スキャン

まずはnmapによる調査を行います。

ports=$(nmap -p- -P0 -T4 10.10.10.7 | grep ^[0-9] | cut -d '/' -f 1 | tr '\n' ',' | sed s/,$//)
nmap -sC -sV -v -P0 -p$ports 10.10.10.7

 

 

 

SSHやメール系のサービス、また、Webのサービスが動いていることがわかります。

┌──(kali㉿kali)-[~]
└─$ nmap -sC -sV -p$ports 10.10.10.7  
Starting Nmap 7.91 ( https://nmap.org ) at 2021-06-01 13:38 JST
Nmap scan report for 10.10.10.7
Host is up (0.20s latency).


PORT     STATE SERVICE    VERSION
22/tcp   open  ssh        OpenSSH 4.3 (protocol 2.0)
| ssh-hostkey: 
|   1024 ad:ee:5a:bb:69:37:fb:27:af:b8:30:72:a0:f9:6f:53 (DSA)
|_  2048 bc:c6:73:59:13:a1:8a:4b:55:07:50:f6:65:1d:6d:0d (RSA)
25/tcp   open  smtp       Postfix smtpd
|_smtp-commands: beep.localdomain, PIPELINING, SIZE 10240000, VRFY, ETRN, ENHANCEDSTATUSCODES, 8BITMIME, DSN, 
80/tcp   open  http       Apache httpd 2.2.3
|_http-server-header: Apache/2.2.3 (CentOS)
|_http-title: Did not follow redirect to https://10.10.10.7/
110/tcp  open  pop3       Cyrus pop3d 2.3.7-Invoca-RPM-2.3.7-7.el5_6.4
|_pop3-capabilities: IMPLEMENTATION(Cyrus POP3 server v2) UIDL STLS TOP EXPIRE(NEVER) USER LOGIN-DELAY(0) APOP RESP-CODES AUTH-RESP-CODE PIPELINING
111/tcp  open  rpcbind    2 (RPC #100000)
| rpcinfo: 
|   program version    port/proto  service
|   100000  2            111/tcp   rpcbind
|   100000  2            111/udp   rpcbind
|   100024  1            874/udp   status
|_  100024  1            877/tcp   status
143/tcp  open  imap       Cyrus imapd 2.3.7-Invoca-RPM-2.3.7-7.el5_6.4
|_imap-capabilities: MULTIAPPEND ID SORT STARTTLS UIDPLUS ANNOTATEMORE NAMESPACE IDLE MAILBOX-REFERRALS UNSELECT NO LIST-SUBSCRIBED URLAUTHA0001 QUOTA OK ATOMIC RIGHTS=kxte THREAD=REFERENCES CHILDREN THREAD=ORDEREDSUBJECT CATENATE IMAP4rev1 Completed CONDSTORE LITERAL+ IMAP4 LISTEXT ACL RENAME X-NETSCAPE BINARY SORT=MODSEQ
443/tcp  open  ssl/https?
| ssl-cert: Subject: commonName=localhost.localdomain/organizationName=SomeOrganization/stateOrProvinceName=SomeState/countryName=--
| Not valid before: 2017-04-07T08:22:08
|_Not valid after:  2018-04-07T08:22:08
|_ssl-date: 2021-06-01T04:50:18+00:00; +10m55s from scanner time.
993/tcp  open  ssl/imap   Cyrus imapd
|_imap-capabilities: CAPABILITY
995/tcp  open  pop3       Cyrus pop3d
3306/tcp open  mysql      MySQL (unauthorized)
|_ssl-cert: ERROR: Script execution failed (use -d to debug)
|_ssl-date: ERROR: Script execution failed (use -d to debug)
|_sslv2: ERROR: Script execution failed (use -d to debug)
|_tls-alpn: ERROR: Script execution failed (use -d to debug)
|_tls-nextprotoneg: ERROR: Script execution failed (use -d to debug)
Service Info: Hosts:  beep.localdomain, 127.0.0.1, example.com


Host script results:
|_clock-skew: 10m54s


Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 245.85 seconds

 

httpでアクセスすると、httpsにリダイレクトされました。

TCP/443では、「Elastix」というIP電話のサービスが動いているようです。

Elastixは、IP PBX、電子メール、IM、FAX、およびコラボレーション機能を統合する統合コミュニケーションサーバーソフトウェアです。 Webインターフェイスがあり、予測ダイヤル機能を備えたコールセンターソフトウェアなどの機能が含まれています。

en.wikipedia.org

 

適当なユーザ名を試してみましたがログインはできませんでした。

 

次にSSHではアクセスすると以下のようなエラーが表示されました。

no matching key exchange method found. Their offer: diffie-hellman-group-exchange-sha1,diffie-hellman-group14-sha1,diffie-hellman-group1-sha1 

 

このエラーについては「.ssh」配下の「config」ファイルに以下の内容を追記することで解決できます。

 

ファイル位置確認

┌──(kali㉿kali)-[~/.ssh]
└─$ ls -al                                                                                                              255 ⨯
合計 16
drwx------  2 kali kali 4096  6月  1 21:38 .
drwxr-xr-x 23 kali kali 4096  6月  1 21:38 ..
-rw-r--r--  1 kali kali  123  6月  1 21:38 config
-rw-r--r--  1 kali kali 1326  6月  1 21:38 known_hosts

 

追記内容                                                                                                            
┌──(kali㉿kali)-[~/.ssh]
└─$ cat config 
host 10.10.10.7
    KexAlgorithms +diffie-hellman-group-exchange-sha1,diffie-hellman-group14-sha1,diffie-hellman-group1-sha1

 

現時点ではアカウントの情報がないため、こちらもログインはできませんでした。

 

Webに関して、gobusterで調査を行います。 

┌──(kali㉿kali)-[~]
└─$ gobuster dir -u https://10.10.10.7 -w /usr/share/dirb/wordlists/common.txt -k                                         1 ⨯
===============================================================
Gobuster v3.1.0
by OJ Reeves (@TheColonial) & Christian Mehlmauer (@firefart)
===============================================================
[+] Url:                     https://10.10.10.7
[+] Method:                  GET
[+] Threads:                 10
[+] Wordlist:                /usr/share/dirb/wordlists/common.txt
[+] Negative Status codes:   404
[+] User Agent:              gobuster/3.1.0
[+] Timeout:                 10s
===============================================================
2021/06/01 22:06:49 Starting gobuster in directory enumeration mode
===============================================================
/.hta                 (Status: 403) [Size: 282]
/.htaccess            (Status: 403) [Size: 287]
/.htpasswd            (Status: 403) [Size: 287]
/admin                (Status: 301) [Size: 309] [--> https://10.10.10.7/admin/]
/cgi-bin/             (Status: 403) [Size: 286]                                
/configs              (Status: 301) [Size: 311] [--> https://10.10.10.7/configs/]
/favicon.ico          (Status: 200) [Size: 894]                                  
/help                 (Status: 301) [Size: 308] [--> https://10.10.10.7/help/]   
/images               (Status: 301) [Size: 310] [--> https://10.10.10.7/images/
/index.php            (Status: 200) [Size: 1785]                                 
/lang                 (Status: 301) [Size: 308] [--> https://10.10.10.7/lang/]   
/libs                 (Status: 301) [Size: 308] [--> https://10.10.10.7/libs/]   
/mail                 (Status: 301) [Size: 308] [--> https://10.10.10.7/mail/]   
/modules              (Status: 301) [Size: 311] [--> https://10.10.10.7/modules/]
/panel                (Status: 301) [Size: 309] [--> https://10.10.10.7/panel/]  
/robots.txt           (Status: 200) [Size: 28]                                   
/static               (Status: 301) [Size: 310] [--> https://10.10.10.7/static/
/themes               (Status: 301) [Size: 310] [--> https://10.10.10.7/themes/
/var                  (Status: 301) [Size: 307] [--> https://10.10.10.7/var/]    
                                                                                 
========================================================

 ※「-k」はSSL証明書を検証しない

上記で出てきたサイトにアクセスしたが、有用な情報は得られませんでした。

 

アクセスの取得 

「elastix」についてエクスプロイトがないか調べてみます。

 

searchsploit elastix

 

上記で表示されたものの中から「37637」を見てみます。

「-m」をつけることで、コードをコピーすることができます。

 

searchsploit -m 37637

 

上記コードの中身を見てみると、パスのようなものが書かれています。

こちらを参考に、beepにアクセスすると不思議なページが表示されました。

このままだと見にくいので、ブラウザのソース表示で見やすくします。

f:id:iestudy:20210609101518p:plain

ページへアクセス

f:id:iestudy:20210609101626p:plain

ソース表示後

表示されたページにはパスワードと思われる記載が確認できます。

こちらの内容でSSHにアクセスできないか試してみます。

f:id:iestudy:20210609101853p:plain

rootでのアクセス成功

 

パスワードが使いまわしされていたので、SSHよりrootでアクセスすることができました。

 

参考にさせていただいたサイト

貴重な情報をありがとうございます。

sanposhiho.com

paichan-it.hatenablog.com

github.com