CTF write_up/Hack CTF
-
[Forensics] 잔상CTF write_up/Hack CTF 2019. 8. 30. 21:17
compare.zip 파일을 열어보면 똑같은 파일이 2개가 있습니다. 처음에는 compare 명령어를 이용해서 문제를 풀으려고 했으나 잘 되지 않았습니다. 그래서 HxD에 있는 비교 기능을 사용해 보았습니다. 첫번째 차이점을 확인해 보면 다음과 같습니다. 48 이라는 값이 있었는데 아스키코드로 H를 뜻합니다. 그다음 차이점을 확인해 보겠습니다. 61이네요 a입니다. Ha가 나오는 것으로 보아 HackCTF 의 모양이 나올것 같기에 afterimage_2.jpeg에 나오는 문자를 연결하면 될 것 같습니다. python 코드를 이용해서 작성해 보겠습니다. 결과는 아래와 같습니다. Flag : HackCTF{wh3r3_@re_you_l00king?}
-
[Web] LOLCTF write_up/Hack CTF 2019. 8. 17. 01:16
문제를 풀어보면 다음과 같은 화면이 나옵니다. 음.. local이 아니라네요 local로 만들어야 하는 것 같습니다. 주소에 flag.php가 보이네요 해당 페이지와 flag가 관련이 있는것 같습니다. just play have fun enjoy the game 을 클릭해 보니 다음과 같은 화면이 나옵니다. user에 값을 넣으면 롤전적 사이트인 op.gg로 이동하게 됩니다. 소스코드를 확인해 보면 다음과 같은 사실을 알 수 있습니다. POST 방식으로 데이터가 전송이 되고 hidden 속성을 가진 url 정보도 있습니다. 하지만 입력값은 query에 담겨 지기 때문에 value 에 있는 히든 url 에는 값이 들어가지 않습니다. post를 보자마자 느낀점은 서버와 관련된 공격을 것 같았고, SSRF 라..
-
[Web] 가위바위보CTF write_up/Hack CTF 2019. 8. 17. 00:35
문제를 확인해 보면 다음과 같은 화면을 확인 할 수 있습니다. 오른쪽 위에 파일을 업로드 할 수 있습니다. (사진은.. 홍보는 아니고 ㅋㅋㅋ 문제를 풀고 풀이를 적는 거라서.. Team $!9N 화이팅) 한번 사진파일 뒤쪽에 웹 쉘 코드를 작성해서 넣어보겠습니다. 웹쉘 코드를 사진의 footer 시그니처 뒤에 넣고 이름을 aaa.php로 해서 업로드 해보겠습니다. 업로드를 완료 했습니다. 소스코드를 한번 확인해 보겠습니다. 분명 aaa.php로 넣었는데 사진의 경로가 avatars/good으로 되어있습니다. good은 현재 이름인 것 으로 보아 파일의 이름이 현재 이름과 일치 시켜서 웹쉘을 실행 시키는 방법을 사용하는 것 같습니다. 그리고 아래의 URL로 들어가 보겠습니다. aaa.php 파일의 hex값..
-
[Reversing] KeygenCTF write_up/Hack CTF 2019. 8. 5. 00:33
너무 오랜만에 문제를 접하게 됬습니다... 너무 나도 바쁜 일정에 새로운 문제가 나왔다고 해서 한번 풀어봤습니다. 값을 입력하니 아무일도 일어나지 않았습니다. IDA를 이용해서 한번 확인해 보겠습니다. 먼저 fgets를 이용해서 값을 입력 받고 해당 값이 check_key 함수의 인자값으로 들어갑니다. 입력한 값의 길이가 9보다는 커야하고 0x40이라고 되어있지만 10진수로 64! 64보다는 작아야 합니다. 그리고 encoding함수의 인자값으로 들어가서 반환된 값이 아래와 같은 OO]oUU2U
-
[Reversing] HandrayCTF write_up/Hack CTF 2019. 6. 27. 01:35
요즘 HackCTF를 자주 못들어가서 바로바로 풀수가 없습니다...또륵.. 바로 문제로 넘어가 보겠습니다. 제목을 봐도 알것 같습니다. 핸드레이 문제입니다. 바로 실행을 해보겠습니다. 기드라 IDA 아무거나 사용해도 문제를 해결할수 있기에 매번 기드라만 사용한 것같아서 이번에는 IDA로 문제를 풀어 보겠습니다. main을 디컴파일 했을때 나오는 코드인데 ida 에서는 한글지원이.. 안되요 flag를 뛰어넘었습니다! 라는 문자열입니다. 디컴파일로는 당연히 안될거같앗습니다. Handray니까요 이 그래프를 보면 무조건 flag를 뛰어 넘었습니다로 가게 코드가 짜여져 있었습니다. 우리가 눈여겨 봐야할 함수는 loc_400544 함수입니다. 해당 함수를 보면 string 배열과 array 배열 2개를 이용하는데..
-
[Forensics] Magic PNGCTF write_up/Hack CTF 2019. 6. 25. 19:44
해당 ZIP 파일열어보면 MP_1.PNG 파일이 존재합니다. PNG 파일이지만 파일이 열리지 않는 것으로 보아 PNG 확장자가 아니거나 헤더 시그니처가 문제가 있는 것일 수 있습니다. PNG 파일 인거 같아 보이지만 Header 시그니처가 살짝 다릅니다. 89 50 4E 47 2E 0A 2E 0A != 89 50 4E 47 0D 0A 1A 0A 그래서 시그니처를 바꿔주면 다음과 같은 파일을 볼 수 있습니다. Flag : HackCTF{c@n_y0u_$ee_m3?}
-
[Misc] 달라란 침공CTF write_up/Hack CTF 2019. 6. 5. 13:44
해당 netcat에 들어가 보면 다음과같은 문자열이 나옵니다. 1 2 3 의 선택 항목이 있지만 달라란 은행을 선택하고 보니 덧뺄셈이 나오는 것을 확인했습니다. 2번을 선택하면 곱셈 나눗셈이 나오는걸 확인했습니다. 1번을 선택해서 다풀면 2,3 번을 선택하는 과정이 나오는 것을 보아 1 -> 2 -> 3 을 다푸는 것으로 생각이 됩니다. 사용자가 직접 모든 연산을 다 할수 없기에 from pwn import * 를 이용해서 한번 코드를 작성해 보겠습니다. from pwn import * p = remote('ctf.j0n9hyun.xyz',3033) def stage1(): print(p.recvuntil('input )')) print(p.send("1\n")) for i in range(20): p...