저는 현재 PHP 브라우저 기반 게임을하고 있습니다. 나는 대부분의 스크립트를 끝내지 만 누군가가 쉽게 세션을 해킹 할 수 있다고 걱정합니다.PHP 세션 해킹 방지
사용자가 로그인하고 암호가 맞으면 $_SESSION['logged']
이 '1'이됩니다. 사용자는 profile.php로 리디렉션됩니다.
$_SESSION['logged']
이 '1'이면 프로필이 표시됩니다. 그러나 $_SESSION['logged']
이 없으면 사용자는 다시 index.php로 리디렉션됩니다.
사용자가 $_SESSION['logged']
을 (를) 해킹 할 수 있을지 걱정됩니다.
또한 $_SESSION['username']
이 있습니다. 대개의 경우 $_SESSION['username']
을 사용하여 데이터베이스에서 정보를 가져옵니다. $_SESSION['username']
이 변경/해킹 된 경우 '해커'는 다른 '사람'이 될 수 있습니다.
session_regenerate_id 및 session_id()에 대해 들었습니다. 그러나, 나는 그 (것)들을 어디에 두어야할지 모르겠습니다.
감사합니다,
를보고 싶을 경우, 또는 * 클라이언트 *는 할 수 없습니다 '$ _SESSION'에서 값을 변경하십시오. –
'$ _SESSION [ 'logged']'을 저장하면 안됩니다. 토큰 기반 인증을 대신 사용할 수 있습니다. – Raptor
@Raptor 나는이 방법으로 사용자가 admin인지 아니냐를 이해하고, 다른 가장 좋은 방법은 무엇입니까? – M98