dh(8)
-
[wargame.kr] tmitter 풀이
처음에는 무슨 문제인가 싶어서 소스부터 뜯어봤습니다. 맨 아래에 hint라며 주석 처리된 문장이 있습니다. admin으로 로그인하면 문제가 풀리는 형식인 것 같은데, 어떻게 로그인을 할지가 문제입니다. 우선 사이트의 구동 형식이라도 알아야 할 것 같아서, 임의의 계정을 만들어 로그인을 해봤습니다. 블로그 방명록을 작성하는 형식으로 구동되는 홈페이지인 것 같습니다. 작성 칸에 무언갈 작성 후 버튼을 눌러봐도 달라지는 것 없었습니다. 그렇다면 역시 Sign Up 페이지에서 취약점이 발생하는 것 같습니다. DB 부분에서 취약점이 발생하는 것 같기에, 우선 기본적인 DB 문법부터 살펴봤습니다. 필자는 DB 문법에 대해서는 거의 아는게 없습니다. ^ㅁ^... 공부해야지 https://velog.io/@taeha7..
2022.02.03 -
[wargame.kr] strcmp 풀이
소스코드를 보니 바로 보이는 게 있네요. // do not brute force!라고 되어있는 걸 보니, sleep(1); 때문에 브포는 안될 것 같습니다. 그럼 다른 풀이법을 생각해봅시다. 우선, 가장 중요한 password는 랜덤으로 가져오게 됩니다. strcmp() 함수를 실행해서 결과값이 0일 경우(같을 경우)에 FLAG를 출력해줍니다. 사실 처음에는 어떻게 풀어야 할지 감이 오지 않았지만, 구글링을 해보니 strcmp() 함수에 취약점이 있었습니다. strcmp로 비교를 할 때 인자값에 배열이 들어가면 NULL이 나오게 됩니다. 그러므로 html 코드에 있는 name="password"을 name="password[]"로 바꿔주고 아무 값이나 보내주면 될 것 같습니다.
2022.01.06