목록STudy (17)
Maru's
26번 문제를 들어가면 index.phps라는 링크가 나온다. 클릭해보면 이런 소스를 볼 수 있다. 소스를 보자면 eregi함수로 GEt[id]가 admin일 경우 no!를 출력한다. 그리고 GET[id]는 Urldecode되어서 다시 GET[id]로 들어간다. 그 이후 if문이 나오는데 GET[id]가 admin일 경우 문제가 해결된다고 되어있다. 일반적으로 admin을 URL인코딩 해서 입력하면 된다고 생각 할 수 있다. 하지만 no!를 출력한다. 그 이유는 기본적으로 URL인코딩 되어 넣어주면 그 값을 디코딩을 한번 해주기 때문이다. 그렇기 때문에 admin의 인코딩 값인 %61%64%6d%69%6e를 다시 인코딩 해준다. 값을 넣어주면 풀리는 걸 알 수 있다. 주의점은 admin을 두번 인코딩 해..
처음 클릭해 보면 client ip(현재 제 IP가 나오기 때문에 지웠습니다) agent가 나옵니다. 그리고 소스를 보려 Burp Suite로 확인해 보면 주석처리된 source : index.phps를 볼 수 있습니다. 그리고 index.phps로 이동할 수 있습니다. index.phps에 들어가서 소스를 보면 extract($_SERVER); extract($_COOKIE); 로 서버와 쿠키의 배열의 키값을 변수화 주게 된다. 그리고 ip변수에 REMOTE_ADDR(사용자가 현재 페이지를 보고 있는 시스템의 IP 주소 환경변수임)를 넣어주고 agent에는 USER_AGENT 값을 넣어줍니다. 그리고 그 밑의 if문을 보면 문자열 변경함수로 ip의 변수값에 12가 잇으면 공백 7.이 있으면 공백 0.이..
17번문제를 클릭해보면 하얀색 체크박스가 뜬다. 그리고 Burp Suite로 소스를 잡아볼 수 있다. 소스는 unlock이라는 변수에 엄청나게 긴 연산이 들어있고 그 밑은 입력값이 unlock과 같으면 Password "+unlock/10을 알려준다. 라고 되어있다. 사실상 전부 더해서 10을 나누고 auth에 입력해도 되겠지만 좀더 똑똑하게 푼다면 밑 소스에 조건문을 1로 수정해준다. 그리고 1을 입력하면 조건문이 참이므로 password가 출력 되게 되고 이것을 auth에 적으면 문제는 클리어한다.
15번 문제를 눌러보면 Access_Denied 라고 뜬다. Burp Suite로 잡아서 확인해보면 history.go(-1)라고 뒤로가는 버튼 이후 password is off_script라는 구문이 나온다. 이제 Auth 탭에서 off_script라는 걸 입력해보면 클리어 할 수 있다.
Challenge 14번 문제를 클릭 해 보면 아무것도 없이 빈칸과 Check라는 박스가 뜹니다. 창을 입력 해보면 위의 URL에 input_pwd에 값이 입력되는 걸 알 수 있다. 소스 보기로 소스를 확인하면 function ck()라는 함수에 document.URL(현재 페이지의 URL)이 ul이라는 변수에 들어가 있고 ul은 다시 indexOf(".kr")로 documnet.URL의 전체 길이에서 .kr이 몇 번째 인지 반환하고 다시 그 ul을 30을 곱해주고있다. 지금 현재 주소는 http://webhacking.kr/challenge/javascript/js1.html 이므로 여기서 .kr은 h부터 0에서 17번째에 위치힌다. ul = ul*30 ( 17*30) 이므로 510이 ul에 들어가게 ..
File Upload 웹 사이트에서 자료실과 같은 사용자들의 업로드가 가능한 웹 애플리케이션으로 서버 사이드 언어로 작성된 Webshell 업로드를 통한 서버 권한 탈취 할 수 있다. 파일 업로드 취약점은 업로드 파일의 대한 규제가 없을 때 발생하며, 이를 악용한 해커에 의해서 악성 스크립트 코드가 수행 될 수 있으며 .php .jsp .asp 등의 확장자를 가진 스크립트 파일을 업로드 한 후 게시판에서 원격으로 서버의 시스템 명령어를 제어 가능하다. [그림 1]: 파일 업로드 과정 취약점 체크 1) 파일 업로드 어플리케이션 사용 유무를 확인한다. 2) .asp, aspx, jsp, php 와 같은 확장자로 파일 업로드가 가능한지 확인한다. 3) 클라이언트 검증 인지 서버 검증인지 확인한다. 웹쉘 (WE..
XSS(Cross-Site Scripting)취약점 웹 취약점 중 하나로 웹사이트 관리자가 아니라도 악성 스크립트를 삽입 할 수 있는 취약점이다. 주로 게시판 등에 스크립트를 삽입 할 수 있다. 공격 종류로는 저장 XSS공격, 반사 XSS 공격 DOM 기반 XSS공격 이 있다. 1) 저장 XSS 공격 저장 XSS공격은 XSS취약점이 있는 웹 서버에 악성 스크립트를 영구적으로 저장 해 놓는 방법이다. 게시판을 사용할 때 게시판 내용 안에 스크립트를 삽입 해 놓는다. 그 후 다른 사용자가 이 스크립트가 삽입된 게시판을 열게 되면 그 스크립트가 실행된다. [그림 1]: 저장 XSS 방식 가장 일반적인 방법으로 게시판 같은 곳에 HTML 문서에 를 이용하여 이 스크립트 태그안에 악성 스크립트를 저장하는 방식이다..