보안 공부/webhacking.kr
webhacking.kr 39번 풀이
sh1256
2021. 12. 6. 13:48
728x90

소스코드를 봅시다.

음 몇 줄 안되네요 ㅎㅎㅎ 죠습니다.
그럼 중요한 부분만 다시 볼까요?

이번엔 id를 post 방식으로 전달하는군요 즉 URL으로는 전달을 못하나 봅니다.
코드를 다시 살펴보죠
1. id 값이 존재하면
2. id문자열 중 '\\'를 없앤다.
3. id 문자열 중 " ' "를 "''"로 바꾼다.
4. id 문자열을 15글자로 자른다.
5. member 테이블에서 id의 길이가 14보다 작고 id='(입력값)이면 문제가 풀린다.
자 그러면 여기서 중요한 것!
id='{$_POST['id']}
라는 것입니다.
네 따음표가 앞에 하나밖에 없습니다.
그래서 우리가 직접 따음표 하나를 넣어서 완성해 줘야 하는데
문제는 바로

이 부분으로 인해 따음표 하나만 쓰기 힘들다는 거죠
그래서 해결방법은 마지막에 홑따옴표 넣어주기!

이런 방식으로 되는 겁니다
이해가 되셨길 바라네요
그럼 마지막으로
admin '
을 입력해서 제출하면?
