본문 바로가기

분류 전체보기

(111)
HackCTF - Web - Button 풀이 버튼을 눌러서 플래그를 출력하라 한다. 근데 눌러도 아무런 반응이 없다. 이 때 의심해볼 수 있는것은 버튼에 부여된 value값. button을 우리가 원하는 flag로 바꿔보자. 그리고 눌러보니 답이 나왔다.
HackCTF - Web - Hidden 풀이 들어가면 버튼은 1~4까지 있는데 5번에 플래그가 있다고 한다. 뭐 하나만 눌러보자. "Nop" 위의 alert를 띄울 때 확인할 수 있는 id 파라메터... 뭔가 바꾸고 싶게 생겼다. 장난삼아 5번으로 바꾸고 들어가보자. 플래그가 나온다.
HackCTF - Web - Authorized 풀이 문제 페이지에 들어가자마자 권한이 없다고 한다. 웹해커들의 종특? 일단 코드를 본다. 예상대로 힌트를 얻었다. 내 Auth Type이 False라는것이다. 이때 문득 떠오른 한 가지 방법 그냥 GET으로 Auth = True를 보내보면 어떨까? 쨘. 이렇게 풀리게 된다. (솔직히 이게 진짜 될줄은 상상도 못했다)
HackCTF - Web - Hidden Flag 풀이 문제 페이지를 들어가면 로봇이 반겨준다. 로봇? 로봇???!!! robots.txt??? 라고 생각해서 robots.txt를 열어보았다. 게싱이 적중했다. robots.txt가 존재했고, robot_flag라는 디렉토리를 Disallow해놓은것으로 보아 이곳에 플래그가 있는 것 같다. 예상대로 robot_flag라는 디렉토리에 들어갔더니 플래그가 나왔다.
wargame.kr md5_compare 풀이 오늘은 md5_compare문제를 풀어보려고 한다. 문제에 들어가니 다음과 같은 폼이 기다리고 있다. view-source라고 되어있는 링크를 눌러 코드를 분석해보자. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 Colored by Color Scripter cs ctype_alpha는 값이 모두 알파벳일떄 true를 리턴해주는 함수이고, is_numeric은 값이 숫자일때 true를 리턴해주는 함수이다. 따라서 우리는 VALUE 1에는 알파벳을, VALUE 2에는 숫자를 입력해주어야 하고, 그 두 값의 md5의 해시가 같아야 플래그가 나온다는 사실을 알 수 있다. md5 해시를 어떻게 같게할 수 있을까? 불가능하다. 그런데 여기서..
webhacking.kr 11번 문제 풀이 오늘은 그동안 못했던 웹해킹을 다시 해보려고 한다. 간단하게 11번으로 시작해보자. 문제에 들어가면 다음과 같은 창이 반겨준다. GET을 통해 val을 받는다는데 html이라고 적혀있어서 당황했으나, 잘 확인해보니 이 페이지가 PHP로 구동되고 있다는 사실을 알 수 있었다. 주어진 PHP 코드를 분석해보자. 1 2 3 4 Colored by Color Scripter cs pat이라는 변수에 조건이 있고, GET을 통해 받은 val을 비교하여 값이 같으면 풀리는것 같다. pat의 조건은 다음과 같이 정리할 수 있다. 코드 역할 충족할 값 [1-3] 1~3에서 1개를 선택합니다. 1 [a-f]{5}_ a~f에서 5개를 선택합니다. abcde .*172.0.0.1.* .*172.0.0.1.* \tp\ta\t..
Suninatas 8번 풀이 오늘은 suninatas 8번을 풀어봅시다. 들어가자마자 왠 로그인 폼이 보입니다. 뭘 해야할지 모른다면 역시 페이지 코드를 확인하는거죠! 역시나 페이지를 구성하고 있는 코드의 주석에 숨어있었습니다. 위의 주석에서 우리는 아이디는 admin, 비밀번호는 0부터 9999사이의 정수인것을 알 수 있었습니다. 따라서 브루트포스(서버주님 죄송합니다) 로 비밀번호를 알아내는 파이썬 코드를 대충 짜서 돌려보면 다음과 같이 비밀번호가 나오게 됩니다. 이해를 돕기 위해 코드를 첨부합니다 : 아이디에 admin을 넣어주고, 위의 파이썬 코드의 실행 결과를 통해 알 수 있었던 정수 비밀번호를 넣어준 다음 Login 버튼을 누르게 되면 Congratulation!이라며 인증키가 나오게 된다. 인증키를 넣고 인증해주기만 하면..
wargame.kr tmitter 풀이 오늘은 wargame.kr에 있는 tmitter 문제를 풀어봅시다. 사이트에 들어가면 회원가입과 로그인 메뉴가 반겨줍니다. 이 상태에서는 뭘 해야할지 모르니 당연히 소스보기를 통해 주석을 확인합니다. 확인한 결과 admin으로 가입해야한다는 사실을 알게 되었습니다. 그래서 Sign Up 버튼을 눌러 들어가 admin / adminadmin 을 치고 가입하려고 하니 admin은 이미 존재한다며 가입을 거부했습니다. 하지만 문제 설명에서 주어진 SQL 구문인 id char(32) 을 준것으로보아 받은 값이 사이즈(길이)를 초과할 경우에는 초과된 부분을 제외한 값을 넣어주는 mysql의 특성을 이용하면 풀릴것 같은 느낌이 들었습니다. 따라서 32로 설정되어있던 maxlength값을 1 증가하여 33으로 설정해..