답변
세션 데이터는 서버에 저장됩니다. 세션 ID 만 클라이언트와 서버간에 앞뒤로 전송됩니다. 서버 측 스크립트가 망가 지거나 (또는 버그가있는 경우가 아니라면) 클라이언트는 세션 데이터를 직접 변경할 수 없습니다. 그러나 특정 클라이언트를 특정 세션에 연결하기 때문에 "올바른"클라이언트 만 세션 ID를 알고 있는지 확인해야합니다. 예 : (당신이 로그인을 언급했기 때문에) session fixation
예 .. 예방하기 위해 로그인 할 때마다 session_regenerate_id()을 사용하십시오. 세션 위조/도용이라고합니다.
다른 사용자 세션을 얻을 때까지 세션 쿠키 값을 변경합니다.
세션은 파일이나 메모리에 서버에 저장됩니다. 사용자는 서버의 세션 데이터에 대한 경로 (일반적으로 어떤 형식의 해시)를 정의하는 쿠키 만 보유합니다. 이론적으로 쿠키를 다른 사람의 해시로 변경할 수는 있지만 파일로 저장하지 않고 만료 후에 삭제하지 않으면 이전 세션을 악용 할 가능성이 커집니다.
수십억 건의 거래를 통해 적용될 때 매우 쉽지는 않을 것입니다. 매우 쉽게 걱정할 가치가있는 것이 될 수 있습니다. 물론 OP의 규모에 대해서는 잘 모르겠지만 고려해야 할 사항입니다. – overslacked
서버에 세션 데이터를 저장하지 않으려면 세션에 저장하기 전에 변경 사항으로부터 보호하려는 콘텐츠를 sign 수 있으며 세션에서 검색 한 직후에 유효성을 검사 할 수 있습니다. PHP에서이 프로세스는 reasonable simple이며 서버 저장 영역 문제를 해결합니다.
세션 데이터가 시각화되지 않도록 보호하지 못합니다. 이 보호가 필요한 경우에도 안전한 암호화를 사용하여 서버 저장 영역을 피할 수 있습니다. 가까운 장래에 키 크기에 기반한 거의 모든 암호화 체계가 손상 될 수 있다는 점을 명심하십시오. 따라서 5 년 동안 세션 데이터를 보호해야하는 경우 키와 알고리즘을 안전하게 선택하면 성능 문제가 발생할 수 있습니다.
- 1. HTTPContext.Current를 속일 수 있습니까?
- 2. UIScrollView를 속일 수 있습니까?
- 3. iframe의 src 속성을 "속일 수 있습니까?"
- 4. 당신은 * nix 가동 시간을 속일 수 있습니까?
- 5. 어떻게 우리는 HTTP 프로토콜을 속일 수 있습니까?
- 6. 엄지 드라이브 일련 번호를 속일 수 있습니까?
- 7. JavaScript로 세션 변수를 만들 수 있습니까?
- 8. 사용자가 세션 변수를 변경할 수 있습니까?
- 9. PHP 세션 보안 로그인
- 10. 세션 대신 세션 토큰을 사용할 수 있습니까?
- 11. 세션 변수 PHP 로그인 영역
- 12. Silverlight/WCF 로그인 세션
- 13. 로그인 세션 유지
- 14. 레일 로그인 재설정 세션
- 15. 파이어 폭스가 세션 변수를 삭제합니다
- 16. PHP 세션 로그인 시스템
- 17. CakePHP의 로그인 및 세션 관리
- 18. 로그인 변수에 대한 세션 변수
- 19. 로그인 시스템 및 세션 (PHP)
- 20. 개인 C++ 클래스 멤버 변수에 대한 액세스를 속일 수 있습니까?
- 21. html을 받아들이 기 위해 jquery text() 함수를 속일 수 있습니까?
- 22. linq to mySQL VB Express를 사용하여 어떻게 속일 수 있습니까?
- 23. PHP에서 세션 변수를 유지
- 24. 쿠키/세션 로그인 시스템
- 25. PHP 세션 로그인 시스템
- 26. ASP.NET 페이지에 세션 변수를 저장하고 있습니까?
- 27. 소수를 제외한 모든 세션 변수를 삭제할 수 있습니까?
- 28. servlets/jsp와 javascript 함수간에 세션 변수를 공유 할 수 있습니까?
- 29. Uploadify가 변수를 전달하지 않음, 세션 문제가 있습니까?
- 30. 세션 매개 변수를 변경할 수 없습니다.
+1 세션 하이재킹을 지적하고 있지만 서버의 변수가 변경되지 않도록 추가해야합니다. 한 사용자가 다른 사용자를 위해 포즈를 취하는 것을 허용 할 수 있습니다. 이 보안/가능성은 세션 ID의 복잡성과 세션 ID의 유효 기간에 따라 다릅니다. – deceze
OP 질문의 두 번째 부분 때문에이 응답이 전반적인 질문의 의도에 가장 잘 응답한다고 생각합니다. – overslacked
을 참조하십시오. ($ _ SESSION [ 'userName'] == "admin) {// 관리자를위한 일} else {// 나머지 일} IT는 userName 세션 변수를 위조/도용하는 방법입니까? 왜 아무도 이것에 대해 말하지 않습니까? –