Wins Security Information

취약점 정보

앞 내용 보기 다음 내용 보기
취약점 정보[CVE-2020-35136] Dolibarr ERP,CRM RCE
작성일 2021-08-06 조회 830

 

 

 

 

Dolibarr ERP/CRM에 RCE(Remote Code Execution)취약점이 존재합니다.

 

해당 취약점은 admin/tools/dolibarr_export.php 경로에서 zipfilename_template 매개 변수에 대한 부적절한 유효성 검사로 인해 발생합니다. 원격의 공격자는 악의적으로 조작된 HTTP 요청을 전송하여 공격할 수 있습니다.

 

공격 성공 시, 임의의 코드가 실행될 수 있습니다.

 

 

 

취약점 설명

 

NVD - CVE-2020-35136

CVSS v2.0 Severity and Metrics:

Base Score: 9.0 HIGH

 

 

[그림1. NVD 내역]

 

 

 

취약점 분석

 

 

해당 취약점은 admin/tools/dolibarr_export.php 경로에서 zipfilename_template 매개 변수에 대한 부적절한 유효성 검사로 인해 발생합니다. 이 파라미터의 값을 제대로 검사하지 않고 사용하여 해당 파라미터에 임의의 코드를 삽입, 실행시킬 수 있습니다.

 

Dolibarr ERP/CRM의 Backup 기능에서 파일을 압축하여 저장하는데, 이 때 파일명에 명령을 포함하도록 합니다. 조작된 Backup 요청 시 공격자가 조작한 명령이 실행됩니다.

 

그림2의 export_files.php를 보면 zipfilename_template 파라미터 값을 받아서 dol_sanitizeFileName함수를 통해 유효성 검사를 합니다. 이 후, export_files.php의 136~140라인(그림3)에서 유효성 검사를 마친 파일명을 포함하여 tar 명령을 실행합니다.

 

 

 

[그림 2. dolibarr/htdocs/admin/tools/export_files.php 소스 - 1 ]

 

 

[그림 3. dolibarr/htdocs/admin/tools/export_files.php 소스 - 2 ]

 

 

 

파일명에 대한 유효성 검사는 그림4의 함수에서 수행됩니다. 그림4는 유효성 검사함수의 패치 전후를 비교한 것인데, 패치 전에는 연속으로 나오는 하이픈(빼기) 기호에 대한 유효성 검사가 없습니다. 따라서 이 부분을 활용하여 취약점을 발생시킬 수 있습니다.

 

 

 

[그림 4. dolibarr/htdocs/core/lib/functions.lib.php 패치 전후 비교 ]

 

 

 

취약한 버전은 12.0.3이며, 해당 취약점은 제조사에 의해 업데이트되었습니다.

 

 

공격 분석

 

 

CVE-2020-35136 의 공격 패킷은 다음과 같습니다.

 

 

 

 

[그림 5. 공격 패킷]

 

 

 

해당 취약점의 PoC에서는 연속적으로 하이픈 기호 두 개를 포함하는, tar 명령 옵션을 활용합니다. 이 옵션은 그림5 공격 패킷에 표시된 부분에서 확인할 있습니다. 일반적으로 이 옵션은 압축 및 필터링을 위한 프로그램을 커스텀하거나 지정하기 위해 사용합니다.

 

 

 

 

[ 그림6. 취약점 발생 시 서버에서 실행되는 명령 ]

 

 

 

[ 그림7. RCE 취약점 트리거 및 쉘 획득 확인 ]

 

 

 

forkstat을 통해 취약점을 발생 시 서버에서 실행되는 명령을 확인할 수 있습니다. 그림6를 보면 RCE 실행을 위한 값이 잘 입력된 것을 확인할 수 있습니다. 이렇게 취약점이 트리거되면 그림7과 같이 netcat 명령을 통해 서버에 접속하여 쉘을 획득할 수 있습니다.

 

 

 

취약점 대응 방안

 

1. 최신 버전 사용

 

해당 밴더사에서 발표한 최신의 버전으로 업데이트합니다.

https://github.com/Dolibarr/dolibarr/releases

 

2. WINS Sniper 제품군 대응 방안

 

 
[5573]     Dolibarr zipfilename_template RCE
 

 

첨부파일 첨부파일이 없습니다.
태그 CVE-2020-35136  Dolibarr  RCE