보안 통신

TLS(Transport Layer Security)는 인터넷 통신을 보호하기 위한 프로토콜입니다. TLS에서는 다른 엔터티가 통신을 읽거나 변경할 수 없습니다. Blackboard Learn에서는 TLS를 사용하여 웹 서버와 클라이언트 시스템 간의 통신을 안전하게 보호합니다.


세션 관리

세션 ID 라이프사이클

Blackboard Learn의 각 세션은 브라우저 쿠키 내부에 저장되어 있는 보안 세션 식별자에 의해 암호화된 방식으로 보호됩니다. 세션 고정 공격으로부터 보호할 수 있도록 세션 식별자는 페이지 로드 시, 로그인 후, 로그아웃 후에 순환됩니다.

쿠키

Blackboard에서는 기본적으로 세션 관리 관련 쿠키에서 발생하는 세션 가로채기에 대한 추가 조치로 두 개의 간단한 쿠키 플래그인 HttpOnly Secure를 설정했습니다.
 
BbRouter는 세션 관리에 사용되는 유일한 쿠키입니다. 여기에는 잠재적으로 악의적인 클라이언트 측 스크립트에 의한 무단 접근에 대해 추가적인 보안 계층을 제공하는 HttpOnly 플래그가 설정되어 있습니다. Learn은 오랫동안 시스템 전체에서 TLS를 활성화하도록 요구해 왔습니다. Secure 플래그는 브라우저가 TLS('SSL') 없이 HTTP를 통해 쿠키를 전송하지 못하도록 설정되어 있습니다.
 
JSESSIONID 쿠키는 세션 관리와 관련이 없으며, HttpOnly 플래그나 Secure 플래그가 설정되어 있지 않습니다. 
 
SaaS에는 SecureHttpOnly 플래그가 없는 추가 쿠키 2개(AWSELB AWSELBCORS)가 있습니다. Learn은 대체로 무상태이지만, 이러한 쿠키를 사용하여 로드 밸런서에 구현되는 약간의 세션 선호도가 존재합니다. 이러한 쿠키에 대한 자세한 내용은 AWS 문서 Classic Load Balancer에 대한 고정 세션 구성에서 자세히 확인할 수 있습니다.

세션 만료

세션은 사용자가 사전 구성된 기간 이상 유휴 상태이면 자동으로 만료되며, 명시적인 로그아웃을 통해 직접 만료할 수도 있습니다.


세션 핑거프린팅

세션 핑거프린팅을 사용하면 사용자의 세션이 악의적 공격에 이용당한 경우를 감지할 수 있습니다. 지문은 사용자가 사용 중인 컴퓨터의 IP 주소 또는 브라우저 유형(User Agent) 등을 사용하여 사용자를 고유하게 확인하는 데 도움이 됩니다. 세션 핑거프린팅은 악의적인 공격자에 의한 세션 가로채기의 위험을 줄이기 위한 완화 컨트롤 방법입니다.

Blackboard에서는 이 컨트롤 방법을 활성화하는 것을 적극적으로 권장합니다. 이 컨트롤 방법을 제대로 활성화하려면 세션 핑거프린팅 활성화핑거프린팅이 변경되는 경우 새로운 세션 생성을 모두 선택해야 합니다.

세션 핑거프린팅 구성

보안의 관리자 패널에서 세션 핑거프린팅 설정을 선택합니다. 다음 표에서는 사용 가능한 필드를 설명합니다.

필드설명
세션 핑거프린팅 활성화세션 핑거프린팅을 활성화하려면 를 선택합니다.
로그 위치사용자의 지문이 변경되는 위치가 기록됩니다. 시스템 로그에 대해 자세히 알아보십시오. 
지문 값

세션 지문에 포함할 값으로 IP 주소 또는 사용자 에이전트 중 하나 또는 둘 모두를 선택합니다. IP 주소에 대한 변경 사항은 사용자 에이전트에 대한 변경 사항보다 덜 발생해야 하므로 여러 로그인 시도를 최소화하려면 IP 주소만 사용하는 것이 좋습니다.

  • IP 주소: IP 주소는 사용자 컴퓨터의 주소입니다. 일반적으로 세션 중에는 변경되지 않습니다. 그러나 특정한 인터넷 서비스 제공자를 사용하는 경우처럼 변경이 발생하는 경우도 있습니다.
  • User Agent: 사용자 에이전트는 사용자가 사이트에 접근하기 위해 사용하는 특정 브라우저, 운영 체제 및 해당 브라우저에 대한 기타 사소한 소프트웨어 세부 정보를 나타냅니다. 이 값은 브라우저에서 생성되며 정확하지 않을 수 있습니다. 예를 들어 Safari에서는 운영 체제 버전이 변경되지 않습니다. 사용자는 일반적으로 브라우저 확장 프로그램을 사용하여 이를 재정의할 수 있습니다.
IP 주소 필터링이 옵션은 미국 인터넷 서비스 제공자인 AOL의 문제를 해결하기 위해 기본 규칙 세트와 함께 추가되었습니다. 이 기능은 고유한 용도로 여전히 작동하지만 규칙 세트를 수정할 제어판이 없기 때문에 다른 용도로 사용해서는 안 됩니다.
지문이 변경되는 경우 새로운 세션 생성

사용자의 지문이 변경되는 경우 새로운 세션을 강제로 생성하려면 를 선택합니다. 이렇게 하면 유효한 가로채기 시도의 경우 공격자에게는 로그인 페이지가 표시되고 사용자에게는 현재 세션이 유지됩니다. 그러나 위의 지문 값 섹션에서 언급한 것처럼 오탐이 발생할 경우 사용자는 다시 로그인해야 합니다. 이 정도의 불편함은 보안을 위해 감수해야 합니다.

'지문이 변경되는 경우 새로운 세션 생성'을 '예'로 설정하면 여러 파일 애플릿이 로드될 때 로그인 메시지가 나타납니다.