본문 바로가기
HOME> 논문 > 논문 검색상세

논문 상세정보

실용적인 시스템을 위한 안전한 소프트웨어 컴포넌트 조합
Secure Component Composition for Practical Systems

이은영   (동덕여자대학교UU0000457  );
  • 초록

    소프트웨어 컴포넌트를 이용하여 시스템을 구성하는 경우 그리 간단하지 않은데, 그것은 링크 과정 자체가 서로 다른 버전들과 디지털 서명, 정적인 타입 정보나 네트워크로 전송된 소프트웨어, 그리고 서로 다른 판매자에 의한 컴포넌트들을 모두 포함하는 복잡한 과정이기 때문이다. 만약 링크과정에 적용될 수 있는 링크 정책을 수립하고 이를 링크 시에 적용할 수 있는 방법이 있다면 이러한 복잡함을 해결하는 좋은 수단이 된다. 시큐어 링킹(Secure Linking)은 사용자가 안전한 링크를 위한 정책을 만들고 이를 링크 시에 적용할 수 있도록 해주는 새로운 링크 프로토콜이며, 시큐어 링크 프레임워크(Secure Linking Framework)는 시큐어 링크 시스템 구현을 위한 논리적 프레임워크이다. 본 논문에서는 시큐어 링크 프레임워크를 이용하여 마이크로 소프트의 닷넷(.NET)에서 사용되는 어셈블리의 링크 과정을 설명함으로써 시큐어 링킹이 실제로 사용되는 링크 시스템을 나타낼 수 있을 만큼 풍부한 표현력과 실용성을 가지고 있음을 증명한다. 또한 이 과정에서 나타난 어셈블리 코드 서명의 문제점에 대한 논의를 통해서 논리에 기반을 둔 링크 프레임워크가 가지는 장점을 보이고자 한다.


    When building a software system out of software components, the composition is not simple because of the complexity caused by diverse versions, digital signatures, static type information, and off-the-shelf components from various vendors. Well-established linking policies are one of the best solutions to solve the complexity problem at linking time. Secure Linking (SL) enables users to specify their linking policies which can be enforced at link time. Secure Linking framework is a framework based on a higher-order logic in order to help build a SL system. This paper shows that the Secure Linking logic is expressive enough to describe a real-world component composition system, the linking protocol of.NET. The paper also demonstrates the advantage of the logic-based linking framework by discussing the weakness of the code signing protocol in.NET which was found while we encoded the assembly linking system of.NET.


  • 주제어

    component composition .   logical framework .   code security.  

  • 참고문헌 (17)

    1. A. W. Appel and A. P. Felty. Dependent types ensure partial correctness of theorem provers. Journal of Functional Programming, 14(1):3-19, January 2004 
    2. L. Bauer, A. W. Appel, and E. W. Felten. Mechanisms for secure modular programming in java. Technical Report CS-TR-603-99, Department of Computer Science, Princeton University, July 1999 
    3. M. Blume and A. W. Appel. Hierarchical modularity. ACM Transactions on Programming Languages and Systems, 21:812-846, 1999 
    4. A. Reid, M. Flatt, L. Stoller, J. Lepreau, and E. Eide. Knit: Component composition for systems software. In Proceedings of the Usenix Conference on Operating System Design and Implementation, pages 347-360, 2000 
    5. M. Abadi, M. Burrows, B. Lampson, and G. Plotkin. A calculus for access control in distributed systems. ACM Transactions on Programming Languages and Systems, 15(4):706-734, September 1993 
    6. Microsoft. Inside the .NET framework. http://msdn.microsoft.com/library/ 
    7. D. Dean. The security of static typing with dynamic linking. In Proceedings of the Fourth ACM Conference on Computer and Communications Security, Zurich, Switzerland, 1997 
    8. D. S. Platt. Introducing Microsoft .NET. Microsoft Press, 2001 
    9. E. Wobber, M. Abadi, M. Burrows, and B. Lampson. Authentication in the Taosoperating system. ACM Transactions on Computer Systems, 12(1):3-32, 1994 
    10. L. Bauer, M. A. Schneider, and E. W. Felten. A general and flexible access- control system for the web. In Proceedings of the 11th USENIX Security Symposium, August 2002 
    11. L. Cardelli. Program fragments, linking, and modularization. In Proceedings of ACM Symposium on Principles of Programming Languages, pages 266277. ACM Press, January 1997 
    12. P. T. Devanbu, P. W.-L. Fong, and S. G. Stubblebine. Techniques for trusted software engineering. In Proceedings of the 1998 International Conference on Software Engineering, pages 126-135, Los Alamitos, California, 1998 
    13. G. Necula. Proof-carrying code. In Proceedings of the 24th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Langauges (POPL '97), January 1997 
    14. A. W. Appel and E. W. Felten. Proof- carrying authentication. In 6th ACM Conference on Computer and Communications Security, November 1999 
    15. F. Pfenning and C.Schurmann. System description: Twelf - a meta-logical framework for deductive systems. In Proceedings of the 16th International Conference on Automated Deduction (CADE-16), pages 202-206, July 1999 
    16. E. Lee and A. W. Appel. Secure Linking: a Logical Framework for Policy- Enforced Component Composition (Extended Abstract). ACM SIGSOFT Symposium on the Foundations of Software Engineering, September, 2003 
    17. R. Harper, F. Honsell, and G. Plotkin. A framework for defining logics. Journal of the Association for Computing Machinery, 40:143-184, January 1993 

 저자의 다른 논문

  • 이은영 (12)

    1. 2006 "프로그래밍 언어에 기반한 정보흐름 보안" 情報保護學會誌 = KIISC review 16 (5): 35~44    
    2. 2006 "Live Sequence Chart 명세언어의 의미론적 정의" 韓國컴퓨터情報學會論文誌 = Journal of the Korea Society of Computer and Information 11 (6): 49~57    
    3. 2010 "소프트웨어 보안취약점 데이터베이스 구축 사례" 정보과학회지 = Communications of the Korean Institute of Information Scientists and Engineers 28 (2): 20~31    
    4. 2010 "Plans and Strategies for UBcN Networks and Services" Journal of information processing systems 6 (3): 323~334    
    5. 2012 "소프트웨어 보안약점의 중요도에 대한 정량 평가 기준 연구" 情報保護學會論文誌 = Journal of the Korea Institute of Information Security and Cryptology 22 (6): 1407~1417    
    6. 2015 "SW 개발보안을 위한 보안약점 표준목록 연구" 情報保護學會誌 = KIISC review 25 (1): 7~17    
    7. 2015 "보안취약점 중요도 정량 평가 체계 연구" 情報保護學會論文誌 = Journal of the Korea Institute of Information Security and Cryptology 25 (4): 921~932    
    8. 2016 "상용 및 공개 소프트웨어 의도적 보안약점 동향" 情報保護學會誌 = KIISC review 26 (1): 9~19    
    9. 2018 "Verifying Code toward Trustworthy Software" Journal of information processing systems 14 (2): 309~321    

 활용도 분석

  • 상세보기

    amChart 영역
  • 원문보기

    amChart 영역

원문보기

무료다운로드
  • NDSL :
유료다운로드

유료 다운로드의 경우 해당 사이트의 정책에 따라 신규 회원가입, 로그인, 유료 구매 등이 필요할 수 있습니다. 해당 사이트에서 발생하는 귀하의 모든 정보활동은 NDSL의 서비스 정책과 무관합니다.

원문복사신청을 하시면, 일부 해외 인쇄학술지의 경우 외국학술지지원센터(FRIC)에서
무료 원문복사 서비스를 제공합니다.

NDSL에서는 해당 원문을 복사서비스하고 있습니다. 위의 원문복사신청 또는 장바구니 담기를 통하여 원문복사서비스 이용이 가능합니다.

이 논문과 함께 출판된 논문 + 더보기