DOI QR코드

DOI QR Code

Verification Methods for Vulnerabilities of Airborne Object-Oriented Software

항공용 객체지향 소프트웨어에 대한 취약점 검증 방안

  • Received : 2021.10.28
  • Accepted : 2022.04.06
  • Published : 2022.04.30

Abstract

As the scale of airborne system software increases, the use of OOT (Object-Oriented Technology) is increasing for functional expansion, efficient development, and code reuse, but the verification method for airborne object-oriented software is conducted from the perspective of the existing procedure-oriented program. The purpose of this paper was to analyze the characteristics of OOT and the vulnerabilities derived from the functional characteristics of OOT, and present a verification method applicable to each software development process (Design, Coding and Testing) to ensure the functional safety integrity of aviation software to which OOT is applied. Additionally, we analyzed the meaning of the static analysis results among the step-by-step verification measures proposed by applying LDRA, a static analysis automation tool, to PX4, an open source used to implement flight control software.

항공용 소프트웨어의 규모가 커짐에 따라 기능적 확장, 효율적인 개발 및 코드의 재사용을 위하여 객체지향 기술의 사용이 증가하고 있으나, 그 검증방안은 기존의 절차지향 프로그램 관점으로 수행되고 있다. 본 논문에서는 객체지향 기술의 특징과 객체지향 언어의 기능적 특징에서 파생되는 취약점들을 분석하고 객체지향기술이 적용된 항공용 소프트웨어의 기능 안전 무결성을 보장하기 위한 소프트웨어 개발단계(Design, Coding, Test)별 적용 가능한 검증 방안을 제시한다. 또한, 비행제어 소프트웨어 구현에 사용되는 오픈소스인 PX4에 정적분석 자동화 도구인 LDRA를 적용하여 제시한 단계별 검증 방안 중 정적분석 결과의 의미를 분석하였다.

Keywords

Acknowledgement

본 연구는 국토교통부/국토교통과학기술진흥원의 지원으로 수행되었음(과제번호: 21DPIW-C153651-03, 과제명: 공공혁신조달 무인이동체 통합기술관리 및 시험평가체계 개발).

References

  1. FAA, AC20-115D, "Advisory Circular in Airborne Software Development Assurance Using EUROCAE ED-12 and RTCA DO-178", 2017
  2. RTCA Inc, DO-332, Object-Oriented Technology and Related Techniques Supplement to DO-178C and DO-278A, 2011
  3. FAA, CAST-4, Object-Oriented Technology (OOT) In Civil Aviation Projects: Certification Concerns, 2000
  4. FAA, CAST-8, Using of the C++ Programming Language, 2002
  5. LDRA Ltd., User Guide for LDRA tool suite, 2016
  6. SGS-TuV Saar GmbH, Certificate of LDRA Tool Suite, Certification Report No. K1C20003, 2015
  7. Liskov, B. H. and Wing, J. M., A behavioral notion of subtyping, ACM Trans. Program. Lang. Syst. 16(6). 1811-1841, 1994 https://doi.org/10.1145/197320.197383
  8. MISRA, MISRA-C++:2008, Guidelines for the use of the C++ language in critical systems, 2008
  9. LDRA Ltd., MISRA-C++:2008 Standards Model Compliance for C++, 2020.