'1' 를 입력하면 참이 반한된다. 2 역시 참이 반환된다. 그러나 3은 거짓이 반한된다. 입력값은 GET 메소드로 전송되는 "no" 파라미터로 대입된다. 1 and length(id)
Webhacking.kr 20번
·
Webhacking.kr
모든 값을 입력하고, code 값은 우측 박스 내의 문자열과 동일해야 한다. 사진에는 잘렸지만 2초 내에 값 입력을 하고 "submit" 버튼을 눌러야 한다. (사실상 code 부분 땜에 수동으로는 불가능) 프로그래밍은 금지이지만 자바스크립트는 사용할 수 있다고 한다. 페이지 소스를 확인하면 각 부분마다 고유한 id 값이 보유되어 있다. 콘솔에서 lv5frm(form name).id.value = "test" 를 입력하면 nickname 값이 "test"로 변한다. 이를 이용해서 스크립트를 만들고 2초 내에 모든 조건을 충족시킨 후 submit 버튼을 눌리게 할 수 있다. 위 사진과 동일한 스크립트를 크롬 콘솔에 입력한다.
Webhacking.kr 19번
·
Webhacking.kr
admin 입력 admin 아니라고 한다. bob 입력 bob 로그인이 된다. "bob"로 로그인이 된 상태에서 쿠키를 확인하면 "userid" 값을 볼 수 있다. userid 값을 "base64" 디코딩 하면 위 사진과 같은 문자열이 나온다. 그런데 잘보면 제일 앞쪽에 "92eb5ffee~~~" 문자열이 있고, 약 32글자 뒤에 또 "92eb5ffee~~~" 문자열이 존재한다. 32 글자를 기준으로 앞/중앙/뒤 로 나뉘고, 앞/뒤는 같다. 일단 글자수가 32글자 기준으로 나뉘니깐 "md5" 해쉬로 추정할 수 있고, 앞 뒤가 똑같은것으로 보아 'b' 로 추정할 수 있다. md5('b') 결과값 md5('o') 결과값 "admin"에 해당하는 userid 쿠키값을 만들기 위해 "admin" 문자열을 한 글..