본문 바로가기

디지털포렌식 with CTF

(91)
[멀티미디어 포렌식] 우리는 이 파일에 플래그를... 문제에서 확장자가 없는 flag라는 파일 하나를 제공합니다. hxd로 열어보겠습니다. 시그니쳐가 1F 8B 08로 되어있습니다. 시그니쳐를 확인해보니 gzip 파일입니다. flag 파일에 gz 확장자를 달아서 압축을 풀어보겠습니다. 압축을 풀면 새로운 flag라는 파일이 나옵니다. 이를 hxd로 열어보겠습니다. flag 값을 구할 수 있습니다.
[멀티미디어 포렌식] 사진 속에서 빨간색이… 문제에서 png 파일을 하나 줍니다. 열어보겠습니다. 딱히 문제점을 못 찾겠습니다. 문제 제목이 빨간색과 관련되었으므로 stegsolve 툴을 사용해보겠습니다. 빨간색이 이상하다고 했는데 Red plane 0 파트에서 flag 값을 구할 수 있습니다.
[멀티미디어 포렌식] 저는 플래그를 이 파일에.. 문제에서 JPG 파일 하나를 줍니다. 열어보겠습니다. FLAG라는 글자와 hex editor이라는 글자가 적혀있으니 hxd로 사진 파일을 열어보겠습니다. 답의 format인 ABCTF로 검색해보니 flag값을 찾을 수 있습니다.
[멀티미디어 포렌식] 제 친구의 개가 바다에서… 문제에서 jpg 파일 하나를 제공합니다. 형태를 알아볼 수 없는 파일입니다. 온라인 스테가노그래피 도구인 Forensically 툴을 이용하여 보겠습니다. Principal Component Analysis 탭의 Enhancement 기능을 Equalize Histogram으로 바꾸면, 플래그를 구할 수 있습니다.
[네트워크 포렌식] 이벤트 예약 웹사이트를 운영하고… 문제에서 압축 파일 하나를 줍니다. 압축을 풀어보겠습니다. 압축을 풀면 위와 같은 디렉토리와 디렉토리에 해당하는 로그 파일들이 존재합니다. Visual Studio Code 프로그램으로 로그 파일들을 열어보겠습니다. accounts 디렉토리의 history 파일입니다. /var/www/upload/editor/image 경로에 777권한을 준 것이 눈에 띕니다. 777권한을 부여한 경로로 검색해보니, ps_eaf 파일에서 프로세스가 검색되었습니다. php -f 명령어로 reverse.php 파일을 실행했습니다. pid는 5245입니다. network 디렉토리의 lsof 로그에서 pid인 5245로 검색해 보았습니다. 1884 라인에 TCP 프로토콜으로 특정 ip와 연결되었다는 점을 발견할 수 있습니다. ..
[네트워크 포렌식] Sans Network Forensic [Puzzle 8] #9 #1번 문제의 evidence08.pcap 패킷 파일을 사용합니다. WAP의 관리 암호를 구하는 문제입니다. 문제에서 passphrase라는 단어를 명시했으니 와이어샤크를 열고 passphrase로 검색해 보겠습니다. passphrase로 검색해보면 POST 방식의 패킷 하나를 확인할 수 있습니다. passphrase 값에 hahp0wnedJ00라는 값이 들어있습니다. 이와 같이 #9번의 답을 구할 수 있습니다.
[네트워크 포렌식] Sans Network Forensic [Puzzle 8] #8 #1번 문제에서 제공하는 evidence08.pcap 패킷 파일을 사용합니다. username과 password를 구하는 문제입니다. 문제에서 Joe의 MAC 주소를 알려줍니다. 이를 통해 와이어샤크의 필터링 기능으로 Joe의 IP 주소를 찾아보겠습니다. #5번 문제에서 복호화한 패킷 파일에서 Joe의 MAC 주소로 통신한 패킷을 확인해 보겠습니다. 위와 같이 Joe의 MAC 주소로 필터링을 한 뒤, 패킷 상세 페이지에 Joe의 IP 주소를 확인할 수 있습니다. Joe의 IP 주소를 구하였으니 NetworkMiner의 Credentials 탭을 통하여 username과 password를 확인해 보겠습니다. 클라이언트 IP가 Joe의 IP에 해당하는 192.168.1.100 일 때의 username과 pa..
[네트워크 포렌식] Sans Network Forensic [Puzzle 8] #7 #1번 문제에서 주어진 evidence08.pcap 패킷 파일을 사용합니다. Joe가 사용하는 WEP 패스워드를 묻습니다. #5번 문제를 풀이할 때 aircrack-ng 프로그램을 통하여 암호화 키의 값을 찾았습니다. 이를 입력하면 문제를 해결할 수 있습니다.
[네트워크 포렌식] Sans Network Forensic [Puzzle 8] #6 #1번 패킷에서 받은 evidence08.pcap 파일을 사용합니다. Joe의 access point와 관련된 공격자와 그 이외의 측면에서의 초기화 벡터의 개수를 구하는 문제입니다. 공격자 측면의 초기화 벡터의 개수는 #4번 문제와 같은 방법으로 구할 수 있습니다. 명령어에 대한 설명은 #4번 문제 풀이를 참고하시길 바랍니다. 공격자 이외의 측면에서의 초기화 벡터의 개수는 wlan.sa 부분을 != (같지않음) 으로 바꾸어주면 됩니다. 즉 답은 14133+15587인 29720이 됩니다.
[네트워크 포렌식] Sans Network Forensic [Puzzle 8] #5 #1번 문제에서 제공받은 evidence08.pcap 패킷 파일을 사용합니다. 2계층 공격을 실행하는 MAC 주소를 묻고 있습니다. 네트워크 2계층에서의 공격을 알아보기 위하여 aircrack-ng 프로그램으로 암호화 키를 찾아보겠습니다. evidence08.pcap 패킷 파일의 암호화 키를 구하였습니다. airdecap-ng 프로그램으로 패킷 파일을 복호화해 보겠습니다. 위와 같이 -w 옵션으로 암호화 키를 할당해주어 패킷 파일을 복호화해주었습니다. 와이어샤크를 통하여 복호화된 패킷 파일을 열어보겠습니다. 패킷을 분석하다 보면 ARP 프로토콜은 2계층에 속하는 통신 프로토콜이므로 ARP 프로토콜에 의한 공격을 의심해볼 수 있습니다. 지속적으로 ARP 패킷을 보내는 호스트의 MAC 주소는 패킷 상세 페이..