metasploit freeftpd_pass 취약점 실습
칼리리눅스에서 메타스플로잇을 사용한 freeftpd 취약점 실습 입니다.
https://www.exploit-db.com/exploits/28681
freeFTPd 1.0.10 - 'PASS' Remote Buffer Overflow (Metasploit)
freeFTPd 1.0.10 - 'PASS' Remote Buffer Overflow (Metasploit) EDB-ID: 28681 CVE: Date: 2013-10-02
www.exploit-db.com
exploit-db에서 자세한 소스 확인 및 ftpd.exe 다운 가능합니다.
공식설명
freeFTPd 1.0.10 이하에는 다음과 같이 트리거되는 오버플로 조건이 포함됩니다.
사용자가 제공 한 입력은 특수 제작된 PASS 명령. 이로 인해 원격 공격자가 버퍼 오버플로를 일으킬 수 있습니다.
서비스 거부가 발생하거나 임의 코드 실행을 허용합니다.
FreeFTPd에는 익명 사용자 계정을 인증하도록 설정된 계정이 있어야합니다.
위의 설명과 같이 freeFTPd 1.0 이하의 ftp 실행 포트에 해당하여 실행가능한 익스플로잇이며 freeftpd 취약점이 실행을 한다면 메터프리터로 인하여 희생자 PC에 정보수집 및 코드삽입 등의 행위가 가능합니다.
※ 환경설정 [진심중요!!!]
VitualBox or Vmware 설치 후 두개의 가상 os 설치-> WinXP & Kali
WinXP - https://parsiya.net/blog/2017-12-19-windows-xp-32-bit-sp3-virtual-machines/
Windows XP 32-bit SP3 Virtual Machines
There used to be Windows XP virtual machines on modern.ie. I still have a couple of copies around for testing. Unfortunately after XP going out of support, they were removed. But the copies used to be on Azure CDN (credit /u/JoshBrodieNZ. Seems like they r
parsiya.net
winXP 정상적으로 설치하셧으면 exploitdb에서 freeftpd 다운 후 설치 부탁드립니다.
Vulnerable App + 클릭하셔서 다운로드 가능합니다.
* Vulnerable App은 해당 exploit의 취약한 어플리케이션을 의미합니다.
https://security-child.tistory.com/24
칼리리눅스 설치 방법
칼리 리눅스란? - 칼리리눅스는 정보보안 테스트하기 위한 오픈 소스 리눅스 배포판인 백트랙의 후속버전이다. 칼리리눅스에는 매타스폴로잇 및 백트랙처럼 수많은 해킹과 관련된 도구와 설��
security-child.tistory.com
실습용이 아닌 지속적으로 사용하실경우라면 2019년도 버전을 추천드립니다. (armitage 및 안되는 기능이 있음)
이제 공격 실습 들어갑니다.
ip : 희생자 - 192.168.219.198 / 공격자 - 192.168.219.104
WinXP[방화벽x]
XP 설치를 무리 없이 완료하셧다면은 가상머신에서 WinXP실행이 되며 freeftpd 설치가 되어 있을 겁니다.
* 위와 같이 freeftpd를 실행하고 칼리에서 메타스플로잇으로 공격을하면 실행이 안됩니다.
Users -> Add 클릭
위와같이 anonymous 인증 계정을 만들어주시고 로그인 id도 anonymous로 설정해줍니다.
위와 같이 anonymous 계정이 활성화 되었다면 성공하신겁니다.!!!
이제 WinXP는 건드릴것이 없습니다.
Kali
1. service postgresql start -> msfconsole
postgresql 서비스 실행은 세션 정보 저장으로 인한 것이므로 추후 정보에 저장을 안할시에는 할 필요없습니다.
2. freeftpd_pass path 확인
3. use [경로] freeftpd_pass exploit을 사용합시다.
4. show options 확인 후 설정가능한 옵션 setting
해당 exploit에서는 선택할 수 있는 options이 ftpuser, rhosts, rport가 있네요.
* 주의: Requred에서 yes 표시 부분은 무조건 설정해주어야 하는 부분입니다.
freeftpd_pass는 ftp의 채널과 ftp user[anonymous]가 설정되어 있기에 공격자 호스트만 설정해주면 됩니다.
이제 우리는 RHOST만을 설정해주죠.
Tip: Rhost: 원격 접속 pc / Lhost: 로컬 pc
-> R/L로 나눠져 있는 부분은 세션을 받아들이거나 피벗을 하여 경유를 하는 경우에 사용됩니다.
5. set rhost
6. run / exploit
환경설정과 options을 정확히 설정해주셧다면 이상없이 성공되셨을 겁니다.
실패 시 exploit complite, no session 출력되니 이 것이 출력되셧다면 열심히 삽질을 ㅎㅎ;;;
7. 정보수집
* Meterpreter(미터프리터)는 Metasploit Framework에 포함되어 있는 Payload 중의 하나로, 특별한 기능을 제공하는 advanced multi-function Payload 이며, Post-exploitation Payload 입니다.
meterpreter를 사용하면 사용자의 정보수집과 인젝션을 통한 파일 업로드 및 삽입을 하여 후속공격을 사용할 수 있게해줍니다.
끝
* 주의
해킹실습은 자신의 가상 머신에서만 실행하며 실제 운영 서버에 대한 공격을 할 시에 법적 문제 발생으로 인한 책임을 동반하게 됩니다.
분석
https://security-child.tistory.com/31
'보안 > Kali' 카테고리의 다른 글
Metasploit-msfvenom로 인한 기본 악성 실행파일 제작 (0) | 2020.09.04 |
---|---|
metasploit- Search for file in target system[시스템 파일 찾기] (0) | 2020.08.31 |
Metasploit - client-side_adobe flash 공격 실습 및 분석 (0) | 2020.08.28 |
[metasploit] freeftpd_pass 취약점 분석 (0) | 2020.08.25 |
버츄얼박스 칼리리눅스 디스크 용량 늘리기 (0) | 2020.04.13 |