Скачать презентацию ASP NET 보안 이 수 겸 kenial shinbiro Скачать презентацию ASP NET 보안 이 수 겸 kenial shinbiro

e1bf1bc8d4129c1c92adf60f06220967.ppt

  • Количество слайдов: 18

ASP. NET 보안 이 수 겸 – kenial@shinbiro. com Microsoft C# MVP, MCSD. net/MCDBA ASP. NET 보안 이 수 겸 – [email protected] com Microsoft C# MVP, MCSD. net/MCDBA © 2005 International. NET Association Asia Pacific

Agendas • 보안의 의미와 성격 • 보안 통신 Secure communication, 인증 Authentication 과 권한 Agendas • 보안의 의미와 성격 • 보안 통신 Secure communication, 인증 Authentication 과 권한 Authorization, • ASP. NET에서의 인증과 권한 © 2005 International. NET Association Asia Pacific

보안의 의미와 성격 • 정보 시스템 보안Information System Security의 세 가 지 요소 – 보안의 의미와 성격 • 정보 시스템 보안Information System Security의 세 가 지 요소 – CIA (기밀성Confidentiality, 무결성Integrity, 가용성 Availability) – 반대 개념 : DAD (노출Disclosure, 변질Alteration, 파괴 Destruction) • 공적/사적 성격의 보안 – 슈퍼마켓, 은행 – 생산관리, 인트라넷, 쇼핑몰 © 2005 International. NET Association Asia Pacific

보안의 의미와 성격 (계속) 브루스 슈나이어 '보안은 사슬과 같아서, 가장 약한 부분이 끊어진다‘ • 보안의 의미와 성격 (계속) 브루스 슈나이어 '보안은 사슬과 같아서, 가장 약한 부분이 끊어진다‘ • 보안 공격의 양상 ; 폭발물을 이용한 건물 테러에 비교할 수 있음 – Demo ; 패킷 캡처를 활용한 id/pw 알아내기 © 2005 International. NET Association Asia Pacific

보안 통신 Secure communication, 인증 Authentication과 권한 Authorization, • 닷넷에서의 정의 – 보안 통신 보안 통신 Secure communication, 인증 Authentication과 권한 Authorization, • 닷넷에서의 정의 – 보안 통신 Secure communication ; 메시지가 사적(private) 이면서 권한이 없는 사용자에 의해 변조되지 않았음을 보장 – 인증 Authentication ; 어플리케이션의 사용자를 식별 – 권한 Authorization ; 식별된 사용자에게 액세스 권한을 할당 © 2005 International. NET Association Asia Pacific

. NET Web application security © 2005 International. NET Association Asia Pacific . NET Web application security © 2005 International. NET Association Asia Pacific

ASP. NET Security Architecture © 2005 International. NET Association Asia Pacific ASP. NET Security Architecture © 2005 International. NET Association Asia Pacific

Secure communication • SSL Secure Socket Layer – 채널 단위의 보안 기능 제공. 보통 Secure communication • SSL Secure Socket Layer – 채널 단위의 보안 기능 제공. 보통 브라우저와 웹 서버간의 http 채널 보안을 위해 사용되며, 웹 서비스 메시지 보안에도 사용된다. • IPSec Internet Protocol Security – 컴퓨터 간의 통신 보안에 사용. 예) 어플리케이션 서버와 데 이터베이스 서버의 연결 보안 • RPC Remote Procedure Call encryption – 클라이언트 / 서버간의 모든 rpc 패킷을 암호화. DCOM에서 사용 – 여기에서는 다루지 않음 © 2005 International. NET Association Asia Pacific

Secure communication (계속) • 위와 같은 구성이 꼭 절대적인 것은 아님 – 사용하는 프로토콜, Secure communication (계속) • 위와 같은 구성이 꼭 절대적인 것은 아님 – 사용하는 프로토콜, 서버의 환경(하드웨어, OS), 방화벽 구성 등등에 따라 가변적일 수 있음 © 2005 International. NET Association Asia Pacific

Secure communication (계속) • SSL – SSL이 적용되면 클라이언트는 https 프로토콜을 사용하며, (https: //URL) Secure communication (계속) • SSL – SSL이 적용되면 클라이언트는 https 프로토콜을 사용하며, (https: //URL) 서버는 443번 TCP 포트로 접속을 받아들인다. – 보통 SSL의 최대 부하는 초기접속handshake시 보안 세션이 생성되기까지의 시간이며, 그 이후에는 상대적으로 빠른 속 도를 보인다. – SSL이 적용되는 웹 페이지는 가능한한 전송량을 줄인다. – 설치하는데 서버 인증서가 필요함 © 2005 International. NET Association Asia Pacific

Secure communication (계속) • Demo ; set up SSL – 인증 요청 생성 – Secure communication (계속) • Demo ; set up SSL – 인증 요청 생성 – 인증 요청을 발급 기관으로 발송 – 인증서 발급 – 인증서 웹 서버에 설치 – 웹서버에 SSL 접속 설정 – https: //www. thawte. co. kr/fr eecert. asp ; SSL 테스트용 인 증서 © 2005 International. NET Association Asia Pacific

Secure communication (계속) • IPSec – IPSec은 특정 컴퓨터와 주고받는 데이터의 보안에 사용된다. – Secure communication (계속) • IPSec – IPSec은 특정 컴퓨터와 주고받는 데이터의 보안에 사용된다. – SSL이 주로 브라우저/웹 서버의 http 통신 보안에 사용되는 반면, IPSec은 TCP/UDP 및 특정 프로토콜, 특정 IP 별로 통신 에 대한 보안을 설정할 수 있다. – Kerberos(같은 포리스트에 있어야 함), 서버 인증서, 문자열 기반 암호화를 사용할 수 있다. – Demo ; set up IPSec • ‘관리 도구 -> 로컬 보안 정책’에서 설정 © 2005 International. NET Association Asia Pacific

ASP. NET의 인증 • • Forms Windows Passport None © 2005 International. NET Association ASP. NET의 인증 • • Forms Windows Passport None © 2005 International. NET Association Asia Pacific

Forms Authentication • authentication ticket ; 로그온되었을 때 생성되어 사 이트를 이용할 수 있게 Forms Authentication • authentication ticket ; 로그온되었을 때 생성되어 사 이트를 이용할 수 있게 함. 보통은 쿠키에 저장되나, asp. net 2. 0에서는 querystring을 통해서 쿠키를 사용 하지 않을 수도 있음 • 접근 권한이 필요한 페이지에 접근하면, 로그온 페이 지로 돌려보냄 • 유저 정보는 설정 파일이나 SQL Server에 저장될 수 있음 © 2005 International. NET Association Asia Pacific

Forms Authentication (계속) • Forms Authentication Demo (with sql server) – 로그인 페이지 생성 Forms Authentication (계속) • Forms Authentication Demo (with sql server) – 로그인 페이지 생성 • Login 컨트롤 사용 – 웹 어플리케이션의 인증 모드 설정 • web. config 파일 편집 – 회원정보를 위한 설정 • 회원정보 저장 공간 생성 ; aspnet_regsql. exe • db 접근 권한 생성; grant. Membership. Db. sql • Asp. net이 지금 설정된 db에 접근할 수 있도록 설정 – connection. String Element – membership Element – 페이지 접근 권한 설정 ; location Element © 2005 International. NET Association Asia Pacific

Windows Authentication • Anonymous – 초기 IIS의 상태, form 기반 인증이나 다른 인증 방법 Windows Authentication • Anonymous – 초기 IIS의 상태, form 기반 인증이나 다른 인증 방법 사용 • Basic – 직접 ID와 패스워드를 입력, 인증함 • Digest – Active Directory를 이용, 도메인 컨트롤러에서 인증 • Integrated Windows ; Kerberos, NTLM • Certificate – 인증서를 이용 © 2005 International. NET Association Asia Pacific

Windows Authentication (계속) • Windows Authentication Demo – IIS 설정 – Web. config 설정 Windows Authentication (계속) • Windows Authentication Demo – IIS 설정 – Web. config 설정 – Impersonate • IIS 5. 0 -> IIS 6. 0에서의 변경 – ASPNET -> NT AUTHORITYNETWORK SERVICE 계정 사용 © 2005 International. NET Association Asia Pacific

Reference • Building Secure ASP. NET Applications: Authentication, Authorization, and Secure Communication http: //msdn. Reference • Building Secure ASP. NET Applications: Authentication, Authorization, and Secure Communication http: //msdn. microsoft. com/library/enus/dnnetsec/html/secnetlp. MSDN. asp • International Information Systems Security Certification Consortium http: //www. isc 2. org/ • Patterns & Practices Security Guidance for Applications Index http: //msdn. microsoft. com/library/default. asp? url=/li brary/en-us/dnpag 2/html/Security. Guidance. Index. asp © 2005 International. NET Association Asia Pacific