본문 바로가기

전체 글143

[CTF] SuNiNaTaS(써니나타스) 3번 Write-Up | Web 써니나타스 3번 문제풀이 Write Up 입니다. 페이지에 접속하면 공지 게시판에 글을 쓰라고 합니다. 이래도 되나 싶긴 하지만... 일단 공지사항으로 들어가봅니다. 당연히 글을 쓸 수 있는 버튼은 찾아볼 수 없습니다. 다른 게시판을 찾아봅니다. 자유게시판으로 들어갔습니다. 여기는 글을 쓸 수 있는 Write 버튼이 있습니다. 일단 이 버튼이라도 눌러봅니다. 여기서 글을 쓸 수 있나 봅니다. 그런데 여기 URL을 자세히 보면, suninatas.com/board/free/write 이런식으로 되어 있습니다. URL에 있는 free를 notice로 바꿔봅니다. 공지사항에 글을 작성하는 페이지로 이동했습니다. 대충 아무거나 입력하고 SUBMIT를 눌러 봅니다. 이래도 되나 싶지만 한번 눌러봅니다. SUBMI.. 2022. 10. 2.
[CTF] SuNiNaTaS(써니나타스) 2번 Write-Up | Web 써니나타스 2번 문제풀이 Write Up 입니다. 페이지에 들어가면 웬 로그인 폼이 하나 있습니다. F12를 눌러 개발자 도구를 열어 소스코드를 살펴보면, 로그인 script와 힌트를 확인할 수 있습니다. 해당 힌트에서는 join하려면 ID와 PW가 같으면 된다는데, script에서는 값이 똑같으면 join을 막아버립니다. Join 버튼을 누르면 해당 script의 chk_form() 함수가 호출되므로, 해당 함수 호출 없이 submit() 함수를 호출하면 되는 것으로 보입니다. 일단 대충 같은 값으로 집어넣고... 개발자 도구의 Console 탭으로 가 submit 함수를 실행시키면, flag를 확인할 수 있습니다. 2022. 10. 2.
[CTF] SuNiNaTaS(써니나타스) 1번 Write-Up | Web 써니나타스 1번 문제풀이 Write Up 입니다. 해당 문제에 접속하면 다음과 같은 페이지가 나옵니다. 지금 가장 눈에 띄는 것은 텍스트박스와 Check 버튼이므로, 아무 값을 입력하고 Check 버튼을 눌러 보겠습니다. 입력된 문자열이 GET 방식으로 전송된 것을 확인할 수 있습니다. 이제 해당 페이지의 코드를 살펴봅니다. str로 임의의 문자열을 받고, 해당 문자열이 admin이면 flag가 나타나나 봅니다. 다만 중간에 문자열이 변하는 함수가 있으므로, 최종 결과물이 admin이 되기 위한 문자열을 넣어야 합니다. 해당 소스코드는 ASP로 작성되었고, 코드에 쓰여진 문자열 조작 함수는 다음과 같습니다. Replace([해당 문자열], [변경할 문자열], [새로운 문자열]) // 해당하는 문자열을 새.. 2022. 10. 2.