[suninatas] Game 22
2022. 5. 24. 21:30
Study/Web Hacking
문제: http://suninatas.com/challenge/web22/web22.asp Game 22는 Blind SQL Injection 문제다. form 아래에 필터링되고 있는 키워드를 보여주고 있다. 이 외에도 #, like, % 등등 아래 키워드에는 없지만 필터링되고 있는 것들도 있었다. 최종적으로 =, and, --, ' 정도가 필터링되지 않는 것을 확인했다. 해당 문제에 대한 힌트가 있지 않을까 싶어 개발자 도구를 열어봤는데 역시나 주석에 힌트가 숨겨져 있었다. admin의 pw를 구해야 한다고 한다. 이전에 비슷한 문제를 풀어봤었는데 그때랑 동일한 방법으로 해결해보겠다. 먼저 pw의 길이를 알아야 한다. 아래 코드로 pw의 길이를 알아낼 수 있다. import requests url = ..
[suninatas] Game 08
2022. 5. 24. 21:30
Study/Web Hacking
문제: http://suninatas.com/challenge/web08/web08.asp 로그인 폼이 하나있다. Password Incorrect!라고 되어 있는데 왠지 password를 구해야 하는 문제 같다. 개발자 도구를 열어보면 주석에 힌트가 숨겨져 있는 것을 볼 수 있다. 예상대로 admin의 password를 찾아서 로그인해야 하는 문제다. 주석에 친절하게도 비밀번호의 범위를 보여주고 있다. 여기서 브루트 포스로 해결할 수 있는 문제라는 것을 알 수 있다. 코드를 작성해서 password를 구했다. import requests url = "http://suninatas.com/challenge/web08/web08.asp" data = {"id": "admin"} for i in range(..
[suninatas] Game 07
2022. 5. 16. 22:55
Study/Web Hacking
문제: http://suninatas.com/challenge/web07/web07.asp Do U Like girls?라는 문구가 눈에 띈다. 문제 페이지에 아이유 사진과 아래에 있어 잘 보이진 않지만 윤아 사진, 그리고 그 사이에 YES버튼이 하나 있다. YES버튼을 눌러봤다. 내가 너무 느리다고 한다. 느리다는 게 무얼 말하는 걸까.... 개발자 도구를 열어봤다. 주석에 힌트가 숨겨져있었다. Faster and Faster가 힌트였다. 위에서 내가 너무 느리다는 경고창은 정말 내가 너무 느리다는 걸 뜻하는 거였다... 어떻게하면 form을 빨리 submit할 수 있을까? submit 버튼은 너무 아래쪽에 있기 때문에 버튼을 클릭하는 방법은 사용할 수 없다. 대신에 자바스크립트를 사용해서 form을 ..
[suninatas] Game 06
2022. 5. 16. 21:52
Study/Web Hacking
문제: http://suninatas.com/challenge/web06/web06.asp board에 5개의 글이 있다. 가장 먼저 Hint를 보자. suninatas의 글을 읽어보라고 되어 있다. Writer가 suninatas인 작성글을 확인해보자. password를 입력하는 input과 그 아래에 DB문법으로 작성된 쿼리가 있다. 이걸보니 Blind SQL Injection이 생각났다. Blind SQL Injection은 쿼리의 참과 거짓의 판별을 통해 원하는 결과를 도출해내는 공격 방법이다. 일반적으로 사용하는 여기서 우리가 입력하는 내용이 pwd에 들어가게 될 듯하다. 그 점을 고려해서 제일 흔하게 쓰이는 ' or 1=1#을 입력해봤다. 해당 쿼리는 못 쓰게 막혀있다. 아마 쿼리를 이루는 문..
[suninatas] Game 05
2022. 5. 16. 21:23
Study/Web Hacking
문제: http://suninatas.com/challenge/web05/web05.asp 어떤 form 하나가 있고 그 아래에 "Check Key Value"가 적혀있다. 어떤 key value를 확인하라는 걸까, 개발자 도구를 열어봤다. 가장 먼저 보이는 건 주석 처리된 힌트였다. 힌트는 12342046413275659 숫자열이었고, 이 값을 input에 입력해보았지만 아무일도 일어나지 않았다. 좀 더 도움이 될만한 걸 찾기 위해 소스를 살펴보다가 table에 숨겨진 script를 발견했다. 난독화가 되어 있는지 지금 상태론 무슨 코드인지 알아보기 힘들어보인다. 코드 난독화를 해제해보자. 아래 링크에서 코드 난독화를 해제할 수 있다. 더보기 https://beautifier.io/ 그 결과 위와 같은..
[suninatas] Game 04
2022. 5. 10. 19:54
Study/Web Hacking
문제: http://suninatas.com/challenge/web04/web04.asp Point를 입력하는 form이 하나 있고 그 아래에 User-Agent를 표시해주고 있다. form의 Plus버튼을 클릭하면 Point의 값이 1씩 증가한다. 계속 누르다보면 "I like the SuNiNaTas" 팝업창이 뜨면서 값이 25에서 더이상 커지지 않는 다는 것을 알 수 있다. 개발자 도구를 열어보니 주석으로 힌트가 숨겨져 있는 것을 발견했다. 일단 point를 50으로 만들어야 Authkey를 획득할 수 있을 것 같다. 하지만 point는 25에서 더 커지지 않았다. SuNiNaTaS가 이에 대한 힌트가 될 것 같다. 아까 위에서 point를 25에서 더 증가시키려고 할 때 팝업창에 SuNiNaTa..
[suninatas] Game 03
2022. 5. 10. 19:42
Study/Web Hacking
문제: http://suninatas.com/challenge/web03/web03.asp 문제 페이지에 "Write articles in Notice Board!"라는 문자열이 크게 적혀있다. Notice Board에 글작성을 하라는 의미같다. suninatas의 Notice board로 들어가봤는데 글작성 버튼이 존재하지 않았다. 비슷한 Notice랑 게시판도 확인해봤는데 자유게시판에는 글작성을 할 수 있었다. 자유게시판에서 글작성 버튼을 누르고 URL을 확인해보면 게시판 아래에 write로 더 내려간 것을 알 수 있다. 똑같이 Notice에서도 write에 접근했더니 Notice의 글작성 페이지로 들어올 수 있다. 여기서 아무글이나 작성하면 Authkey를 획득할 수 있다.
[suninatas] Game 02
2022. 5. 10. 19:27
Study/Web Hacking
문제: http://suninatas.com/challenge/web02/web02.asp ID와 PW를 입력하는 폼이 있다. 개발자 도구를 열어보니 form태그 아래에 힌트가 주석처리 된 것을 볼 수 있었다. id랑 pw가 같아야 한다는 힌트가 있었다. script도 포함되어 있었는데, id랑 pw가 같으면 폼이 submit되지 않는 것을 알 수 있었다. id랑 pw가 같아야 Authkey를 얻을 수 있을 텐데 script 때문에 폼이 submit 되지 않으니 이를 우회하거나 script를 변경해야 할 것 같다. 여기서는 console을 사용해서 form을 submit 시켜보겠다.먼저 ID와 PW에 같은 값을 입력해놓고, console을 열자.그리고 console창에서 직접 form을 submit시키는..
[suninatas] Game 01
2022. 5. 10. 19:02
Study/Web Hacking
문제: http://suninatas.com/challenge/web01/web01.asp 써니나타스 1번 문제이다. 문제에 접속하면 화면으ㅔ 코드를 보여주고 있다. 처음엔 PHP인줄 알았으나 알고보니 ASP라는 코드였다. ASP는 한 번도 접해본적이 없어 함수를 검색해가면서 풀었다. Replace(str, first, second)는 str에 주어지는 스트링에서 frist를 second로 대치시키는 함수이다. 따라서 Replace(str, "a", "aad")는 str에서 "a" → "aad"로 바꾸게 된다. 마찬가지로 Replace(result, "i", "in")은 "i" → "in"로 바꾼다. Mid(str, pos, length)는 str에서 pos 인덱스에서부터 length의 길이만큼 가져오는..