요즘 웹을 이용하여 많은 일들이 처리되고 있다. 이에 따라 다양하고 복잡한 기능을 가진 웹 기반의 응용 시스템들이 요구되고 있다. 이러한 웹 기반의 응용 시스템들을 효율적으로 개발하기 위하여 객체지향 분석 설계 방법론을 사용하고 있으며, 그 구현을 위하여 JavaEE(Java Platform, Enterprise Edition) 기반의 기술들이 사용되기도 한다. 이렇게 개발된 웹 기반의 응용 시스템을 통해 많은 일들을 처리하면서 점차 보안과 관련된 이슈들이 중요해졌다. 이를 위하여 Java EE는 보안과 관련된 메커니즘을 제공하고 있지만, 효율적인 웹 응용 시스템을 개발하기 위한 객체지향 분석 설계 방법론과의 상호 연관성은 제공하지 못하고 있다. 이에 따라 Java EE 메커니즘에 따른 보안 방안은 개발 마지막 단계에서 비로소 구현되기 때문에, 요구사항 분석부터 구현에 이르기까지 시스템 개발 전 주기에 따른 일관된 보안 적용은 어려운 실정이다. 따라서 본 논문에서는 요구사항 분석부터 구현에 이르기까지, 보안이 강조된 '안전한 웹 응용 시스템을 위한 객체지향 분석 설계 방법론'을 제안한다. 제안한 객체지향 분석 설계 방법론은 보안에 관한 요구사항 분석과 시스템 분석 및 설계를 위하여 보안이 강조된 모델링 언어인 UMLsec을 사용하고, 그 구현을 위해서 Java EE 기반 기술 중 서블릿의 역할기반 접근제어(RBAC: Role Based Access Control)를 이용한다. 아울러 본 '웹 응용 보안을 위한 객체지향 분석 설계 방법론'을 온라인 뱅킹 시스템 개발에 적용하여 그 효율성을 확인하였다.
요즘 웹을 이용하여 많은 일들이 처리되고 있다. 이에 따라 다양하고 복잡한 기능을 가진 웹 기반의 응용 시스템들이 요구되고 있다. 이러한 웹 기반의 응용 시스템들을 효율적으로 개발하기 위하여 객체지향 분석 설계 방법론을 사용하고 있으며, 그 구현을 위하여 Java EE(Java Platform, Enterprise Edition) 기반의 기술들이 사용되기도 한다. 이렇게 개발된 웹 기반의 응용 시스템을 통해 많은 일들을 처리하면서 점차 보안과 관련된 이슈들이 중요해졌다. 이를 위하여 Java EE는 보안과 관련된 메커니즘을 제공하고 있지만, 효율적인 웹 응용 시스템을 개발하기 위한 객체지향 분석 설계 방법론과의 상호 연관성은 제공하지 못하고 있다. 이에 따라 Java EE 메커니즘에 따른 보안 방안은 개발 마지막 단계에서 비로소 구현되기 때문에, 요구사항 분석부터 구현에 이르기까지 시스템 개발 전 주기에 따른 일관된 보안 적용은 어려운 실정이다. 따라서 본 논문에서는 요구사항 분석부터 구현에 이르기까지, 보안이 강조된 '안전한 웹 응용 시스템을 위한 객체지향 분석 설계 방법론'을 제안한다. 제안한 객체지향 분석 설계 방법론은 보안에 관한 요구사항 분석과 시스템 분석 및 설계를 위하여 보안이 강조된 모델링 언어인 UMLsec을 사용하고, 그 구현을 위해서 Java EE 기반 기술 중 서블릿의 역할기반 접근제어(RBAC: Role Based Access Control)를 이용한다. 아울러 본 '웹 응용 보안을 위한 객체지향 분석 설계 방법론'을 온라인 뱅킹 시스템 개발에 적용하여 그 효율성을 확인하였다.
Nowadays many tasks are performed using the Web. Accordingly, many web-based application systems with various and complicated functions are being requested. In order to develop such web-based application systems efficiently, object-oriented analysis and design methodology is used, and Java EE(Java P...
Nowadays many tasks are performed using the Web. Accordingly, many web-based application systems with various and complicated functions are being requested. In order to develop such web-based application systems efficiently, object-oriented analysis and design methodology is used, and Java EE(Java Platform, Enterprise Edition) technologies are used for its implementation. The security issues have become increasingly important. For such reasons, Java EE provides mechanism related to security but it does not provide interconnections with object-oriented analysis and design methodology for developing web application system. Consequently, since the security method by Java EE mechanism is implemented at the last step only, it is difficult to apply constant security during the whole process of system development from the requirement analysis to implementation. Therefore, this paper suggests an object-oriented analysis and design methodology emphasized in the security for secure web application systems from the requirement analysis to implementation. The object-oriented analysis and design methodology adopts UMLsec, the modeling language with an emphasis on security for the requirement analysis and system analysis & design with regard to security. And for its implementation, RBAC (Role Based Access Control) of servlet from Java EE technologies is used. Also, the object-oriented analysis and design methodology for the secure web application is applied to online banking system in order to prove its effectiveness.
Nowadays many tasks are performed using the Web. Accordingly, many web-based application systems with various and complicated functions are being requested. In order to develop such web-based application systems efficiently, object-oriented analysis and design methodology is used, and Java EE(Java Platform, Enterprise Edition) technologies are used for its implementation. The security issues have become increasingly important. For such reasons, Java EE provides mechanism related to security but it does not provide interconnections with object-oriented analysis and design methodology for developing web application system. Consequently, since the security method by Java EE mechanism is implemented at the last step only, it is difficult to apply constant security during the whole process of system development from the requirement analysis to implementation. Therefore, this paper suggests an object-oriented analysis and design methodology emphasized in the security for secure web application systems from the requirement analysis to implementation. The object-oriented analysis and design methodology adopts UMLsec, the modeling language with an emphasis on security for the requirement analysis and system analysis & design with regard to security. And for its implementation, RBAC (Role Based Access Control) of servlet from Java EE technologies is used. Also, the object-oriented analysis and design methodology for the secure web application is applied to online banking system in order to prove its effectiveness.
* AI 자동 식별 결과로 적합하지 않은 문장이 있을 수 있으니, 이용에 유의하시기 바랍니다.
문제 정의
또한 CBD 방법론은 컴포넌트를 기반으로 소프트웨어 시스템을 개발함으로써 사용자의 요구사항 변화에 신속하고 유연하게 대처하고자 하는 것을 목표로 한다[12].
본 논문에서는 ‘웹 응용 보안을 위한 객체지향 분석·설계 방법론’을 제안하였다.
본 논문에서는 객체지향 분석·설계 방법론 중의 하나인 CBD(Component Based Development) 방법론을 기반으로, 요구사항 분석부터 구현에 이르기까지, 시스템 개발 전 주기에 걸쳐 보안에 대한 일관성을 제공하는, 보안이 강조된 객체지향 분석·설계 방법론을 제안한다.
제안 방법
또한 마지막 구현 단계에서는 분석·설계의 결과를 바탕으로, 보안에 대한 요구사항을 Java EE의 역할기반 접근제어를 이용하여 구현한다.
이를 위하여 기존의 CBD 방법론을 기반으로 각 단계마다 보안이 강조된 모델링 언어인 UMLsec을 사용하여 보안에 대한 분석·설계를 진행 했기 때문에 보안에 대한 일관된 분석·설계가 가능하다. 보안이 강조된 모델링 언어인 UMLsec을 사용하고, 그 구현을 위해서 Java EE 기반 기술 중 서블릿의 역할기반 접근제어를 이용하였다. 이에 따라 보안 요구사항을 요구 사항 분석부터 구현에 이르기까지 시스템 개발에 필요한 모든 단계에 일관되게 반영하였다.
본 논문에서 제안한 ‘안전한 웹 응용을 위한 객체지향 분석·설계 방법론’은 (그림 1)과 같이 요구사항 분석 단계에서 비기능적 요구사항 중 하나인 보안에 대한 정의를 추가하였으며, 추가된 요구사항은 UMLsec을 이용하여 정의하였다.
본 연구에서 제안한 ‘웹 응용 보안을 위한 객체지향 분석·설계 방법론’은 온라인 뱅킹 시스템 개발에 적용하여 그 효율성을 확인하였다.
분석 클래스 다이어그램의 상세화에서는 직전 활동에서 도출된 보안이 강조된 클래스 다이어그램을 바탕으로 유스케이스 시나리오를 추가 본문 분석하여, 각 분석 클래스들의 속성들과 연산들을 정의한다[1,17].
이를 위하여, Java EE는 기반 기술 중 서블릿을 통해 역할기반 접근제어와 같은 보안 방안을 지원하고 있지만, 이러한 기술들이 대부분 분석·설계의 결과로 사용된 것이 아니기 때문에 일관성이 없어, 보안에 취약한 웹 응용 시스템으로 개발될 가능성이 매우 높다[3,6-9]. 아울러 보안 취약에 따른 사례로, 국제 웹 보안 표준 기구(OWASP; The Open Web Application Security Project)에서 웹 어플리케이션 취약점 중 빈도가 많이 발생하고, 보안상 영향을 크게 줄 수 있는 것들을 10가지 선정하고 발표하였다[10]. 그 중, 본 논문에서 다루는 인증에 대한 내용과 보안상 잘못된 시스템 구성 등을 확인할 수 있으며, 본 논문에서 적용된 온라인 뱅킹 시스템과 보안에 대한 응용사례는 다음과 같다[11].
아울러 시스템 분석 및 설계 단계에서도 UMLsec을 이용하여 보안이 강조된 분석·설계를 표현하였다.
이를 위하여 기존의 CBD 방법론을 기반으로 각 단계마다 보안이 강조된 모델링 언어인 UMLsec을 사용하여 보안에 대한 분석·설계를 진행 했기 때문에 보안에 대한 일관된 분석·설계가 가능하다.
이에 따라 기존의 객체지향 분석·설계 방법론과 보안, 그리고 Java EE에 이르기까지, 안전한 웹 응용 시스템 개발을 위한 일관된 객체지향 분석·설계 방법론을 제시하였다.
대상 데이터
본 논문에서는 Java EE 기반 기술 중 접근성을 위해 JSP와 서블릿을 대상으로 하였고 EJB(Enterprise Javabeans)는 엔터프라이즈급에서 사용되는 기술이기 때문에 제외하였다.
이론/모형
보안 요구사항이 있는 유스케이스로부터 도출된 클래스들은 보안이 강조되는 클래스들이며, 각 클래스들은 (표 7)을 참고하여 접근정책에 따른 접근권한을 UMLsec 방법론에 따라 스테레오 타입을 이용하여 작성한다.
본 논문에서는 객체지향 분석·설계 방법론 중의 하나인 CBD(Component Based Development) 방법론을 기반으로, 요구사항 분석부터 구현에 이르기까지, 시스템 개발 전 주기에 걸쳐 보안에 대한 일관성을 제공하는, 보안이 강조된 객체지향 분석·설계 방법론을 제안한다. 아울러 보안에 대한 구현은 Java EE의 기반 기술 중 서블릿의 역할기반 접근제어를 이용한다.
또한 마지막 구현 단계에서는 분석·설계의 결과를 바탕으로, 보안에 대한 요구사항을 Java EE의 역할기반 접근제어를 이용하여 구현한다. 한편 요구사항 중 기능적 요구사항 분석과 시스템 분석 및 설계는 기존의 CBD 방법론을 적용하여 수행한다.
성능/효과
그리고 사용자의 중요한 정보를 수정하거나 데이터를 훔쳐보는 공격 유형을 비밀보장 및 데이터 무결성을 통해 (그림 6)과 같이 방어함으로써, 본 ‘웹 응용 보안을 위한 객체지향 분석·설계 방법론’의 효율성을 확인할 수 있다.
따라서 본 논문에서 제안한 ‘웹 응용 보안을 위한 객체지향 분석·설계 방법론’은 기존의 객체지향 분석·설계 방법론이 제시하지 못했던, 보안에 대한 일관된 분석·설계 방법을 제공하고 있다.
본 논문에서 제안한 ‘웹 응용 보안을 위한 객체지향 분석·설계 방법론’은 기존의 객체지향 분석·설계 방법론 이 제시하지 못했던 보안에 대한 연관성뿐만 아니라, UMLsec에서 제시하지 못했던 Java EE와의 상호 연관성을 역할기반 접근제어를 통해 지원하고 있다.
유스케이스 본문 분석은 사용자로부터 얻은 요구사항 정보들을 토대로 작성된 유스케이스의 기본 시나리오 내용을 본문 분석하여, 시스템에 필요한 클래스들을 추출해 내는 작업을 말한다[1,17]. 본문 분석을 통해 추출할 수 있는 클래스는 경계 클래스(Boundary Class)와 제어 클래스(Control Class), 그리고 엔티티 클래스(Entity Class)가 있다.
질의응답
핵심어
질문
논문에서 추출한 답변
UP의 특징은 무엇인가?
객체지향 분석·설계 방법론 중 대표적인 UP(Unified-Process)의 특징은 유스케이스 기반, 아키텍처 중심, 반복 및 점증적이며, 유스케이스 모델, 분석 모델, 설계 모델 그리고 구현 모델 등으로 작성된다는 것이다[8].
서블릿 보안의 4요소는 무엇으로 이루어지는가?
웹 응용 시스템들은 다양한 위험에 노출되어 있다. 이러한 위험을 막기 위해 Java EE에서 보안을 설정할 수 있으며, 서블릿 보안의 4요소는 인증, 인가, 비밀보장, 데이터 무결성으로 이뤄진다. 이에 서블릿에서의 인증은 BASIC, DIGEST, CLIENT-CERT, FORM과 같이 4가지 인증 방법이 존재한다[3,16].
UMLsec은 무엇을 제공하는가?
UMLsec은 UML(Unified Modeling Language)에서 보안과 관련된 정보를 통합하여 확장된 모델링 언어이다. 아울러 사용자 데이터의 기밀성, 무결성 등의 보안 요구사항을 분석·설계에 반영하는 표준화된 기호를 제공하고 설계의 검증을 지원하며, 프로파일(Profile)의 속성 및 제약에 대한 명세를 통해 정의된다[13-15].
참고문헌 (17)
Brett D. McLaughlin, Gary Pollice, David West, "Head First Object Oriented Analysis & Design", pp.96-103, Hanbit Media. Inc, 2007.
Han Jeong-Su, Kim Gwi-Jeong, Song Yeong-Jae, "Introduction to UML : Object-Oriented Design as in a friendly learning", Hanbit Media. Inc, pp. 58-66, 2009.
Joo Kyung-Soo, Woo Jung-Woong, "A Development of the Unified Object-Oriented Analysis and Design Methodology for Security-Critical Web Applications Based on Object-Relational Data-Forcusing on Oracle 11g-", Korea Society of Computer Infomation, Vol. 17, No. 12, pp. 169-177, 2012.
Eduardo Fernandez-Medinaa, Juan Trujillob, Rodolfo Villarroelc and Mario Piattinia, "Developing secure data warehouses with a UML extension", Journal Information Systems archive, vol. 32 No. 6, pp.826-856, 2007.
G.Popp, J. Jurjens, G.Wimmel, R. Breu, "Security-Critical System Development with Extended Use Case", Asia-Pacific Software Engineering Conference, 5-1 self, 2003.
Madan, s, "security Standards Perspective to Fortify Web Database Applications From Code Injection Attacks", International Conference on Intelligent Systems, Modelling and Simulation(ISMS), vol. 10, pp. 226-230, 2010.
lqra Basharat, Farooque Anam, Abdul Wahab Muzaffar, "Database Security and Encryption: A Survey Study", International Journal of Computer Application, vol. 47, No. 12, pp28-34, 2012
Cho Wan-Su, "UML 2 & UP Object-Oriented Analysis&design", pp.189-205, Hongrung Publishing Company, 2005.
David Basin, Jugen Doser and Torsten Lodderstedt, "Model Driven Security: from UML Models to Access Control Infrastructures", ACM Transactions on Software Engineering and Methodology (TOSEM), vol. 15 No. 1, pp39-91, 2006
OWASP TOP 10, https://www.owasp.org/index.php/Category:OWASP_Top_Ten_Project
Certification : protect of on-line banking, http://www.tekbar.net/ko/network-knowledge/two-factor-authentication-the-protection-of.html
Jeon Byeong-Seon, "CBD, WHAT&HOW", Wowbooks, pp. 189-205, 2005.
R. Matulevicius, M. Dumas, "Towards Model Transformation between SecureUML and UMLsec for Role-based Access Control", IEEE, DB&IS, pp.339-352, 2010.
Denis Hatebur, Maritta Heisel, Jan Jurjens, Holger Schmidt, "Systematic Development of UMLsec Design Models Based on Security Requirements", Lecture Notes in computer Science, Vol. 6603, pp.232-246, 2011.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.