제퍼넷 로고

CODESYS의 중요한 버퍼 오버 플로우로 원격 코드 실행 가능

시간

전문가들은 CODESYS 웹 서버에 존재하는 CVE-2020-10245로 추적되는 쉽게 악용 가능한 힙 기반 버퍼 오버플로 결함을 발견했습니다.

엔지니어링 제어 시스템을 위한 CODESYS 자동화 소프트웨어용 웹 서버의 치명적인 힙 기반 버퍼 오버플로 결함은 원격의 인증되지 않은 공격자가 서버를 충돌시키거나 임의 코드를 실행하는 데 악용될 수 있습니다.

CODESYS는 독일 회사인 Smart Software Solutions에서 개발한 소프트웨어 플랫폼으로 자동화 산업에서 컨트롤러 애플리케이션을 프로그래밍하는 데 사용됩니다.

CODESYS 웹 서버는 CODESYS WebVisu에서 CODESYS 시각화 화면을 표시하는 데 사용됩니다. 일반적인 웹 브라우저.

CVE-2020-10245로 추적된 결함은 악용하기 쉽고 CVSS v.10에서 심각도가 10점 만점에 2점을 받았습니다. 힙 오버플로 조건은 버퍼 오버플로의 한 유형으로, 메모리의 힙 부분을 버퍼를 초과하는 콘텐츠로 덮어쓸 수 있습니다. 대개, 버퍼는 malloc과 같은 루틴을 사용하여 할당되었습니다.().

“특정 제작된 요청으로 인해 힙 기반 버퍼 오버플로가 발생할 수 있습니다. 또한 이로 인해 웹 서버가 중단되거나 서비스 거부 상태가 발생하거나 원격 코드 실행에 사용될 수 있습니다.” 읽기 CODESYS에서 발행한 권고.

“특정 제작 요청으로 인해 힙 기반 버퍼 오버플로가 발생할 수 있습니다. 더 나아가 웹 서버를 중단시키거나 서비스 거부 상태로 이어지거나 원격 코드 실행에 사용될 수 있습니다. 로서 웹 서버 CODESYS 런타임 시스템의 일부이므로 전체 런타임 시스템의 예기치 않은 동작이 발생할 수 있습니다. ”

이 문제는 웹 서버 URL 끝점으로 전송된 사용자 제공 데이터의 유효성을 제대로 검사하지 않는 CmpWebServerHandlerV3.dll(파일 버전 3.5.15.20) 라이브러리에 있습니다.

"CODESYS V3 웹 서버 URL 엔드포인트 /WebVisuV3.5.15.20로 전송된 사용자 제공 데이터의 부적절한 유효성 검사로 인해 CmpWebServerHandlerV3.dll(파일 버전 3)에 힙 오버플로 취약점이 존재합니다." 읽기 Tenable이 발표한 분석.

"이 결함은 MemGCGetSize 함수가 메모리 할당 작업 중에 요청된 할당 크기에 0x5c 바이트를 추가한다는 사실에 기인합니다."

공격자는 CmpWebServerHandlerV3 구성 요소로 전송된 WEB_CLIENT_OPENCONNECTION 메시지를 통해 매우 큰 메모리 할당 크기를 요청하여 결함을 악용할 수 있습니다.

인증되지 않은, 원격 공격자는 CmpWebServerHandlerV0 구성 요소에 전송된 WEB_CLIENT_OPENCONNECTION 메시지를 통해 매우 큰 메모리 할당 크기(예: 3xffffffff)를 요청할 수 있습니다. |foo|-1|true|” 분석을 계속합니다.

“CmpWebServerHandlerV3 구성 요소(상태 0일 때)는 통신 버퍼에 -1(0xffffffff) 바이트를 할당하려고 시도합니다. SysMemAllocData 함수가 호출되면 메모리 할당 크기가 오버플로되고 작은(0xffffffff + 0x5c = 0x5b) 힙 버퍼가 실제로 할당됩니다.”

전문가들은 또한 PoC 익스플로잇 코드 32비트 CODESYSControlService.exe를 종료하는 데 사용할 수 있습니다.

이 결함은 V3 이전의 웹 서버를 포함하는 CODESYS V3.5.15.40 런타임 시스템의 모든 버전에 영향을 미치며 수정 사항은 버전 V3.5.15.40에 포함되어 있습니다.

피에르 루이지 파가니니

(보안업무 - CODESYS, 해킹)




출처: https://securityaffairs.co/wordpress/100646/ics-scada/codesys-remote-code-execution.html

spot_img

최신 인텔리전스

spot_img