훈훈훈

Lord of SQL injection(Los) - 2. Cobolt 본문

정보보안/웹 해킹 문제

Lord of SQL injection(Los) - 2. Cobolt

훈훈훈 2018. 10. 14. 22:25




이제 두 번째 문제인 Cobolt를 풀어보자.

문제를 들어가면 다음과 같은 코드를 볼 수 있다.

먼저 가장 먼저 보이는 쿼리를 확인하자 id를 입력 받고 pw는 md5( ) 함수로 해쉬 값으로 변환 후 저장되는 것을 확인 할 수 있다.


그 다음 코드를 확인해보면 첫 번째 문제와는 다르게 if($result['id'] == 'admin') solve("cobolt"); 부분을 보면 

id = admin 일 때 문제가 풀리는 것을 알 수 있다.




먼저 임의의 값을 삽입했을 때 쿼리가 어떻게 출력 되는지 확인하기 위해 id = admin & pw = 1111 을 삽입을 해보았다.

이제 문제를 어떻게 해결할 것인지 고민해보자.

 

1.  id = admin 이어야 한다.

2.  하지만 pw는 md5( ) 때문에 결과 값을 항상 Fail이 된다.

3.  따라서 id는 admin 값을 넣어주고 뒷 부분은 주석처리시킨다.





id=admin' %23 을 넣었을 때 다음과 같이 문제가 풀린 것을 알 수 있다.


Comments