Webhacking.kr 10번
·
Webhacking.kr
10번 문제 초기 화면, 'O' 문자를 클릭하면 "yOu" 로 변경되면서 한칸 우측으로 이동한다. (사진 클릭화면 확대 됨) 소스를 보면 "hackme" id 값을 가지는 'o' 문자 클릭시(onclick) 한칸 이동한다(this.style.posLeft += 1) 해당 속성은 크롬 콘솔을 통해 초기화 할 수 있다. 10 으로 "posLeft" 속성 값을 초기화하고, 문제 페이지에서 'O'를 한번 클릭하면 11로 값이 증가한다. 값이 800일 때 클리어가 되니, 799로 세팅하고 문제 페이지에서 'O'를 한번 클릭하면 된다.
Webhacking.kr 9번
·
Webhacking.kr
9번 문제를 클릭하면 위와 같이 HTTP Authentication 창이 나타남 임의의 값 ("test/test")를 입력 후 로그인 버튼을 누르면 위와 같이 패킷이 전송 됨 * 여기까지 해보고 도저히 감이 안 잡혀서 구글링을 해봄 * 문제에서 요구하는건 "htaccess"를 사용하여 접근 방식을 설정했을 때 발생하는 취약점을 이용하라는 뜻 * htaccess 파일에 " " 형식으로 제한을 걸면 다른 메소드를 검증하지 않음 * 따라서 "OPTIONS" 등을 이용하여 인증 우회 가능 전송되는 패킷을 일일이 프록시에서 "GET = > OPTIONS" 처럼 수동으로 변경해도 되지만 버프스위트에서는 "Match and Replace" 기능을 이용하여 자동화 가능 위와 같이 설정하면 자동으로 OPTIONS 메소드..
Webhacking.kr 8번
·
Webhacking.kr
$agent 변수에 "getenv" 함수를 이용하여 "HTTP_UESR_AGENT" 값을 저장한다. $ip 변수에 클라이언트의 공인 IP 값을 저장한다. $agent 변수에서 공백을 제거(trim) 한다. $agent 변수에서 '.', '/' 문자가 발견되면 '_' 문자로 치환한다. $pat 변수에 필터링 할 여러 문자열들을 저장한다. $agent 변수 값과 $pat 변수값을 비교하여 일치하면(필터링에 걸리면)가 오류가 발생한다. HTTP_USER_AGENT 값에 대하여 특정 문자를 치환한다. $count_ck 변수에 "SELECT" 쿼리 결과가 저장된다. 쿼리 결과(id 컬럼 개수)값이 70개 이상이면 "lv0" 테이블의 모든 데이터를 삭제한다. $q 변수에 쿼리를 저장하는데, 쿼리에서 $HTTP_US..