old-61 풀이
2024. 2. 6. 21:53ㆍwebhacking.kr
728x90
id에 값이 없으면 id 값을 guest로 고정해 주고, id에 값이 있으면 addslashes() 함수로 슬래시를 추가해 줍니다
그리고 id의 길이가 15보다 길거나, id가 필터링 조건에 걸리면 "Access Denied"를 출력해 줍니다
id가 "admin"이어야 문제가 풀리네요
바로 id에 admin을 넣어줬는데, 역시나 별다른 동작이 수행되진 않았습니다
SQL Injection을 해야 하는데, 괄호, 쉼표, 따옴표, 큰따옴표 등등 여러 특수문자가 필터링되어있습니다
방법을 찾기 위해 구글링을 하고 있는데, 아래의 게시글을 발견했습니다
https://1-day-1-coding.tistory.com/9
alias를 한 줄로 요약하면 "컬럼명을 내가 원하는 대로 바꿀 수 있는 기능"입니다
코드를 보면 쿼리가 "select {$_GET['id']} from chall61 order by id desc limit 1"라고 되어있습니다
$_GET['id']에 "admin id"를 넣어주면 id가 admin에 속하게 되고, 글자수도 15글자가 넘지 않아 조건을 만족하게 됩니다
온라인 에디터에서 admin을 hex로 바꿔줬습니다
이제 이 값을 URL에 넣어주면 됩니다
728x90