🤍 전 강의 25% 할인 중 🤍

2024년 상반기를 돌아보고 하반기에도 함께 성장해요!
인프런이 준비한 25% 할인 받으러 가기 >>

  • 카테고리

    질문 & 답변
  • 세부 분야

    보안

  • 해결 여부

    해결됨

NULL 바이트 질문 드립니다.

20.06.23 21:33 작성 조회수 539

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

김동욱님의 프로필

김동욱

질문자

2020.06.24

답변 감사합니다! magic_quotes_gpc=Off 설정으로 해결했습니다.

1

안녕하세요!

혹시 php.ini 에서 magic_quotes_gpc = Off 이 되어 있는지 확인 부탁드립니다.

제가 환경 구축 부분에 해당 내용은 안넣은것 같은데 ,

해당 설정이 On으로 되어 있을 경우 널 바이트 인젝션이 이스케이프 처리가되서 되지 않을 수도 있습니다.

만약, php.ini 에서 magic_quotes_gpc = On 으로 되어 있다면

php.ini 에서 magic_quotes_gpc = Off 로 변경하시고 아파치 재기동을 하시면 해결이 될꺼에요 ㅎ

질문 감사합니다!

1

김동욱님의 프로필

김동욱

질문자

2020.06.23

채널톡 아이콘