보안 도구가 ETS6에서 오래된 log4net.dll을 보고하는 이유는 무엇인가요?
ETS에는 두 가지 변환기 기술이 포함되어 있어 이전의 모든 ETS 버전에서 만든 프로젝트와 호환성을 유지합니다:
레거시 변환기 (ETS1-ETS3의 프로젝트용)
log4net v2.0.8을 사용하며 아주 오래된 프로젝트를 열고 변환하기 위해서만 유지됩니다.최신 변환기(CVnext )(XML 1.4부터 시작하여 모든 현재 프로젝트 데이터용)
log4net v2.0.12를 사용하며 적극적으로 유지 관리되고 있습니다.
두 변환기가 모두 필요하기 때문에, 두 log4net 버전은 다음의 예시와 같이 별도의 폴더에 설치됩니다:
C:\Program Files (x86)\ETS5\CV\5.6.241.33672\log4net.dllC:\Program Files (x86)\ETS6\CV\5.6.241.33672\log4net.dll
ETS6가 CVE-2018-1285의 영향을 받나요?
아니요. ETS6는 CVE-2018-1285의 영향을 받지 않습니다.
이 CVE는 공격자가 제어하는 log4net 구성 파일을 허용하는 애플리케이션에서 XXE 기반 공격을 허용하는 취약점을 설명합니다. ETS는 외부 또는 사용자가 제어하는 log4net 구성 파일을 허용하지 않습니다. ETS에서 사용하는 log4net 구성은 내부적이고 정적입니다. 따라서 CVE-2018-1285에서 요구하는 공격 시나리오는 ETS에는 적용되지 않습니다.
이전 log4net.dll(v2.0.8)을 삭제할 수 있나요?
아니요, 레거시 log4net.dll을 삭제해서는 안 됩니다.
레거시 변환기에서 이전 ETS 프로젝트(ETS1-ETS3)를 열고 변환하려면 log4net v2.0.8 파일이 필요합니다. 이 파일을 삭제하면 이전 프로젝트가 더 이상 열리지 않거나 올바르게 변환되지 않을 수 있습니다.
최신 ETS6 버전으로 업데이트한 후에도 log4net 파일이 모두 존재하는 이유는 무엇인가요?
이 동작은 의도적인 것입니다. 많은 사용자가 여전히 구형 ETS 프로젝트로 작업해야 하므로 이 업데이트는 레거시 변환기나 해당 라이브러리를 제거하지 않습니다. ETS가 모든 세대의 프로젝트를 안정적으로 처리할 수 있도록 두 변환기 모두 계속 사용할 수 있어야 합니다.
요약
log4net v2.0.8 - 아주 오래된 ETS 프로젝트의 레거시 변환기에서만 사용됩니다.
log4net v2.0.12 - 최근 프로젝트 데이터 용으로 최신 변환기(CVnext)에서 사용됩니다.
ETS6는 공격자가 제어하는 log4net 구성 파일을 로드하지 않기 때문에 CVE-2018-1285에 취약하지 않습니다.
이전 버전과의 호환성을 위해 필요하므로 이전 log4net.dll 파일을 제거하지 마십시오.