보안 공부/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         '

을 입력해서 제출하면?

성공