SN: 17. 데이터 평문 전송
분류: Web Application(웹)
중요도: 상
개요
점검 내용
서버와 클라이언트 간 통신 시 데이터의 암호화 여부 점검
점검 목적
서버와 클라이언트 간 통신 시 데이터의 암호화 전송 미흡으로 정보 유출의 위험을 방지하고자 함
보안 위협
웹 애플리케이션 통신은 주로 텍스트 기반으로 이루어지므로, 서버와 클라이언트 간 암호화 프로세스를 구현하지 않을 경우 악의적인 사용자가 네트워크 도청(Sniffing)을 통해 정보를 탈취 및 도용할 수 있음
참고
Sniffing
스니퍼(sniff: 냄새를 맡다, 코를 킁킁거리다)를 이용하여 네트워크 상의 데이터를 도청하는 행위
참고
소스코드 및 취약점 점검 필요
점검 대상 및 판단 기준
대상
웹 애플리케이션 소스코드, 웹 애플리케이션 서버
판단 기준
✅ 양호: 중요 정보 전송구간에 암호화 통신이 적용된 경우
❌ 취약: 중요 정보 전송구간에 암호화 통신이 이루어지지 않는 경우
조치 방법
사이트의 중요 정보 전송구간(로그인, 회원가입, 회원정보관리, 게시판 등)에 대하여 암호화 통신(https, 애플리케이션방식) 적용
조치 시 영향
일반적인 경우 영향 없음
점검 및 조치 사례
점검 방법
-
중요 정보(인증정보, 개인정보, 로그인페이지 등)를 송수신하는 페이지 존재 여부 확인
-
중요 정보 송수신 페이지가 암호화 통신(https, 데이터 암호화 등)을 하는지 확인
-
취약한 버전의 암호 프로토콜 사용 시 암호화된 통신 내용이 유출될 가능성이 존재하므로 취약한 버전의 SSL(SSL 2.0, 3.0) 사용 여부를 점검
조치 방법
-
웹상에서의 전송 정보를 제한하여 불필요한 비밀번호, 주민등록번호, 계좌정보와 같은 중요 정보의 전송을 최소화하여야 하며, 중요 정보에 대해서는 SSL 등의 암호화 통신을 사용하여 도청으로부터의 위험을 제거함
-
쿠키와 같이 클라이언트 사이드에서 노출되는 곳에 비밀번호, 인증인식 값, 개인정보 등의 중요 정보 제거
-
암호화 전송 시 프로토콜 설계의 결함이 있는 SSLv2, SSLv3은 비활성화 필수, TLSv1.2 이상 사용을 권장함
Apache
Apache 서버 설정을 통한 프로토콜 제어 예시 (httpd-ssl.conf 또는 ssl.conf의 SSL 관련 VirtualHost 설정에 아래를 추가)
IIS
IIS 서버 설정을 통한 프로토콜 제어 예시
-
[SSL v2 사용 안 함]
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 2.0\Server]하위에 '새로만들기' > 'DWord(32비트)' 값 선택 > 이름 부분에Enabled입력 > 데이터 부분에0입력 > 시스템 재부팅 -
[SSL v3 사용 안함]
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Server]하위에 '새로만들기' > 'DWord(32비트)' 값 선택 > 이름 부분에Enabled입력 > 데이터 부분에0입력 > 시스템 재부팅