banner
뉴스 센터
즉시배송

보안 싱크 탱크: 코드를 효과적으로 보호하려면 모든 단계에서 확인하세요.

Jun 23, 2023

막심 카바코우 - 막심 카바코우의 최고

실제 코딩을 추가한 지 꽤 오랜 시간이 지났고 기계 수준 코딩을 하면서 처음에는 고급 언어인 Algol과 Fortran을 배웠습니다.

정보 보안 및 보증 분야에서 20년 이상 근무하면서 보안 코딩 문제의 중요성이 커졌습니다. 잘못된 코딩 및 관리 절차를 통해 많은 성공적인 보안 침해가 발생했지만 운영 환경의 역할과 배경 관리 기능은 간과되어서는 안 되며 실제로 매우 중요할 수 있습니다.

보안 코딩의 가장 큰 부분은 코드 조각에 대한 모든 입력이 알려지고 검증된 소스에서 비롯되도록 허용하고 입력이 엄격한 경계 및 내용 검사를 거치도록 하고, 입력이 일치하지 않는 경우 다음을 수행하도록 보장하는 것입니다. 해당 데이터는 완전히 파기됩니다.

마찬가지로 코드 조각의 출력은 코드 자체 내에서만 나와야 하며 알려진 – 검증된 – 대상으로 전송되어야 하며 할당된 것 이외의 메모리를 사용하는 것은 허용되지 않습니다. 코드 자체는 할당된 메모리 위치와 시스템 I/O에만 액세스하고 사용해야 하며, 하우스키핑 기능은 사용 후 임시 메모리 위치도 정리해야 합니다.

모든 코드가 실행되는 운영 체제는 한 코드가 다른 코드에 할당된 메모리를 위반하는 것을 방지하기 위해 메모리 사용량을 할당, 모니터링 및 제어해야 합니다.

OS는 검증된(인증된 또는 플래그가 지정된) 코드만 실행하도록 허용해야 하며, 검증되지 않은 코드는 격리되어 실행을 방지하고 오류를 출력해야 합니다.

예를 들어, 다수의 가상 호스트를 실행하거나 다수의 컨테이너를 지원하는 호스트 시스템 및 OS가 있는 경우 이는 다중 레벨 작업일 수 있습니다. 가상 호스트도 실행될 수 있다는 점을 잊지 마세요. 매우 복잡한 환경을 만드는 수많은 컨테이너.

시장에는 꽤 많은 소프트웨어, 컨테이너 및 OS 테스트 도구가 있지만 조직에 코드를 개발, 유지 관리 및 배포하는 자체 IT 부서가 없으면 필요한 테스트 및 검토 작업을 유능한 기관에 아웃소싱하는 것을 고려할 것입니다.