War-game (4) 썸네일형 리스트형 goblin 3단계 goblin 이다. 코드를 보면 2단계와 마찬가지로 id 값이 admin이 되어야 문제가 해결된다. 이번엔 입력하는 query 값에 id 값이 guest로 고정되어 있다. 해당 부분은 수정이 불가능하기 때문에 입력가능한 no 부분을 통해 id 값 또한 수정하자. 그런데 코드의 preg_match 부분을 보면 no로 입력받는 부분에 ' " 등 싱글쿼터와 더블쿼터를 입력받지 못하게 해놓았다. 문자열 입력을 싱글쿼터를 제외하고 받으려면 2진수나 16진수 8진수를 사용한다. 아래 사이트는 문자열을 2진수로 바꿔주는 사이트이다. http://string-functions.com/string-binary.aspx Best String To Binary Converter Online | String Funct.. cobolt 주어진 코드를 분석해보면 id 입력값이 'admin'이 되어야 문제가 풀리는 것을 볼 수 있다. 1단계 gremlin은 임의의 id 값만 있으면 되었지만 2단계는 명확히 'admin' 이라는 아이디 값이 들어가야 한다. query문의 pw 부분이 md5 라고 적혀 있지만 전혀 관계가 없다. id값을 고정값으로 넣어주고 뒷부분은 주석처리하자. id를 넣어준 후 싱글쿼터를 덧붙여 줌으로써 id 값을 완결시킨 후 한줄 주석처리로 뒷부분을 없는 것으로 취급하였다. id=admin'%23 을 입력하면 해결할 수 있다. gremlin los.rubiya.kr Lord of SQLInjection los.rubiya.kr SQL Injection 을 훈련하기 좋은 사이트이다. 간단한 가입 절차를 거친 후 로그인하면 첫번째 문제 gremlin 으로 접근가능하다. 친절하게 소스코드도 제공되어 있다. 주어진 코드를 분석하여 알맞은 SQL Query 문을 작성해주면 문제가 해결된다. 소스를 보면 입력받은 id와 pw 값을 데이터베이스에서 확인한 후 결과값으로 돌려주는데 해당 결과값에 id 값을 if문으로 검증한다. id 부분만 존재하는 것으로 만들면 해결될 것이다. 쿼리문을 보면 "select id from prob_gremlin where id='{$_GET[id]}' and pw='{$_GET[pw]}'"; 인데 입력받는 id 부분을 수정.. Level 1 FTZ 를 로컬라이징 후 설치완료 했다면 Putty나 Xshell을 통해 접근한다. level1은 ID와 Password 가 같다. 로그인이 성공했다면 우선 현재 어떤 파일이 홈 디렉토리에 존재하는지 알아보자. [그림 1] 을 보면 파일 목록에 hint 라는 수상쩍은 파일이 보인다. 읽어보면 "level2 권한에 setuid가 걸린 파일을 찾는다." 라는 말이 나온다. find 명령어에 [그림 2] 와 같이 인자를 준 후 실행 하면 /bin/ExecuteMe 라는 파일을 발견할 수 있다. [그림 3] 과 같이 파일을 실행해 보면 level2의 권한으로 하나의 명령어를 실행할 수 있다. bash 쉘을 실행시키면 level2의 쉘로 진입한다. [그림 4]를 보면 uid는 level2 이지만 gid 및 gro.. 이전 1 다음