Lord of sql injection gremlin write up
2017. 3. 16. 13:02
LOS gremlin write up
예전에 디미고 실적물을 만들 당시, Lord of SQL Injection을 풀이했었는데, 블로그 포스팅이 이해가 안된다는 말이 있어서 복습도 할 겸 다시 write up을 올린다. (필자는 2017년 3월 초에 올클리어했다.)
http://los.eagle-jump.org/gremlin_bbc5af7bed14aa50b84986f2de742f31.php?id=%27||1%23
이렇게 간단하게 우회할 수 있다.
솔직히 이건 모르시면, SQL 인젝션의 기초부터 차근차근 공부해야 한다고 생각한다.
위의 쿼리는 생각보다 간단한 쿼리이다.
select id from prob_gremlin where id=''||1#' and pw=''
노란색으로 하이라이트된 부분이 '#(%23)' 으로 주석 처리가 된다.
그래서 오류가 나지 않기 때문에 id=''||1 이 참이 되는 것이다.
|| 은 거의 모든 프로그래밍 언어에서 OR 연산이라는 뜻이므로 잘 이해했다고 믿는다.
where 문은 SQL에서 조건을 찾는 것인데,
뒤의 조건은 id가 ' ' 이거나, 1이 true 이면 id를 불러오는 것이다.
MySQL에서 1은 true 이므로 id를 무조건 불러오는 쿼리가 완성된다.
해킹문제도 수학문제와 정말 굉장히 비슷한 편이다. 같은 문제에 대해서 정말 많은 풀이들이 존재한다. 분명 내 블로그에서 서술한 방법 외에도 많은 풀이들이 있을 것이다.
다른 블로그도 찾아보면서 Lord of SQL Injection을 풀어보길 바란다.
풀이를 보면서 푸는 것은 되도록이면 추천하지 않는다.
'Hacking > Web.' 카테고리의 다른 글
[wargame.kr] Simple Board 5개월만에 풂 (0) | 2017.04.09 |
---|---|
sqli whrere 필터링 우회 bypassing (0) | 2017.03.26 |
보스턴키파티... (1) | 2017.02.26 |
[wargame.kr] SimpleBoard solving... (0) | 2017.02.25 |
sql injection tech (0) | 2017.02.22 |