Challenge 51
2020.04.28
Challenge 51 시작! SQL Injection 문제이다. 소스코드를 보자. id 는 addslashes() 함수를 통해 필터링 되어 있어 pw 부분에서 조건을 만들어야 할 것 같다. 입력한 pw 는 md5 를 통해 암호화하고 있다. md5() 함수의 true 가 무슨 의미인지 몰라서 구글링 해보았다. 정리해보면 다음과 같다. - md5(암호화 대상, false) -> 기본 값으로, 32자리 hex 값 반환 - md5(암호화 대상, true) -> 16자리 binary 형식으로 반환 만약 md5() 가 true 로 설정되었을 때, 반환값에 '=' 가 포함되어 있으면 쿼리를 참으로 만들 수 있다. 다음과 같은 쿼리가 그 경우이다. select id from table where id='admin' ..