2011-07-26 2 views
0

웹 응용 프로그램의 사용자 세션 보안이 향상되고 있지만 문제가 발생했습니다. 내 보안 개선 목록의 항목 중 일부는 사용자가 수시로 다시 로그인하게합니다. 여기 내 목록은 무엇입니까 널리 사용 허용? 너 한테 사용 된거야?웹 응용 프로그램의 사용자 세션을 보호하기위한 표준 보안 기능은 무엇입니까?

  • 확인 사용자 의 IP 주소 (는 모바일 인터넷 연결을 변경) 편집 : HTTP_USER_AGENT (일부 IE와 같은 브라우저와 모바일 기기의 브라우저를 확인하는 사용자의 IP
  • 에 액세스 할 수있는 합리적인 방법이 없습니다 단일 세션 동안 수시로 변경)
  • 하나의 사용자 ID 당 하나의 세션 만 허용합니다 (사용자가 두 위치에서 로그인 할 때 첫 번째 세션에서 로그 아웃했을 때
  • 각 요청마다 재생 세션 ID 재생 중

다른 항목이 있습니까? 내 응용 프로그램은 너무 민감한 데이터를 처리하지는 않지만 특정 수준에서 보호되어야합니다.

답변

1

(IE 및 모바일 장치 브라우저와 같은 일부 브라우저는 단일 세션 동안 때때로 그것을 변경)

가 공격자에 의해 제어되는 HTTP_USER_AGENT, 당신은 그것을 믿을 수 감안할 때 HTTP_USER_AGENT를 확인, 사용자가 합법적으로 에 로그인 한 경우 가장 신호가 로그인 한 것을 감지하는 신호로 사용할 수 있습니다. IP 주소는 비슷한 신호입니다. 그러한 신호를보고 가중치를 선택하여 허용 가능한 수준의 위음성을 얻을 수 있습니다. 당신이

재생 세션을 수행하려는 경우 하나의 사용자 ID를 당신이 무슨 뜻인지에 따라

당 하나 개의 세션을 허용

, 그것은 엄격하게 필요하지만,하지 않을 수 있습니다 각 요청 후 ID

그러면 클래스 1을 피하기 위해 새 ID를 할당 할 때 이전 ID를 무효화해야합니다. session fixation vulns : "웹 응용 프로그램은 먼저 기존 세션 ID를 무효화하지 않고 사용자를 인증하므로 사용자와 이미 연결된 세션 ID를 계속 사용합니다."

ID를 생성 할 때 신뢰할 수없는 입력이 세션 ID를 제한하고 세션 ID를 예측할 수 없도록해야합니다. 그렇지 않으면 유형 2 세션 고정 공격에 취약합니다. "공격자가 사용자의 알려진 세션 ID를 강제로 실행할 수 있으므로 사용자가 인증을하면 공격자는 인증 된 세션에 액세스 할 수 있습니다."

세션 처리에 대한 기타 보안 팁은 https://www.owasp.org/index.php/Session_Management을 참조하십시오.

+0

공격자가 희생자 컴퓨터에 대한 액세스 또는 네트워크에 참여하지 않고도 IP 주소를 스푸핑 할 수 있다고 생각하지 않습니다 ...재생성 : 이전 ID를 무효로하는 것이 절대적으로 확실 함 –

+0

주어진 링크가 고품질의 사이트를 가리키는 경우, thx –

관련 문제