Webhacking.kr 40번
·
Webhacking.kr
위 사진처럼 기본 값으로 로그인을 시도 URL 부분에 입력한 값이 나타남 URL 값 입력이면 인젝션 문제일 확률이 높으니 테스트를 위해 위 사진처럼 조건을 참으로 만들면 "Success - guest" 나타남 조건을 거짓으로 만들면 "Failure" 나타남 "no" 값을 2로 주면 "admin" 모드가 나타남 블라인드 인젝션을 위해 pw 컬럼의 길이를 우선 알아내기 위해 한땀 한땀 진행하다보면 "10" 입력 시 "admin"이 나타남(참 조건) 이를 이용하여 첨부된 스크립트 파일을 실행하면 위 사진처럼 길이와, 비밀번호가 나타남
Webhacking.kr 39번
·
Webhacking.kr
(\) 문자를 지운다. (') 문자를 ('') 으로 치환한다. substr 함수를 통해 15번째 글자까지 자른다. 문제가 발생하는 부분은 쿼리 부분이다. 잘 보면 ("select ~~~ id='$_POST[id]") 로 작성되어 있다. 끝 부분에 싱글 쿼테이션이 하나 빠져 있어서 무조건 오류가 난다. 오류가 난다고 입력 부분에 (')을 입력해 버리면 str_replace 함수 때문에 ('') 로 변경되서 똑같이 오류가 난다. 핵심은 바로 substr 함수를 통해 15번째 글자까지 자른다는 것이다. " admin(공백 9개)' " 를 입력한다. 입력값 입력값 길이 치환값 치환값 길이 admin(공백 8개)' 14글자 admin(공백 8개)'' 15글자 admin(공백 9개)' 15글자 admin(공백 9개..
Webhacking.kr 38번
·
Webhacking.kr
bob 를 입력 후 로그인을 한다. 로그인이 누르면 로그가 보여지는데 "IP:입력값" 형식으로 저장된다. 주어진 힌트 "admin" 을 입력하고 로그인을 한다. 로그인이 실패한다. 추론을 해보자, 'bob'를 입력하면 "58.xxx.xx.xxx:bob" 라고 로그에 기록이 된다. 그러면 로그에 '58.xxx.xxx.xx:admin'