안전한 코드 실행: 오늘날의 과제

악성코드 기반 공격의 증가에서 알 수 있듯이 소프트웨어 응용 프로그램과 거기에 사용되는 데이터는 위변조에 취약합니다. 응용 프로그램 수준 암호화가 사용되고 있었다고 해도 서버에서 데이터가 복호화되는 경우 해당 데이터 역시 취약한 것으로 될 가능성이 있습니다. 중요한 응용 프로그램은 신중하게 취급하고, 응용 프로그램 프로세스 및 실행중인 데이터에 공격자가 액세스 할 수 없도록하기 위한 조치를 취해야 합니다.

종래는 전용 데이터 센터 또는 어느 정도 신뢰할 수 있는 환경으로 분리된 시스템에서 물리적 보호를 제공했습니다. 그러나 오늘날의 고도로 분산된 시스템과 긴밀하게 통합된 시스템 또는 종종 완전히 가상화되거나 경우에 따라서는 클라우드 기반의 시스템에서는 환경적인 보안이 크게 손상되어있는 것이 적지 않습니다. 강력한 솔루션의 하나로서 응용 프로그램의 보안에 주의 할 부분을 하드웨어 보안 모듈 (HSM) 등이 제공하는 보안 제한 영역에서 실행하는 것입니다. 응용 프로그램에 "샌드 박스"를 제공하는 HSM은 변조 방지 하드웨어 범위 내에서 응용 프로그램 코드를 실행하는 것을 허용하고 보안 불안정한 환경에서 안정적인 공간을 효과적으로 만들어 내고, APT (Advanced Persistent Threats)을 포함한 외부인이나 내부 관계자에 의한 다양한 공격으로부터 응용 프로그램을 보호합니다.

자세한 내용

불안정한 환경에서 응용 프로그램을 실행해야하는 경우에도 해당 응용 프로그램의 신뢰성을 분명하게해야 하거나 응용 프로그램의 무결성을 해치는 공격이 특히 심각한 결과를 초래하는 경우 특별한 예방 조치를 취할 수 있습니다. 적용 대상 예로는 다음과 같은 것을 들 수 있습니다.

  • 공개 키 인프라 (PKI)에서 위조 증명서의 발행을 허용하기 위하여 인증 기관 (CA)의 응용 프로그램 코드가 손상 될 우려가 있는 경우.
  • 온라인 콘텐츠 배포에서 예를 들어 영화관에 과금 목적으로 배포량을 측정하는 동시에 보안을 위해 감사를하는 원격지의 높은 가치의 컨텐츠에 액세스하는 경우.
  • 원격지에서 감사 로깅에서 감사 및 규정 준수 목적을 위해 안전한 믿을 수 있는 로그가 필수적인 경우. 이러한 응용 프로그램은 감사 로그 및 기록에 대한 디지털 서명이나 (만드는 법에 의해 신뢰를 줄 수있는) 타임 스탬프를 신뢰할 수 있는 방법으로 적용해야 합니다.
  • 휴대 전화 나 스마트 공공 요금 측정기 등 첨단 장비의 외주 생산에서 장치의 인증 및 디지털 신원을 만들고 게시하거나 제조하는 장치의 수와 구성을 관리하는데 원격 응용 프로그램 프로세스를 사용 하는 경우. 이러한 과정을 악용하면 가짜와 비정품 또는 악성 코드에 감염된 제품이 제조 될 우려가 있습니다.
  • 웹에서 로그온 인증 정보 등의 고 부가가치 데이터를 보호하는 비밀이 높은 자체 개발 한 알고리즘과 프로토콜을 웹 DMZ 및 공공 환경 등의 위험한 환경에 두지 않으면 안되는 경우. 이 경우 대규모 공격이나 지적 재산권 또는 개인 데이터 손실을 방지하기 위해 모든 보호가 필요합니다. 

섹션 숨기기

보안 코드 실행과 관련된 위험 요소

  • 악성 응용 프로그램에서 실행중인 응용 프로그램의 코드를 읽어 데이터와 비즈니스 프로세스가 노출 될 수도 있습니다.
  • APT ( 표준 응용 프로그램의 동작을 바꾸어 버리는 응용 프로그램 ) 이 잠시 동안 침입이 감지되지 않는 방식으로 핵심 비즈니스 프로세스의 제어를 빼앗아 이를 공격자에게 전달하여 비즈니스 무결성을 해칠 우려가 있습니다.
  • 조작 된 응용 프로그램은 제조 공정의 특성과 제조 된 장치의 구성 또는 펌웨어를 수정할 수 있고 그 장치 자체가 대규모 데이터 도용을위한 트로이 목마로 사용 된 경우 영향이 미치는 범위가 넓어집니다.
  • 물리적 보안과 격리 등 기존의 접근 방식을 사용하여 서버를 정상 종료 시키려고하는 시도는 가상화 모델과 클라우드 기반 모델로 이행이 지금 이상 진행되면서 점점 비싼 제약이 많아 실시 할 수 없게 될 가능성도 있습니다.

안전한 코드 실행: Thales e-Security 솔루션

nShield HSM CodeSafe 사용자 지정 코드를 안전하게 실행할 수 있는 기능을 사용하여 개발자와 아키텍트는 HSM의 보안 경계 내에있는 실행 코드를 보호 할 수 있습니다. CodeSafe는 HSM 키 관리 및 암호화 처리 능력에서 더 안전한 경계를 확장하고 보안에 주의해야하는 응용 프로그램 코드가 실행되는 애플리케이션이다. "샌드 박스"는 그 범위에 포함됩니다. CodeSafe는 서버에서 실행되는 응용 프로그램과 HSM에서 실행되는 프로세스 사이의 보안 격차를 해소하는데 도움이 됩니다. CodeSafe는 응용 프로그램 실행 시 응용 프로그램을 보호하기 때문에 허용되지 않은 프로그램이 데이터에 액세스하는 것을 방지 할 수 있습니다. 또한 CodeSafe는 SSL 스택 전체를 nShield HSM에서 실행할 수 있도록하는 옵션 기능을 지원합니다. 이 기능은 암호화 된 SSL 연결을 HSM에서 직접 종단, 호스트 서버에서 데이터를 일반 텍스트로 배포를 방지 메커니즘을 제공합니다. 보안이 입증 된 검증 된 하드웨어 환경에서 응용 프로그램 소프트웨어를 실행하여 위험에 노출 된 데이터, 프로세스 및 지적 재산을 보호합니다.

장점:

  • 신중하게 취급해야 하는 응용 프로그램과 데이터를 APT 및 기타 악성 코드로부터 보호합니다.
  • 높은 보증성, 비지니스 프로세스를 유지하면서 물리적으로 신뢰성이 확보된 환경에 대한 의존성과 보안 책임자에 의한 인적 개입을 줄일 수 있습니다.
  • 응용 프로그램 및 HSM에 대한 투자 효과를 극대화합니다.
  • 아웃소싱과 클라우드 인프라 사용과 같은 신뢰할 수 없는 환경에 시설을 이전하는 기회를 최대한 이용하여 보안을 손상시키지 않고 비용을 절감합니다.
  • 고도로 분산 된 비즈니스 프로세스의 보안 강화를 가능하게 하는 신뢰할 수 있는 에이전트 (위변조방지 응용 프로그램 또는 서비스)을 만듭니다.
  • 신중하게 처리 할 데이터가 HSM에 전달되기 전에 호스트 서버에서 평문 상태로 노출 될 우려가 있다는 취약점이 사라집니다. 예를 들어 호스트 서버에서 SSL이 종료 된 경우에, HSM에서 종료하도록 변경한다고 했던 것이 사실이다.
  • 주문 설계 된 인증 체계이라고하는 독자 개발의 알고리즘이나 프로토콜이 포함 된 신중하게 취급해야 응용 프로그램의 비밀을 보호합니다.