문맥 (context)
실행가능 파일(예를 들어, 이진 이미지, 오브젝트 코드, 포터블 엑서큐터블(PE), 매크로, 비주얼 베이직 스크립(VBS)과 같은 스트립트 등)은, 바이러스 또는 트로이 목마를 포함할 수 있기 때문에 컴퓨터 상에서 실행하는 데 있어서 위험할 수 있다. 바이러스는, 통상적으로 사용자의 소망에 반하여 또한 사용자가 모르게 디스크 상의 이진 이미지를 수정하는 프로그램 또는 코드의 일부이다. 바이러스는 스스로 복사할 수도 있다. 자신을 반복해서 복제할 수 있는 간단한 바이러스는 비교적 만들기 쉽다. 간단한 바이러스라도 이것이 위험한 이유는 모든 이용가능한 메모리를 빠르게 이용하여 시스템을 정지시킬 수 있기 때문이다. 일부 바이러스들은 네트워크를 통해 자신을 전송하고 보안 시스템을 우회할 수 있다. 바이러스와는 달리, 트로이 목마는, 자신을 복제하진 못하지만, 파괴적일 수 있으며, 사용자가 의심하지 않고서 실행할 수 있는 양호한 애플리케이션으로 흔히 위장한다. 트로이 목마의 한 유형으로는 사용자의 컴퓨터에서 바이러스를 제거하는 대신 바이러스를 사용자의 컴퓨터에 도입하는 프로그램이 있다.
예를 들어 바이러스 또는 트로이 목마로 손상된 실행가능 코드를 식별하는 한 가지 방안은, 실행가능 코드를 컴퓨팅 장치 상으로 설치하거나 다운로드할 때 신뢰성있는 암호 해시를 이용하는 것이다. 암호 해시, 또는, 간단히 "해시"는 실행가능 코드를 요약된 형태 즉 다이제스트(digest)로 컴파일링한다. 신뢰성있는 해시는, 해시 생성시(예를 들어, 구축시) 양호한 것으로 알려져 있으며, 또는, 미손상 코드를 나타내는 것으로 알려져 있다. 실행가능 파일(즉, 이진 이미지, 실행가능 코드, 스크립트, 매크로 등)을 위한 신뢰성있는 해시를 생성하려면, 데이터와 같은 관련 리소스를 비롯하여 실행가능 파일에 대하여 메시지 다이제스트 또는 체크섬 계산을 수행하여 실행가능 파일을 한 위치로부터 다른 위치로 전달하기 전에 (예를 들어 구축시) 신뢰성있는 제1 결과를 얻는다. 전달된 실행가능 파일에 동일한 계산을 수행하여 신뢰성있는 제2 결과를 얻는다. 신뢰성있는 제1 결과를 신뢰성있는 제2 결과와 비교하여 수신된 실행가능 파일이 원래 전송된 데이터와 동일한 것인지를 판정한다. 예를 들어, 계산 전과 계산 후의 결과가 동일하다면, 그 수신된 데이터는 정확할 것이다. 동일하지 않다면, 수신된 실행가능 파일은 손상되어 있다. 이러한 방식으로, 손상된 이진 이미지를 다운로드하거나 설치하는 위험성을 상당히 줄인다.
종래 기술에서는 설치시 파일을 검증함으로써 신뢰성있는 해시와 관련된 파일 설치 위험성을 줄임에도 불구하고, 이러한 종래 기술로는, 신뢰성을 알 수 없는 소스(예를 들어, 신뢰성있는 해시나 서명이 없는 파일)로부터 파일을 설치하고, 컴퓨팅 장치 상으로 설치된 후 파일을 실행하며, 또는 기본 입출력 시스템(BIOS)의 일부인 파일을 실행하는 위험성을 줄이지 못한다. 신뢰성을 알 수 없는 소스로부터 컴퓨팅 시스템 상으로 파일을 설치하는 것과 관련된 문제점들은 잘 알려져 있다. 게다가, 설치시 무결성으로 검증된 파일이 설치 후 손상될 수 있어서, 임의의 초기 신뢰 검증 평가가 쓸모없게 된다. 또한, 오늘날의 컴퓨터 시스템은 신뢰성있는 실행가능 오브젝트 코드와 의심되거나 악성 실행가능 오브젝트 코드를 구별하는 고유의 메카니즘을 갖고 있지 않다. BIOS 펌웨어 내로 로딩된 파일의 경우, 이 파일이 부팅 동작 동안 실행을 위해 로딩될 때, 종래의 시스템에서는, 통상적으로 코드 무결성, 또는 다른 임의의 유형의 바이러스, 스파이웨어, 다른 악성 소프트웨어(멀웨어)의 체크를, 부팅 프로세스의 일부로서 실행하기 전에 그 로딩된 파일에 대하여 적절히 수행하는 데 있어서 충분한 코드 무결성 체크 인프라스트럭처를 (로딩된) 제 위치에 갖고 있지 않다.
지시문 (instruction)
주어진 원문을 읽고 필요한 정보를 파악하여, 원문에 근거해 질문에 답하라.
질문 (question)
실행가능 파일에 대하여 메시지 다이제스트 또는 체크섬 계산을 수행하고, 제1 결과와 제2 결과를 비교하여 판정하는 방식을 사용할 때 얻을 수 있는 기술적 효과는 무엇인가?
추론 과정 (compact_reasoning)
-
1과제 해석
task_interpretation메시지 다이제스트/체크섬 비교 방식의 기술적 효과를 묻는 질문이다.
-
2정보 추출
information_extraction실행가능 파일에 대해 제1 결과와 제2 결과를 비교하여 동일 여부를 판정하는 과정과 그에 따른 효과를 추출한다.
- 신뢰성있는 제1 결과를 신뢰성있는 제2 결과와 비교하여 수신된 실행가능 파일이 원래 전송된 데이터와 동일한 것인지를 판정한다.
- 이러한 방식으로, 손상된 이진 이미지를 다운로드하거나 설치하는 위험성을 상당히 줄인다.
-
3근거 선택
evidence_selection비교를 통한 판정 결과가 가져오는 직접적인 효과를 선별한다.
- 손상된 이진 이미지를 다운로드하거나 설치하는 위험성을 상당히 줄인다.
-
4논리 통합
logical_integration계산된 결과값의 비교를 통해 데이터의 동일성을 확인하면, 손상된 파일의 유입을 막을 수 있다는 논리 구조를 확인한다.
-
5결론 도출
conclusion_formulation비교를 통해 데이터의 정확성을 판정함으로써 손상된 이진 이미지의 다운로드 및 설치 위험을 줄일 수 있다.
- 계산 전과 계산 후의 결과가 동일하다면, 그 수신된 데이터는 정확할 것이다. 동일하지 않다면, 수신된 실행가능 파일은 손상되어 있다.
-
6답변 생성
answer_generation질문에 대해 문맥에 근거하여 기술적 효과를 서술한다.
- 손상된 이진 이미지를 다운로드하거나 설치하는 위험성을 상당히 줄인다.
최종 답변 (final_answer)
실행가능 파일에 대해 메시지 다이제스트 또는 체크섬 계산을 수행하여 얻은 제1 결과와 제2 결과를 비교함으로써, 수신된 파일이 원래 전송된 데이터와 동일한지 판정할 수 있으며, 이를 통해 손상된 이진 이미지를 다운로드하거나 설치하는 위험성을 상당히 줄일 수 있다.
핵심 해석 (core_interpretation)
실행가능 파일에 대한 메시지 다이제스트 또는 체크섬 계산 결과의 비교를 통해 수신된 파일의 동일 여부를 판정함으로써 손상된 이진 이미지를 다운로드하거나 설치하는 위험성을 상당히 줄인다.