본문 바로가기

워게임

(34)
webhacking.kr 25번 문제 webhacking.kr 25번 문제웹해킹 25번 문제입니다.150점 짜리 문제입니다. 문제화면입니다. 문제를 보면 웹사이트에서 ?file=hello 라고 나와있습니다. 파일 hello 는 위와 같은 텍스트를 출력합니다. file 뒤에 hello.txt 를 쳤더니 아무 텍스트도 나타나지 않습니다. password.php 를 쳤더니 아무것도 나타나지 않습니다. hello 만 쳐서 나타난 것을 보니 hello(.txt) 생략이 되어 있는 것 같습니다.문제는 file변수의 값과 .txt를 이어주고 파일 내용을 출력해주는 것같습니다. 만약 변수 file을 값을 PHP 스크립트 내부에서, urldecode 함수를 사용하여 값을 받게 되면, 널 문자(%00)를 이용하여 문자열을 잇지 않고 끊게 할 수 있다. (문자..
webhacking.kr 36번 문제 webhacking.kr 36번 문제 웹해킹 36번 문제이다.200점짜리 문제이다. 이것이 36번 문제이다.정말 간단하게 적혀있다. 소스보기를 하였지만 아무 말이 없었다.vi 인데 blackout 정전이 되었다. 음.. 이 말은 즉 vi 편집도중 백업 파일을 찾으라는 소리인 것 같다.vi 에디터 사용시에는 백업파일이 생성된다. 그파일의 확장자는 .swp 이다. http://webhacking.kr/challenge/bonus/bonus-8/.index.php.swp .index.php.swp 를 추가합니다.그러면 위와 같이 good! 이라는 단어가 뜹니다. 무언가 성공했다고 하는 것 같습니다.password= md5 로 되어있다고 하네요$_SERVER['REMOTE_ADDR'] = 사이트 접속한 사용자 ..
webhacking.kr 6번 문제 webhacking.kr 6번 문제 웹해킹 6번 문제 풀이를 오랜만에 시작해보겠습니다.점수는 100점입니다. 웹해킹 문제에서 많이 낮은 수준의 문제입니다. 그러나 노가다(?) 열정을 가지고 반복학습을 해야하는 작업입니다. 일단 웹해킹 6번 문제화면 입니다.base64? 암호화 관련인 것 같군요..소스보기를 하엿습니다. 쿠키 = user 값과 pw값은 base64 encode 방법은 저렇게 하고 저런 방법으로 20번을 돌렸습니다. 여기선 user 과 pw 쿠키가 decode 를 저렇게 한다고 합니다. id 와 pw 가 decode 20번 되었다고 합니다.그 아이디와 패스워드는 디코더를 20번한 결과 둘 다 값이 "admin" 이라고 합니다.여기서부터 이제 노가다이다. admin 이 디코더 값의 최종이니까 ..
webhacking.kr 42번 문제 webhacking.kr 42번 문제를 풀어봅시다.웹해킹 42번 문제는 200점짜리 문제입니다. 이것은 문제화면입니다.그리고 소스코드를 보시죠~ 소스코드 화면입니다.test.txt 파일에서 ?down=dGVzdC50eHQ= 부분이 하이퍼링크로 되어서 test.txt~~~ 소스를 나타내는 곳으로 하이퍼링크가 되었습니다.그러나 이것이 조금 희안합니다? test.zip 은 안열리고 test.txt 는 열린다?이래서 한번 보니까 ?down=~부분이 암호화 되어있는 것 같아서 Base64 Decode 를 해보겠습니다. test.txt dGVzdC56aXA= 그러면 이제 http://webhacking.kr/challenge/web/web-20/?down=dGVzdC50eHQ= 넣으면 test.txt파일이 떳으니까..
webhacking.kr 18번 문제 webhacknig.kr 18번 문제를 풀어보겠습니다.배점은 100점 입니다.webhacking.kr 문제중 낮은 배점입니다.SQL INJECTION 문제입니다. SQL INJECTION 문제화면입니다. SQL 문제 index.phps소스보기 화면입니다. eregi()함수를 사용하고 있습니다. eregi()함수는 대소문자 구분하지 않고 검색 하는 함수 입니다. 여기서 사용자로 부터 입력받은 no값에 대해 일부 문자를 필터링를 하고 있습니다. 그리고 mysql 쿼리문이 select id from challenge18_table where id='guest' and no=$_GET[no]이 있고no가 1이 guest, no가 2면 admin을 select한다는 것을 알 수 있습니다.no에 1을 넣으면 id=..
F.T.Z - level9 ftz level9 문제를 풀어보겠습니다.BOF 문제입니다. 해커스쿨 ftz level9 문제를 먼저보자! cat hint 하여 얻은 정보이다. 소스를 자세히 보면 이렇다. #include #include #include main(){ char buf2[10]; // char 형 변수 buf2 라는 이름에 10바이트 크기의 배열을 선언 char buf[10]; // char 형 변수 buf 라는 이름에 10바이트 크기의 배열을 선언 printf("It can be overflow : "); // printf 로 프로그램이 실행되면 "it can be overflow :"라는 문자를 출력 fgets(buf,40,stdin); // 40바이트 이하 크기의 입력을 받아서 buf 에 저장함 if ( strncm..
F.T.Z - level8 해커스쿨(hackerschool)문제 F.T.Z - level8 까지 벌써 왔다. level9부터는 BOF (버퍼오버플로우) 라는 것이 나온다고 한다. 어렵지만 잘 활용하면 유용하게 쓰인다는 것이다. ftz level8를 먼저 소개하면 이번 문제는 존 더 리퍼라는 크랙툴을 사용하게 된다. 존더리퍼(john the ripper) 다운받는 곳은 여기다. http://twodragon.tistory.com/178 level8 문제의 hint 이다. shadow 파일이 어딘가에 숨겨져있다고 한다. 그 파일 용량이 "2700" 이라고 한다. find 명령어를 사용하여 사이즈가 2700 이라는 것을 찾아야 한다. b = 512byte(block) c = byte k = KB w = 2byte(워드) 중에서 사용하면..
F.T.Z - level7 F.T.Z level7 문제를 풀어보겠다!일단 문제부터 보자! level7 힌트문제이다. /bin/level7 명령을 실행하면 패스워드 입력 요청이 나올 것이고 1~4 까지 여러 조건들이 나와있다. 일단 여기서 1번은 그대로 여기서 글이 나와있다..그리고 자세히 보니 이것은 무엇인고? 했는 데 보니까 2가지로 이루어져있는 거 보니 0과 1인 2진수인 것 같다.- 은 1이고 _은 0으로 한 것 같다. 만약 틀리면 반대로 하면 된다.--_--_- --____- ---_-__ --__-_-이것을 자세히보면 4부분으로 나누어져있다. 스페이스 한칸차이로.. 잘라서 보면..--_--_- = 1101101(2진수) = 109(10진수)--____- = 1100001(2진수) = 97 (10진수)---_-__ = 11..