해결된 질문
작성
·
629
1
POST ~/upload.php?gubun=aa.php%00 HTTP/1.1
~멀티파트
Content-Disposition: form-data; name="userfile"; filename="test.txt"
위처럼 요청을 보냈는데, 아래와 같이 에러가 발생합니다.
move_uploaded_file() [<a href='function.move-uploaded-file'>function.move-uploaded-file</a>]: Unable to move 'C:\APM_Setup\temp\phpF6F8.tmp' to './upload/aa.php\0_test.txt' in <b>C:\APM_Setup\htdocs\file_upload\null_ex1\upload.php
: move_uploaded_file() [<a href='function.move-uploaded-file'>function.move-uploaded-file</a>]: Unable to move 'C:\APM_Setup\temp\php5861.tmp' to './upload/file.php\0_test.txt' in <b>C:\APM_Setup\htdocs\file_upload\null_ex1\upload.php
테스트 해본 결과 gubun에 널바이트(%00)를 삽입 시 에러가 발생합니다. 최근 move_uploaded_file() 함수가 업데이트 되어 널바이트를 에러로 탐지하는 것인지.. 아니면 다른 이유가 있는지 질문드립니다.
답변 4
1
1
1
안녕하세요!
혹시 php.ini 에서 magic_quotes_gpc = Off 이 되어 있는지 확인 부탁드립니다.
제가 환경 구축 부분에 해당 내용은 안넣은것 같은데 ,
해당 설정이 On으로 되어 있을 경우 널 바이트 인젝션이 이스케이프 처리가되서 되지 않을 수도 있습니다.
만약, php.ini 에서 magic_quotes_gpc = On 으로 되어 있다면
php.ini 에서 magic_quotes_gpc = Off 로 변경하시고 아파치 재기동을 하시면 해결이 될꺼에요 ㅎ
질문 감사합니다!
1