smbclient

1. 개요

윈도우 공유 폴더에 접속하는 FTP 서비스라고 생각하면 된다.

2. 사용법

2.1. 기본적 사용법

  • -N : 익명 로그인으로 사용

  • -L : 확인 가능한 폴더들 listing

┌──(root㉿kali)-[/home/kali/labs/Monteverde]
└─# smbclient -N -L  //10.129.23.156 
Anonymous login successful

        Sharename       Type      Comment
        ---------       ----      -------
Reconnecting with SMB1 for workgroup listing.
do_connect: Connection to 10.129.23.156 failed (Error NT_STATUS_RESOURCE_NAME_NOT_FOUND)
Unable to connect with SMB1 -- no workgroup available
                                                                                                                                   

2.2. 로그인

-U 뒤에 아이디, 그리고 % 를 붙인 뒤에 비밀번호를 입력하면 된다. 또는 -U 뒤에 아이디만 붙이는 경우 비밀번호를 별도로 입력하라는 창이 그 다음에 나와서 비밀번호를 따로 입력해도 된다.

┌──(root㉿kali)-[/home/kali/labs/Cascade]
└─# smbclient -U s.smith%sT333ve2 //10.129.36.155/Audit$    
Try "help" to get a list of possible commands.
smb: \> 

2.3. 특정 폴더로 접근

공유하고 있는 폴더가 users$ 인 경우 바로 접근하고 싶을 때 사용한다.

┌──(root㉿kali)-[/home/kali/labs/Monteverde]
└─# smbclient //10.129.23.156/users$ -U SABatchJobs
Password for [WORKGROUP\SABatchJobs]:
Try "help" to get a list of possible commands.
smb: \> ls
  .                                   D        0  Fri Jan  3 17:12:48 2020
  ..                                  D        0  Fri Jan  3 17:12:48 2020
  dgalanos                            D        0  Fri Jan  3 17:12:30 2020
  mhope                               D        0  Fri Jan  3 17:41:18 2020
  roleary                             D        0  Fri Jan  3 17:10:30 2020
  smorgan                             D        0  Fri Jan  3 17:10:24 2020

                31999 blocks of size 4096. 28979 blocks available

recurse ON 명령을 한 후에 ls 를 이용하면 하위 폴더를 모두 recursive 하게 확인할 수 있다.

smb: \> recurse ON
smb: \> ls
  .                                   D        0  Fri Jan  3 17:12:48 2020
  ..                                  D        0  Fri Jan  3 17:12:48 2020
  dgalanos                            D        0  Fri Jan  3 17:12:30 2020
  mhope                               D        0  Fri Jan  3 17:41:18 2020
  roleary                             D        0  Fri Jan  3 17:10:30 2020
  smorgan                             D        0  Fri Jan  3 17:10:24 2020

\dgalanos
  .                                   D        0  Fri Jan  3 17:12:30 2020
  ..                                  D        0  Fri Jan  3 17:12:30 2020

\mhope
  .                                   D        0  Fri Jan  3 17:41:18 2020
  ..                                  D        0  Fri Jan  3 17:41:18 2020
  azure.xml                          AR     1212  Fri Jan  3 17:40:23 2020

\roleary
  .                                   D        0  Fri Jan  3 17:10:30 2020
  ..                                  D        0  Fri Jan  3 17:10:30 2020

\smorgan
  .                                   D        0  Fri Jan  3 17:10:24 2020
  ..                                  D        0  Fri Jan  3 17:10:24 2020

                31999 blocks of size 4096. 28979 blocks available

2.5. 파일 다운로드

get 을 이용하면 local 로 파일을 다운로드 할 수 있음

smb: \mhope\> get azure.xml
getting file \mhope\azure.xml of size 1212 as azure.xml (1.6 KiloBytes/sec) (average 1.6 KiloBytes/sec)

2.5.1. 모든 파일 다운로드 셋팅

모든 파일을 다운로드 하고 싶은 경우에는 아래와 같은 셋팅을 하면 된다.

┌──(root㉿kali)-[/home/kali/labs/Cascade]
└─# smbclient -U s.smith%sT333ve2 //10.129.36.155/Audit$ 
Try "help" to get a list of possible commands.
smb: \> mask ""
smb: \> recurse ON
smb: \> prompt OFF
smb: \> mget *
  • mask ““ : 기본적으로 적용될 수 있는 마스크를 없애는 설정

  • recurese ON : 재귀적으로 하위 폴더까지 모두 탐색

  • prompt OFF : mget 실행시 Get file? (y/n) 라는 물음을 안 나오게 만듦

  • mget * : 모든 파일 + 하위 디렉터리 내용을 다운로드 받기

Updated on