반응형
https://www.kisa.or.kr/public/laws/laws3.jsp
분석∙설계단계 SW 보안강화 - 설계보안항목 정의 및 설계 시 고려 사항 - 인증대상 및 방식
설명
- 중요정보·기능과 인증방식을 정의하고, 정의된 중요정보 접근 및 중요 기능 수행 허용을 위해 인증 기능이 우회되지 않고 수행될 수 있도록 설계해야 한다.
설계항목내용
- 중요기능이나 리소스에 대해서는 인증 후 사용 정책이 적용되어야 한다.
- 안전한 인증방식을 사용하여 인증 우회나 권한 상승이 발생하지 않도록 해야 한다.
- 중요 기능에 대해 2단계(2 factor) 인증을 고려해야 한다.
가. 취약점 개요
- 중요 기능이나 리소스를 요청하는 경우 인증이 되었는지를 먼저 확인하지 않고 요청을 처리하는 경우 중요 정보나 리소스가 노출될 수 있다.
나. 설계 시 고려사항
1. 중요기능이나 리소스에 대해서는 인증 후 사용 정책이 적용되어야 한다.
- 분석 단계에 분류된 중요 기능에 대해 "인증 후 사용" 정책이 반드시 적용될 수 있도록 한다.
- 각각의 중요 기능에서 인증을 요청하도록 구현하는 것은 쉽지 않다. 시스템 설계 시 중요기능을 분류하고 식별된 중요기능에 대해 일괄적으로 인증을 요구하도록 시스템이 구성되도록 설계한다. 이 경우 직접적으로 기능과 인증을 매핑시켜 처리하는 컴포넌트를 개발하거나, 인증 기능을 제공하는 프레임워크 또는 라이브러리를 활용하여 중앙집중식 인증이 적용되도록 설계한다.
2. 안전한 인증방식을 사용하여 인증 우회나 권한 상승이 발생하지 않도록 해야 한다.
- 인증정보는 서버 측에 저장하여 인증이 필요한 기능이나 리소스에 접근을 시도할 때 서버에서 인증 여부를 확인할 수 있도록 해야 한다.
(ㄱ) 일회용 패스워드 사용 시
- 일회용 패스워드 적용하는 경우 타 서비스나 시스템과의 연동이 보장되도록 설계해야 한다. 일회용 패스워드를 도입하는 경우 다음과 같은 규칙을 적용하여 설계한다.
- A. 일회용 패스워드는 시각정보, 이벤트 정보, 질의‐응답방식으로 취득한 정보를 이용해 생성할 수 있다.
B. 시각정보 기반의 연계정보는 특정 시간 동안만 유효하여야 하며, 이벤트/질의‐응답방식을 사용할 경우에는 연계정보를 추측할 수 없도록 보호방안을 제공할 수 있어야 한다.
C. 일회용 패스워드에는 시간적 제한을 설정해야 한다. (금융영역에서는 30~60초)
D. 일회용 패스워드는 중복 및 유추가 불가능하도록 6자리 이상의 숫자 및 문자로 구성한다.
E. OTP발생기와 인증서버에서 동일한 정보를 생성해야 한다.
3. 중요 기능에 대해 2단계(2 factor)인증을 고려해야 한다.
- 중요기능에 대해 멀티 디바이스(SMS, ARS 등)를 이용한 추가 인증이나, 공인인증서, 바이오정보(지문, 홍채 등)를 이용한 전자서명 인증기술을 이용한 2단계 인증을 고려해야 한다
- 2단계 인증은 Type1(패스워드/PIN 등 지식기반인증), Type2(토큰/스마트카드 등 소유기반인증), Type3(지문/홍채 등 생체기반인증) 중 2개 이상의 인증 기법을 사용하도록 설계한다.
- 중앙 집중화된 형식의 인증 메커니즘을 제공하기 위해 인증 기능을 제공하는 프레임워크를 활용할 수 있다.
참고자료
- CWE‐306 Missing Authentication for Critical Function, MITRE,
http://cwe.mitre.org/data/definitions/306.html - 2013 OWASP Top 10 ‐ A7 Missing Function Level Access Control, OWASP,
https://www.owasp.org/index.php/Top_10_2013 - Authentication Cheat Sheet, OWASP,
http://www.owasp.org/index.mmmphp/Authentication_Cheat_Sheet - 2016 OWASP Application Security Verification Standard, OWASP, Authentication Verification Requirements,
http://www.owasp.org/index.php/Category:OWASP_Application_Security_Verification_Standard_Project - Digital Authentication - The Basics, Dawn M. Turnet,
http://www.cryptomathic.com/news-events/blog/digital-authentication-the-basics - 일회용 패스워드(OTP) 알고리즘 프로파일, 한국정보통신기술협회,
http://www.tta.or.kr/data/ttas_view.jsp?rn=1&rn1=Y&rn2=&rn3=&pk_num=TTAK.KO-12.0193&nowSu=4&standard_no=&kor_standard=otp&publish_date=§ion_code=&acode1=&acode2=&scode1=&scode2=&order=publish_date&by=desc&totalSu=14 - 홍채 등 생채인식 기반 간편 공인인증 가이드라인, 한국인터넷진흥원,
http://www.kisa.or.kr/notice/press_View.jsp?mode=view&p_No=8&b_No=8&d_No=1484 - Spring Security - Authentication, eGovFrame 표준프레임워크 포털,
http://www.egovframe.go.kr/wiki/doku.php?id=egovframework:rte:fdl:server_security:authentication - ASP.NET Authentication, Microsoft,
http://msdn.microsoft.com/en-us/library/eeyk640h.aspx
반응형
'공부 > KISA' 카테고리의 다른 글
비밀번호 관리 - KISA 소프트웨어 개발 보안 가이드 (0) | 2020.07.10 |
---|---|
인증수행 제한 - KISA 소프트웨어 개발 보안 가이드 (0) | 2020.07.10 |
업로드·다운로드 파일 검증 - KISA 소프트웨어 개발 보안 가이드 (0) | 2020.07.10 |
보안기능 동작에 사용되는 입력값 검증 - KISA 소프트웨어 개발 보안 가이드 (0) | 2020.07.10 |
허용된 범위 내 메모리 접근 - KISA 소프트웨어 개발 보안 가이드 (0) | 2020.07.10 |
댓글