Escape (2) 썸네일형 리스트형 Lord of SQLInjection Giant 풀이 이번 문제는 띄어쓰기와 같은 역할을 수행하는 키를 넣으면 풀 수 있는 문제인 것으로 추정된다. 이번 문제는 최대 1글자만 넣을 수 있는 것 같다.따라서 위 정규식을 보고 다음과 같이 한 글자로 넣을 수 있는 키 중에 사용할 수 없는 키의 목록을 먼저 알아내야 한다.차단되는 키사유%0D\r%0A\n%09\t%20Space( )위와 같이 표를 만들게 되면 사용할 수 있는 키가 %0B임을 알 수 있고, 이를 적용하여 /?shit=%0b 를 URL 뒤에 붙여주게 되면 문제가 풀린다. Lord of SQLInjection Succubus 풀이 이젠 대충 감이 온다.single quote(')와 다른 데이터베이스로 넘어갈 수 없도록 기본적인 쿼리 보호만을 걸어둔 것을 알 수 있다. 또한, id값과 pw값을 한 쿼리 안에서 모두 해결하기 때문에 이번 문제는 더욱 쉬웠다.backslash(\)로 id 쿼리에 있는 single quote(')를 문자열로 인식하도록 만들어주면 해당 쿼리는 ' and pw='' 를 id에 해당하는 값으로 인식하게 됨을 알 수 있다. 이를 활용한다면 id 뒷 부분의 single quote(')를 문자열로 처리하도록 만들고, pw에 있는 single quote(')가 닫아주게 된다.따라서 pw 앞에 있는 ' 가 앞의 구문을 닫아주기 때문에 뒤에 있는 ' 만 %23(#)을 통해 주석 처리해주면 됨을 알 수 있다. 그럼 첫 번.. 이전 1 다음