WARGAME/forensic

[dreamhack] sleeping shark

lucykorea414 2023. 5. 30. 21:16
728x90

역대급... 시간이 오래 걸린 문제 ㅜㅜ

문제 파일을 다운 해보면 pcap라서 저는 와이어샤크로 분석을 했습니다

일단 tcp follow 해봤는데 별로.. 쓸모 있는 정보는 나오지 않았습니다

http follow를 했더니 흥미로운게 중간에 보입니다.

보이시나요?

보이시나요?

이 문장이... 상당히 흥미롭습니다. SQL 인젝션으로 보이죠

url decode 해보면

SELECT IF(ASCII(SUBSTRING((SELECT flag FROM s3cr3t LIMIT 1), 35, 1)) = 156, SLEEP(3), 0)

인데 이 문장의 의미는 다음과 같다:

주어진 s3cr3t 테이블에서 35번째 문자의 ASCII 코드 값이 156인지 확인하고 나서 맞으면 3초 대기하고 틀리면 0을 반환함

그래서.. 계속 생각을 하고 헛짓을 하다가 sleep(3)을 보고 아이디어가 떠올랐습니다.

만약 sql 쿼리가 맞는다면 3초를 대기하니깐... 와이어샤크에서 시간을 보면 3초 차이가 나는게 올바른 답이지 않을까??

그래서 필터로 거르기로 했습니다

챗지피티짱...

어차피 udp는 사용할 필요 없으니깐 tcp.time_delta만 해줍니다.

근데...

POST되는 쿼리를 보여주는게 아니라 자꾸 http ok 된 거만 보여줌... ㅜㅜㅜㅜ

그래서 일단 post 만 필터링 해봤습니다

여기서 중간에 3초 차이가 나는게 있는지 한번 볼게요

여기를 보면 4초에서 갑자기 7초로 뛰는걸 볼 수있습니다

그래서 이 친구들만 필터링 하고 싶었는데....

아무리 필터링해도 모르겠더라구요.... 그리고

이것도 안된다고 해서...

그냥 노가다로 했습니다 ^__^

http post만 띄워주고 3초 차이가 나기 전 패킷들을 다 마크해주고(9만개 중 39개..^^) 따로 csv로 저장했습니다

^..^

얘를 다 해석하면

^..^

그래서 s3cr3t에 있는 문자열을 하나하나씩 대조해서 엑셀에 다음과 같이 저장하고

이거는 ascii 로 되어 있는거기 때문에 text로 바꿔주면:

GoN{T1mE_B4s3d_5QL_Inj3c7i0n_wI7h_Pc4p}

이 친구가 flag 값입니당

728x90

'WARGAME > forensic' 카테고리의 다른 글

[써니나타스] 16번  (0) 2024.03.27
[xcz.kr] End Of Image  (2) 2023.07.16
[h4cking game] easy  (0) 2023.06.08
[h4cking game] paint  (1) 2023.06.08
[dreamhack] video_in_video  (1) 2023.06.02