Flash도 데이터를 보낼때 <form>태그의 Post방식으로 보내는거와 동일하게 데이터가 보내집니다.


현재 score는 109384이며 194175가 되어야 성공한다고 합니다.



"Brupsuite"라는 프록시 툴을 이용해서 중간해 데이터를 잡아보면 다음과 같이 score가 보내지는데


해당 값을 194175로 변경하고 보내면 해결이 되는거라 생각했습니다.. 


그러나 301 redirect가 나오면서 페이지를 옮겨다니다 실패하게 되었습니다..



그렇게 오래 지나고.. post방식으로 날라가는거 같으니 <form>태그를 만들어서 날려보면 될꺼같아 보내봤습니다,


아래와 같이 내용을 추가하고 보내보니 성공하게 됩니다.

1
2
3
4
<form method="post" action="/levels/basic+/3?submit">
    <input type="text" name="score" id="score">
    <input type="submit" value="submit">
</form>
cs



왜.. 프록시 툴로 안될까요?.. 알수가 없네요 ㅜ

'WarGame > hackthis.co.uk' 카테고리의 다른 글

[HackThis] Intermediate level4  (0) 2018.09.19
[HackThis] Basic+ level4  (0) 2018.09.03
[HackThis] Main level10  (0) 2018.08.31
[HackThis] Main level9  (0) 2018.08.31
[HackThis] Real level1  (0) 2018.08.31

binary 문제로 리버싱을 통해 해당 키값을 얻으면 됩니다.



"x86dbg" 를 사용했습니다.


앞선 문제와 같이 SuNiNaTaS는 문제를 풀었을때 "Congratulation!"이라는 문구가 나오기에 해당 문구를 검색해서 찾습니다.



[0045035A]에서 점프문으로 어떤 비교한 값이 같아야 점프가 되지않아 성공하게 됩니다.

비교하는 값은 바로 위 코드인 [00450355]에서 비교하게 됩니다.


해당 구문에 breakpoint를 걸어놓고 임의의 값을 입력해 실행해 봅니다.



"1234"라는 값을 입력해서 진행해보니 바로 눈에 띄게 알맞은 값과 키값이 보이게 됩니다..


확실하게 하기위해 해당 함수안으로 진입해봅니다.



함수안에서 보시면 입력한 값인 "1234"와 edx에 들어있는 값을 비교하는 구문이 보입니다.

[0040460F]에서 비교를 하여 같으면 [004046A6]으로 점프하여 함수를 벗어나게 됩니다.


edx에 입력되어있는 값을 프로그램에 입력해보면 "Congratulation"이라는 창으로 인증 키값이 나오게 됩니다.



'WarGame > SuNiNaTaS' 카테고리의 다른 글

SuNiNaTaS_28 [FORENSIC]  (0) 2018.09.12
SuNiNaTaS_13 [MISC]  (0) 2018.09.11
SuNiNaTaS_10 [BINARY]  (0) 2018.09.08
SuNiNaTaS_4 [WEB]  (0) 2018.09.07
SuNiNaTaS_9 [BINARY]  (0) 2018.09.07

Binary 문제입니다.

파일을 다운로드 받으면 간단한 프로그램이 하나 나오게 됩니다.


"OK" 버튼을 누르면 "Try again!" 이라는 메시지가 나오게 됩니다.

무슨 값을 입력해도 나오게 됩니다. 적당한 값을 찾아야 할 것으로 보입니다.


이번에는 IDA 라는 디버깅 툴로 문제를 풀어봤습니다.


처음에 EXE 파일이기에 "MS-DOS executable (EXE)"로 파일을 열어봤는데 packing 되어있다고 합니다...

그래서 제대로 된 디버깅을 할 수 없었습니다.


그러던 중 다른 type으로 열어볼까 해봐서 "Microsoft.Net assembly"로 파일을 열어봤습니다.



Packing이 되어있어서 제대로 확인할 수는 없었지만 다음과 같이 인증 키값이 보입니다.

해당 인증키로 프로그램에 어떤 역할을 하진 않았지만 문제 인증에는 성공했습니다.



아직 디버깅에 익숙하지도 않고 특히 IDA에 더더욱 익숙하지 않아.. 제대로된 설명을 못해드립니다 ㅜ



[풀이 이후]


문제의 인증키의 내용중에  "peid"라는 말이 있었습니다.


peid는 바이너리 분석 툴로서 프로그램이 어떤 언어로 제작되어있는지 패킹은 어떤 방식으로 했는지


리버싱 전에 사전에 확인할 수 있는 툴이라고 합니다.


해당 프로그램을 peid로 열어보면 c#으로 만들어져 있다고 나와있습니다.


"microsoft visual c# / basic .net decompiler" 라고 구글에 검색을 해보시면 dotpeek라는 프로그램이 나옵니다.

해당 프로그램을 다운로드 받고 파일을 열어보면 c#코드가 깔끔하게 보이게 됩니다.



해당문제의 요점은 디버깅을 시작하기전에 peid로 어떤 언어로 만들어졌는지 확인하고 


그 언어에 맞는 디버깅을 해보라는 내용 같습니다..



'WarGame > SuNiNaTaS' 카테고리의 다른 글

SuNiNaTaS_13 [MISC]  (0) 2018.09.11
SuNiNaTaS_11 [BINARY]  (0) 2018.09.09
SuNiNaTaS_4 [WEB]  (0) 2018.09.07
SuNiNaTaS_9 [BINARY]  (0) 2018.09.07
SuNiNaTaS_7 [WEB]  (0) 2018.09.07

+ Recent posts