SQL Comment Attack
SQL Query를 가장 쉽게 정복할 수 있는 방법중에 하나는 바로 주석을 이용하는 것이다.
Mysql에서 많은 종류의 주석이 쓰이는데, 공격에 많이 쓰이는 주석을 말해보면,
1. -- (Mysql기반)
2. # (%23 : 오라클기반)
3. /*
4. //
5. %00(주석은 아니지만 쿼리를 바로 끝낼 수 있는 것 Null Byte 문자)
7번째 줄을 보면 gremlin 문제와 비슷해보이지만, pw부분에 md5()함수로 패스워드를 해싱하는 것을 볼 수 있다.
10번째 줄을 보면 id의 값이 admin이면, cobolt문제가 해결되는 것 같다.
즉, 패스워드 값을 확인하지 않는다는 것이다.
gremlin문제와 같이 id값에 admin을 넣고 pw부분을 주석처리 해보도록하겠다.
id값 : admin%27--%20(%27은 싱글쿼터('), %20은 공백, 주석은 '--')을 삽입했다.
id값 : admin%27%23을 삽입해도 문제가 풀린다.
그렇다면 id값도 그냥 무조건 참인 형태로 만들면 어떻게 될지 궁금해졌다.
무조건 참인 형태를 만들기 위해서
id 값 : id=1%27or%271%27=%271%27--%20을 삽입했다.(id=1'or'1'='1'-- )
"Hello rubiya You are not admin :("이라고 출력한다(크롬이 자동번역을 해서 한글로 표현됐다..)
'Webhacking' 카테고리의 다른 글
[LOS] Level 6 darkelf 문제풀이 (0) | 2019.05.31 |
---|---|
[LOS] Level 5 wolfman 문제풀이 (0) | 2019.05.31 |
[LOS] Level 4 Orc 문제풀이 (0) | 2019.05.31 |
[LOS] Level 3 goblin 문제풀이 (0) | 2019.05.24 |
[LOS]Level1 gremlin 문제풀이 (0) | 2019.05.24 |