2010-02-05 1 views
4

다중 단계 양식 프로세스에서 URL을 양식 필드로 받고 있습니다.헤더에 사용 된 URL 위생 : 위치?

처리 한 후, 내 PHP 스크립트는 포르노 사이트에 전자 메일에 무해한 보이는 링크를 생성하기위한 리디렉션 서비스로 오용의 가능성에서 header("Location: ...");

외에도 사용하여 해당 주소 (열기 리디렉션로 리디렉션 URL을 로컬 도메인과 대조하여 도움을받을 수 있음),이 과정에서 해킹/악용 위험이 있습니까?

URL에 줄 바꿈을 밀기 만하면 클라이언트에 임의의 헤더를 보낼 수있는 가능성이 생길 수 있습니다.

+1

이 용어는 오픈 리디렉션입니다. 참조 : http://www.owasp.org/index.php/Open_redirect –

+0

용어를 소개해 주신 @Eric에게 감사드립니다. –

+0

죄송합니다, 언제 변경되었는지 잘 모릅니다. 1 년이나 2 년 전인데, header() 공격에 대해 패치를하지 않으면 손에 더 큰 문제가 생깁니다. – rook

답변

3

이전 버전의 PHP에서는 CRLF 주입에 대해 걱정해야했습니다. \ r \ n. 이것은 "헤더 응답 분할 취약점"입니다. 이러한 문자를 제거하면 걱정할 필요가 없습니다. PHP의 최신 빌드에서 header() 함수는 안전하며 자동으로 \ r \ n을 처리합니다.

+0

건배 @ 마이클. 이 버전이 바뀌 었는지 머리 꼭대기에서 알 수 있습니까? –