2017-05-02 2 views
-2

새 홈페이지를 프로그래밍 중이며 이전에 걱정하지 않은 시나리오를 발견했습니다. 예 : 예 : 친구 시스템 : 내 홈페이지에 친구를 추가 할 수 있습니다. 예를 들어 링크를 사용하면됩니다 (예 : index.php? action = friends & do = & 사용자 = 1 추가) 지금 : 임의의 사람이 단축 링크를 만들 수 있습니다. 그것을 가지고 어딘가에 게시하십시오. 그래서 다른 사람이 링크를 클릭하면 (뒤에 무엇이 있는지 모른 채) 내 홈페이지에서 친구 요청을 실행합니다. POST 요청으로 문제가 해결되지 않습니다. 그렇다면이 보안 버그를 어떻게 관리합니까? 해시/토큰?PHP : 링크가 외부에서 왔는지 확인하십시오.

감사 에릭

+0

안녕하세요. [내가 뭘 물어볼 수있는 주제는 무엇입니까?] (http://stackoverflow.com/help/on-topic)와 [좋은 질문을하는 법] (http://stackoverflow.com/help/how-to-ask)을 읽어보십시오.) 그리고 [완벽한 질문] (https://codeblog.jonskeet.uk/2010/08/29/writing-the-perfect-question/) 그리고 [최소한의 완전하고 검증 가능한 예제를 만드는 방법] (http : /stackoverflow.com/help/mcve) – mazedlx

+1

"POST 요청으로 문제가 해결되지 않습니다." 왜 안돼? "다른 사람이 링크를 클릭하면 (뒤에 무엇이 있는지 모른 채) 링크를 클릭하면 친구를 추가 할 수 있도록 로그인해야합니다. "해시/토큰?" 예 : 예 –

답변

1

GET 요청 이제까지 데이터를 수정해서는 안된다; 그것이 POST가 만들어지는 것이며, 으로 문제를 해결할 것입니다. 엄지 손가락의 일반적인 규칙으로

:

  • 추가, 수정하거나 데이터를 삭제하는 경우 - POST를 사용합니다
  • 하는 경우 (DELETE 또는 PUT, PATCH 이러한 있지만 간단한 PHP 웹 애플리케이션에 대한 과잉이다) 너 에만 데이터를 표시 한 다음 GET을 사용하십시오.