DreamHack 5

Dreamhack Invitationals 후기

어제 (2024년 5월 27일) Dreamhack Invitational에서 대회를 치루었고, 생각했던 것보다 낮은 순위를 기록했다..  19위에 랭크되었고, 대회 15문제 중 1문제밖에 풀지 못했다. 리버싱만 다 풀자는 마인드로 참여했는데 그게 잘 안 되었다.. ㅠㅠ 무엇이 문제였는가? 우선 1번 문제는 큰 문제는 아니였다. 1번 문제를 순삭하고 좋은 시작을 알렸다. solve.py# Use 'IDA Decompiled results' to parse the instructions# use sweeping to parse stringsdef parse1(s: str): instructions = s.split('\n') m = [] elasped = 0 for inst in ins..

Dreamhack CTF Season 5 Round #1 Write-Up

B, C, D 풀었다. (#10) 다들 엄청 잘한다. B - Switching Command 할 것은 두 가지다. 첫 번째로, php의 '===' 연산자와 switch case 연산자의 비교가 다른 점을 이용하여 case "admin": 안으로 들어가야 한다. php에서 '==='는 강한 비교, '=='는 약한 비교인데 switch case는 약한 비교이다. json에서는 true/false 타입을 지원하기 때문에 username에 true를 넣는다면 넘어갈 수 있다. {"username":true} 다음으로 Command Injection을 하는데, 검열이 이렇다할 것이 없어서 curl의 -o 옵션을 사용하여 로컬 내에 웹쉘을 다운받고 실행하면 된다. http://host3.dreamhack.games..