사용자 작업 로그인/등을 통해 이전 페이지로 리디렉션하는 것과 관련된 여러 게시물을 읽었습니다. HTTP_REFERRER를 통해 이전 페이지 URL을 가져 오는 것이 신뢰성이 낮고 안전하지 않다고 대부분 언급했습니다.GET을 통해 PHP의 Referrer 페이지를 안전하게 전달/검색 하시겠습니까?
내 질문에 URL 끝에 login.php?referrer=main
또는 login.php?referrer=prof
과 같은 정보가 추가 될 수 있으며 어떤 식 으로든 CRSF가 위장되지 않도록 이러한 변수에 의존하고 있습니까?
POST가 좋든 나쁘겠습니까? 내가하는 일을 성취 할 수있는 확실하고 안전한 방법이 있습니까?
기본적으로 사이트의 오작동을 일으키는 악의적 인 의도없이 리디렉션 될 수 있도록 PHP에서 추천 페이지를 얻는 가장 좋은 방법을 찾으려고합니다.
TIA.
편집 : 시나리오 :
이 사용자는 코멘트 페이지를 방문하지만, 코멘트를 게시하려면 로그인 할 필요는, 그래서 login to comment
링크가 페이지에 배치 될 것이다. 사용자가 login to comment
링크를 클릭하면 대상은 login.php가됩니다. comment20303 로그인 페이지를 방문하고 확인 된 자격 증명을 제공하면 로그인하기 전에 원래 작성한 comment20303 페이지로 되돌아 와야합니다.
REEDIT : 내 질문에 간다, 리디렉션 URL을 로그인 페이지에 추가, GET을 통해 액세스 및 re-it 그것을 원래 페이지로 안전하게 반환 할 사용하여 종기? 아래의 코멘트에서 대답은 '아니오'이며, 유효성 검사가없는 것은 아닙니다. 그것은 다시 된 이유
나는 그것이 사용자가 로그인되지 않은 코멘트 페이지, 말에 사용하려는 방법을 GET 트림 스트립,'그들은 코멘트를 게시 할 수 없습니다, 그래서 추가 생각 login.php? comment20304'와 같이 로그인 URL의 끝 부분에 'ref = comment20304'를 추가하면 login.php를 통해 로그인을 확인한 후 로그인하기 전에 다시보고 있던 페이지로 리디렉션 될 수 있습니다. 나는 또한 POST를 고려했다. 그러나 나는 POST가 안전하지 않은 곳을 읽었다. 기본적으로 내 사용자가 comment20304 대신 old-xxx-ladies.com 등으로 리디렉션되지 않도록 안전한 것을 원합니다. – IIIOXIII
물론, 덧글 편집 영역으로 다시 보내기 전에 id를 새 사용자와 연결하는 한 덧글 ID를 추가해도 좋습니다. 이렇게하면 다른 ID를 시도해 볼 수없고 사용자와 연결해야만 편집 할 수 있습니다. – silversunhunter
그러나 숨겨진 필드는
매우 쉽습니다.가장 쉬운 방법은 ... – baao