• 제목/요약/키워드: 소프트웨어 결함 주입 테스트

검색결과 6건 처리시간 0.023초

결함 주입 방법을 이용한 소프트웨어 보안 취약점 검출 (Vulnerability Testing of Software using Fault Injection)

  • 조병민;윤영민;최종천;조성제;유해영
    • 한국정보보호학회:학술대회논문집
    • /
    • 한국정보보호학회 2006년도 하계학술대회
    • /
    • pp.795-798
    • /
    • 2006
  • 최근 소프트웨어의 복잡도가 증가되어감에 따라 소프트웨어 취약점 검출에 대한 정형화된 방법과 자동화된 도구가 필요하게 되었다. 본 논문에서는 기존의 소프트웨어 테스트에서 고려되지 않았던 보안을 고려한 테스트라는 측면에서 자동화된 도구를 이용하여 소스가 없고 바이너리 코드만 있는 경우 결함 주입 기법을 통해 취약점 분석 방법을 보여주며, 윈도우즈 환경에서 사용되는 응용프로그램에 대한 상호 비교를 통해 향후 발생할 취약점에 대한 예방과 회피에 활용 될 사례를 보여주고 있다.

  • PDF

Main causes of missing errors during software testing

  • Young-Mi Kim;Myung-Hwan Park
    • 한국컴퓨터정보학회논문지
    • /
    • 제29권6호
    • /
    • pp.89-100
    • /
    • 2024
  • 소프트웨어 테스팅의 궁극적인 목표는 소프트웨어의 에러를 찾아내고 수정하는 것이다. 소프트웨어 에러를 발견하기 어렵게 만드는 요인 중에는 소프트웨어의 에러가 출력에 도달하기 전에 내부에서 마스킹 되어 사라지는 것이다. 이 논문의 목적은 소프트웨어 테스팅을 어렵게 만드는 에러 마스킹의 원인 및 특성을 조사하는 것이다. 이를 위해 3개의 소프트웨어를 대상으로 인위적인 에러를 주입하여 그 에러가 다양한 테스트 케이스들에 의해서 얼마만큼 마스킹 되는지, 그리고 그 원인은 무엇인지를 조사하였다. 실험 결과 4가지 주요 발견이 도출 되었다. 첫째, 약 50% 정도의 에러 마스킹은 에러가 실행되지 않았기 때문에 발생하였다. 둘째, 여러 연산자들 중에서 논리연산자와 산술연산자는 에러를 상대적으로 적게 마스킹하고, 관계연산자와 시간 연산자는 에러를 상대적으로 많이 마스킹하였다. 셋째, 테스트 케이스들 중에 에러를 출력까지 전파시키는데 특별한 성능을 보이는 테스트 케이스의 존재를 확인할 수 있었다. 넷째, 주입한 에러의 종류에 따라서 마스킹 효과가 다르다는 것을 확인할 수 있었다.

ISO 26262 표준 기반의 소프트웨어 검증을 위한 소프트웨어 결함 주입 기법 (Software Fault Injection Test Methodology for the Software Verification of ISO 26262 Standards-based)

  • 이상호;신승환
    • 한국자동차공학회논문집
    • /
    • 제22권3호
    • /
    • pp.68-74
    • /
    • 2014
  • As the number of ECUs (Electronic control units) are increasing, reliability and functional stability of a software in an ECU is getting more important. Therefore the application of functional safety standards ISO 26262 is making the software more reliable. Software fault injection test (SFIT) is required as a verification technique for the application of ISO 26262. In case of applying SFIT, an artificial error is injected to inspect the vulnerability of the system which is not easily detected during normal operation. In this paper, the basic concept of SFIT will be examined and the application of SIFT based on ISO26262 will be described.

결함 주입 방법을 이용한 하드웨어 검증시스템 구현 (The Implementation of Hardware Verification System Using Fault Injection Method)

  • 윤경섭;송명규;이재흥
    • 전기전자학회논문지
    • /
    • 제15권4호
    • /
    • pp.267-273
    • /
    • 2011
  • 본 논문에서는, 오류가 발생되어 심각한 피해와 문제의 우려가 있는 하드웨어에 대한 안정성 및 신뢰성을 높이기 위해 PC에서 결함 주입 방법을 이용한 검증시스템의 구현 방법을 제시한다. 검증시스템은 PC에 디지털 I/O 카드를 연결하여 대상 하드웨어 시스템에 소프트웨어 및 하드웨어 방법으로 신호를 입력할 수 있으며, 결함을 생성하여 입력할 수도 있다. 그리고 대상 하드웨어 시스템에서 출력되는 신호를 디지털 웨이브폼 그래프로 모니터링이 가능하도록 구현하여 입력 신호에 따른 출력 신호를 비교하여 신뢰성을 평가할 수 있다. 검증시스템을 이용하여 원자력 발전소 시스템 계통장치 FPGA 펌웨어를 테스트 및 검증하였으며, 소프트웨어 방법과 실장테스트 방법에서의 문제점을 해결하여 신뢰성 있는 결과를 얻을 수 있었다.

임베디드 시스템의 결함 주입 기반 간접 상호작용 테스팅 기법 (Fault Injection Based Indirect Interaction Testing Approach for Embedded System)

  • ;이우진
    • 정보처리학회논문지:소프트웨어 및 데이터공학
    • /
    • 제6권9호
    • /
    • pp.419-428
    • /
    • 2017
  • 임베디드 시스템에서는 모듈간의 상호작용으로 데이터를 주고 받는다. 이때 오류가 포함된 리소스 데이터를 전달하면 시스템의 실행 오류를 유발할 수 있다. 상호작용에 활용되는 리소스들은 모듈간의 의존관계를 만들며 의존관계에 있는 모듈의 변화가 다른 모듈의 기능에 영향을 미치게 된다. 몇몇 임베디드 시스템 조사 자료에 따르면 모듈간의 상호작용 오류가 심각한 소프트웨어 실패의 원인이 되기도 한다. 상호작용 테스팅 단계에서는 이러한 상호작용 오류를 검출하여 시스템 실패의 위험을 낮추고자 한다. 모듈간의 상호작용은 직접 또는 간접적으로 일어난다. 직접적인 상호작용은 모듈의 직접 호출을 통해 이루어지며, 간접 상호작용은 직접호출 이외에 리소스 데이터의 의존성을 통해 나타난다. 이 연구에서는 직접 상호작용에 의한 오류 검출 방식에서는 발견되지 않는 간접 상호작용과 연관된 오류를 검출하고자 한다. 먼저 상호작용 패턴을 분석하여 상호작용 모델을 생성하고 이를 기반으로 상호작용 오류를 검출하는 테스트 케이스 디자인 방법을 제안한다. 마지막으로 결함 주입 기법을 이용하여 제안된 방법의 효용성 및 실효성을 분석한다.

MS 워드프로세서의 입력 파일에 대한 유효성 테스팅 방법에 관한 연구 (A Study on Validation Testing for Input Files of MS Word-Processor)

  • 윤영민;최종천;유해영;조성제
    • 정보처리학회논문지C
    • /
    • 제14C권4호
    • /
    • pp.313-320
    • /
    • 2007
  • 본 논문에서는 MS 워드프로세서의 입력 파일에 대한 유효성을 검사하여 MS 워드프로세서의 보안 취약성을 분석하는 방법을 제안하였다. 즉, 워드프로세서에 적용되는 입력 파일의 헤더 정보를 분석함으로써, 그 입력 파일에 존재하는 취약성을 검출하였다. 본 논문에서 수행한 입력 파일 유효성 테스팅은 기존 결함 주입 도구인 Holodeck 및 CANVAS 등으로는 테스트할 수 없다. 제안한 방법은 헤더를 가진 데이터 파일을 입력으로 사용하는 한글, MS 엑셀 등의 입력 파일에 대한 취약성 검출에도 적용될 수 있다. 또한, 대상 소프트웨어들의 결함 허용성 평가 및 신뢰성 평가에도 사용될 수 있다.