네트워크 보안과 시스템 보안에 대해 어느정도 공부가 된 이 시점에서
침투테스트를 수행해보려고 한다. 말 그대로 OS에 직접 침투를 해보면서 취약점을 파악하는 것이다.
지금까지 배웠던 시스템과 네트워크 기술들을 가지고 적용해보는 시간이라고 할 수 있다.
해당 카테고리에서는 kali linux를 중심으로 windows나 linux를 침투해보는 실습을 할것이다.
주로 사용하는 명령은 'metasploit' 으로 침투테스트를 할 때 주로 사용하는 명령어다.
바로 시작해보도록 하겠다.
1. metasploit 기본 설명
- 특징
취약점 분석도구이자 공격도구. 보안평가를 할 때도 사용하는 도구이며, ruby 언어로 제작되었다.
module화로 이루어져 있어 사용하기 간편하다.
- 활용
모의해킹을 할 때 주로 사용하며 취약점 진단, zero-day 진단, 자동화 도구로도 사용한다.
- 명령어 정리
exploit: system, application, service를 향한 공격행위
payload: shell code 또는 공격 code를 뜻한다. (여기서는 packet에 포함된 data를 뜻하지 않음)
module: ruby 언어로 이뤄진 module
session: MSF와 공격대상 (MSF= MetaSploit Framework)
- module
Exploit: 공격 명령
Auxialiary: payload를 필요로 하지 않는 공격, 정보수집 관련 공격
Post: exploit 이후 추가적인 공격
- Interface
metasploit에 접속하기 위한 명령어
msfconsole: text mode의 exploit 환경
armitage: graphic mode의 exploit 환경
실습은 msfconsole로 진행하도록 하겠습니다.
-msfconsole 명령어 모음
help : 도움말
search : 사용가능한 module 검색
use* : 특정 module 사용선언
info : module의 세부정보 활용
set * : module이 사용할 정보 설정
unset : module 사용 설정 해제
exploit : module 실행 (공격 실행)
jobs : 현재 작업상태 확인
2. metasploit 실전
- msfdb init
- service postgresql restart
위의 두 가지 명령을 수행하는 이유는
metasploit이 사용하는 DataBase framework를 초기화하기 위해서다.
처음 metasploit을 실행할 때 한번만 수행하면 되는 부분이기 때문에 알아만 두자
그리고 msfconsole 명령을 실행시키면 다음과 같이 shell code가 바뀔 것이다.

- 정보수집 단계
이 시간에 취약점을 분석할 OS는 windows10이다. 해당 OS의 samba 계정을 공격해보자.
그 전에 항상 해야할 일은 정보수집이다. nmap을 통해 해당 OS의 정보를 수집해보도록 하자

현재 windows10의 135,139,445번 port가 open 되어있음을 알 수 있다.
참고로 samba port는 139번과 445번을 사용한다.
우리는 이를 통해 samba 접속을 통한 공격을 수행할 수 있다는 것을 알게 되었다.
- use scanner/smb/smb_version ( smb를 스캔하기 위한 module 장착 )
- set smb user administrator ( smb에서 사용할 사용자를 administrator로 설정 )
- set rhosts 192.168.10.0/24 ( 현재 내부 네트워크 전체 대역 )
- set threads 64 ( process 64개로 실행 )
- run (실행)

현재 192.168.10.0/24 네트워크에 대한 scan이 성공적으로 이루어졌다.

- Bruteforce 공격 단계
정보수집 단계가 끝났으니 이제 공격을 시도해보도록 하겠다.
말 그대로 무작위로 때려넣어서 맞으면 되는 방식의 공격이다.
그래서 windows10에 다음과 같이 사용자를 하나 추가하도록 하겠다.
계정이름은 korea이고, 비밀번호는 123456이다.
-net user korea 123456 /add (windows에 korea 사용자 추가)

- use auxiliary/scanner/smb/smb_login (smb login에 대한 정보수집 module 장착)
- set smbuser korea (smb user를 korea로 설정)
- set smbpass 123456 (smb 비밀번호를 123456으로 설정)
- set rhost 192.168.10.134 (smb 공격할 대상 192.168.10.134 설정)
- run

참고) show options를 통해 해당 module의 option 설정상태를 확인할 수 있다.
또한 어떤 option들을 사용할지 결정할 수 있다.

'침투테스트' 카테고리의 다른 글
3. Bind TCP, Reverse TCP (1) | 2022.11.02 |
---|---|
5. ps 탈취 (0) | 2022.01.07 |
4. meterpreter (0) | 2022.01.06 |
2. SSH, MYSQL 공격 (0) | 2022.01.03 |