Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Junos OS에 대한 Veriexec 파일 서명 및 확인

Veriexec 파일 서명 및 확인, 이점 및 사용 방법에 대해 알아보십시오.

Verified Exec(veriexec라고도 함)은 디바이스의 무결성을 손상시킬 수 있는 무단 소프트웨어 및 활동으로부터 Junos 운영체제(OS)를 보호하는 파일 서명 및 검증 체계입니다. 원래 NetBSD OS용으로 개발된 veriexec은 Junos OS에 맞게 조정되었으며 기본적으로 활성화되어 있습니다.

인증된 파일, 즉 Junos OS와 함께 제공되는 특정 파일에는 veriexec이 파일을 사용할 수 있는지(실행 또는 열 수 있는지) 확인하기 위해 확인하는 관련 지문이 있습니다. 유효한 지문이 없는 파일은 확인된 입력이 필요한 응용 프로그램에서 실행하거나 읽을 수 없습니다.

파일에는/bin/sh 확인된 입력이 필요하지 않습니다. 이 파일을 사용하여 임의의 스크립트를 실행할 수 있습니다. 위험 관점에서 이러한 스크립트는 사용자 인증 및 권한을 통해 제어되는 대화형 명령과 동일합니다. 그러나 확인된 셸 스크립트에 임의의 스크립트, 즉 매니페스트에 서명이 없는 파일을 실행하라는 지침이 포함된 경우 해당 파일의 실행이 금지됩니다.

Veriexec 작동 방식

Veriexec은 커널에 모든 실행 파일 및 변경 불가능한 상태를 유지해야 하는 기타 파일에 대한 지문 세트로 구성된 디지털 서명된 매니페스트를 제공합니다. veriexec 로더는 매니페스트의 연결된 디지털 서명이 성공적으로 확인된 경우에만 매니페스트의 내용을 커널에 공급합니다. 그런 다음 커널은 파일이 지문과 일치하는지 확인할 수 있습니다. veriexec이 적용되면 확인된 지문이 있는 실행 파일만 실행됩니다. 보호된 파일은 쓰거나 수정하거나 변경할 수 없습니다.

각 설치 이미지에는 읽기 전용 파일인 매니페스트가 포함되어 있습니다. 여기에는 다음과 같은 항목이 포함됩니다.

로그 메시지의 형식은 다음과 같습니다.

파일이 수정되었고 결과 지문이 매니페스트의 지문과 다른 경우 다음 예제와 같은 로그 메시지가 표시됩니다.

지문 불일치는 파일이 수정되었음을 나타냅니다. 손상된 코드가 포함될 수 있으므로 이러한 파일을 실행하려고 하지 마십시오. 지침은 JTAC에 문의하십시오.

Veriexec의 이점

  • 보안 시스템 - 보안 침해로부터 주니퍼 네트웍스 라우터, 스위치 및 방화벽을 보호합니다.

  • 무단 액세스 방지 - 위협 행위자가 지속적인 무단 액세스를 얻거나 시스템 장애를 일으키지 못하도록 차단합니다.

  • 맬웨어 실행 방지—서명되지 않은 바이너리 실행 방지를 통해 무단 수정 및 맬웨어를 차단합니다.

  • 승인된 코드 지원—JET SDK를 사용하여 veriexec 적용을 통해 서명되고 승인된 코드를 Junos OS에 추가합니다. SDK 솔루션에 대한 자세한 내용은 주니퍼 Extension Toolkit 개발자 가이드를 참조하십시오.

Veriexec 작동 여부를 확인하는 방법 - 옵션 1

일부 Junos OS 플랫폼은 veriexec 적용이 비활성화된 선택적 버전의 Junos OS를 제공합니다. 자세한 내용은 Junos Enhanced 자동화를 참조하십시오.

관리자는 Junos OS CLI 셸에서 다음 명령을 실행하여 veriexec가 시행되는지 확인할 수 있습니다.

  1. 쉘을 시작합니다.

  2. Junos OS 릴리스 15.1 이상에 대한 명령을 사용합니다 sysctl security.mac.veriexec.state

    veriexec이 적용되면 출력은 security.mac.veriexec.state: loaded active enforce입니다. veriexec가 적용되지 않으면 출력은 security.mac.veriexec.state: loaded active입니다.

Veriexec 작동 여부를 확인하는 방법 - 옵션 2

아래와 같이 승인된 파일(예: /usr/bin/id)을 새 위치에 복사하여 veriexec이 작동하는지 확인할 수 있습니다. Veriexec은 파일이 동일하더라도 유효한 지문이 /tmp/id가 아닌 /usr/bin/id에만 존재하기 때문에 조작을 방지합니다. 파일 무결성을 확인하기 위해 veriexec은 파일의 기본 Linux 속성을 평가합니다. 파일 자체가 아닌 이러한 속성은 파일을 다른 위치에 복사한 후에 변경됩니다.

  1. 쉘을 시작합니다.

  2. 디렉토리를 변경한 후 승인된 파일(예: /usr/bin/id)을 새 위치에 복사합니다.

결과

veriexec이 시행되는 경우, 인증 오류 메시지가 생성됩니다. 오류 메시지가 생성되지 않으면 파일이 정상적으로 실행됩니다.

veriexec가 적용될 때 생성되는 출력으로 파일이 차단되었음을 보여줍니다.

veriexec가 적용되지 않을 때 생성되는 출력으로 파일이 복사되었음을 보여줍니다.

Veriexec Loader 설치

veriexec 로더는 TFTP(Trivial File Transfer Protocol) 서버 또는 USB 저장 장치에서 설치하는 Junos OS 이미지를 검증합니다.

  • TFTP 서버에서 Junos OS 이미지를 설치하려면 다음 명령을 사용합니다.

  • 다음 명령을 사용하여 USB 저장 디바이스에서 Junos OS 이미지를 설치합니다.

veriexec 지원 로더는 Junos OS 이미지를 검증합니다. 로더는 지문이 있는 새 Junos OS 이미지만 부팅하고 지문이나 커널이 없는 기존 이미지는 부팅하지 않습니다. 이 nextboot 기능을 사용하여 현재 부팅 장치를 확인할 수 있습니다.

부트업그레이드는 BIOS 펌웨어 업그레이드를 지원하기 위해 Junos OS 패키지에서 사용할 수 있는 도구입니다. 이 명령을 사용하여 bootupgrade 업그레이드, U-Boot 확인, 수동 로드 및 veriexec 지원 로더를 설치할 수 있습니다. 이 명령은 bootupgrade -c loader 현재 로더에 대한 버전 문자열을 인쇄합니다.

veriexec 지원 로더를 Junos OS 이미지에 설치하기 전에 두 이중 루트 파티션 모두에서 Junos OS 지문 식별이 수행됩니다. veriexec 지원 로더는 두 이중 루트 파티션 모두에 지문이 있는 Junos OS가 있는 경우에만 설치할 수 있습니다.

Junos OS CLI 셸에서 veriexec 지원 로더를 설치합니다.

  1. 쉘을 시작합니다.

  2. 명령을 사용하여 bootupgrade -l /boot/veloader veriexec 지원 로더를 설치합니다.

  3. 여기에서 다양한 시나리오를 볼 수 있습니다.

    • 명령을 사용하여 request system software add /var/tmp/xxx.tgz no-copy no-validate 지문으로 Junos OS를 설치합니다.

    • veriexec 지원 로더가 이전 릴리스의 대상 Junos OS 이미지를 지원하지 않는 경우, 릴리스와 호환되는 이전 버전의 로더로 다운그레이드할 수 있습니다. 이 명령을 사용하여 request system software add /var/tmp/xxx.tgz no-copy no-validate 이전 버전의 로더로 자동으로 다운그레이드합니다.
    • 이 명령을 사용하여 request system software add /var/tmp/xxx Junos OS 패키지가 veriexec 로더를 사용한 설치와 호환되는지 확인합니다.

      이 예에서는 veriexec 로더가 20.3R1 이전의 Junos OS 릴리스에 지원되지 않기 때문에 설치가 종료되는 것을 볼 수 있습니다.