또 똑같은 로그인 창이지만 어떤 로그인 로직을 가지고 있을지는 알 수가 없다
사실 주석이나, 개행처리를 예상하지는 않았다
3번에서도 안되었고 그걸 출제의도로 냈을 것 같지 않았기 때문에
해시함수를 의심했다
또, 식별 / 인증 동시 CASE라면 주석 처리 한 방에 해시함수가 날라가므로
식별 / 인증 분리 CASE일 것이라 추측했다
근데 어떤 해시함수를 썼을지를 일단 알 수가 없다는 것이었다
크게 사용하는 해시함수는 두가지이다.
MD5 와 SHA256
구글링을 하면 원하는 문자열을 해시화할 수 있다.
저기서 우리가 주입할 비밀번호를 해시화해두자
둘 중에 찍어서 MD5를 먼저 실행해보았다
일단 기본 틀은
SELECT password FROM member WHERE id=''; 일 것이고
password는 사용자가 입력한 값이 해시화되어 DB에 저장될 것이다.
이 로그인을 우회하기 위해서는 DB의 타입을 맞춰야한다.
ID에다가는 x' union select '로그인 하고자 하는 이름','해시된 주입 비밀번호값'
PW에다가는 해시되기 전 비밀번호값을 입력하면
로그인이 될 것이다.
역시 성공!
'해킹 > 해킹 기법' 카테고리의 다른 글
로그인 우회 CTF 풀이 # 3 (0) | 2023.04.26 |
---|---|
DB 데이터 추출 CTF 풀이 (0) | 2023.04.25 |
[2주차] 미스테이크 문제 풀이 CTF (0) | 2023.04.09 |
[2주차] 미스터 브루트 문제 풀이 CTF (0) | 2023.04.08 |
[2주차] 로그인 우회 풀이 - 불충분한 세션 관리 취약점 (0) | 2023.04.07 |