Wins Security Information

보안 정보

앞 내용 보기 다음 내용 보기
취약점 정보[CVE-2021-20040] SMA 100 Directory Traversal
작성일 2022-02-11 조회 12337

 

 

SMA 100 Series에 Directory Traversal 취약점이 존재한다.

 

해당 취약점은/fileshare/sonicfiles/sonicfiles 경로에서 RacNumber 매개변수의 값이 43일 때, swcctn 매개 변수에 대한 부적절한 유효성 검사로 인해 발생한다. 원격의 공격자는 악의적으로 조작된 요청을 전송하여 공격할 수 있다.

 

공격 성공 시, 임의의 정보가 유출될 수 있다.

 

 

 

취약점 설명

 

NVD - CVE-2021-20040

CVSS v2.0 Severity and Metrics:

Base Score: 5.0 MEDIUM

 

 

 

[그림1. NVD 내역]

 

 

 

취약점 분석

 

해당 취약점은 fileshare/sonicfiles/ 경로에서 swcctn 변수에 대한 부적절한 유효성 검사로 인해 발생합니다.

 

 

 

[그림 2. RAC_POST_FILE_LIST의 RacNumber]

 

 

파이썬의 파일 읽고/쓰기 API인 RAC_POST_FILE_LIST API 메서드의 호출에서 매개변수 swcctn는 유효성 검사 없이 사용되므로 디렉토리 탐색에 취약합니다. RAC_POST_FILE_LIST 메서드의 RacNumber는 43이고, fileshare.py의 메서드 post_file_list에 매핑됩니다.

 

 

 

[그림 3. RAC_POST_FILE_LIST와 post_file_list의 매핑]

 

 

[그림 3]은 post_file_list 함수에 RAC_POST_FILE_LIST가 매핑되는 것을 보여줍니다. 

 

 

 

[그림 4. post_file_list 메서드 코드 일부]

 

 

POST 요청 내에서 제공된 데이터는 JSON 객체로 구문 분석되고 URL을 통해 전달된 swcctn 값이 swcctn 변수에 할당됩니다. swcctn 변수는 유효성 검사없이, list_file_path 변수에서 저장된 파일 경로를 구성하는 데 사용됩니다. 그런 다음 이 경로는 open 함수에 직접 전달되고 사용자 제공 콘텐츠는 결과 파일에 기록됩니다. 이를 통해 임의의 폴더에 파일을 작성할 수 있습니다.

 

 

취약한 버전은 Sonicwall SMA Series 100 10.2.0.8-37sv, 10.2.1.1-19sv 에서 패치가 되었습니다. 

 

 

 

공격 분석 및 테스트

 

CVE-2021-20040의 공격 패킷은 다음과 같습니다.

 

 

 

[그림 5. 공격 패킷]

 

 

 

취약점 대응 방안

 

1. 최신 버전 사용

 

해당 벤더사에서 발표한 보안 권고를 참고하여 최신 버전으로 업데이트 한다.

https://psirt.global.sonicwall.com/vuln-detail/SNWLID-2021-0026

 

2. WINS Sniper 제품군 대응 방안

 

[6157] SMA 100 Series sonicfiles swcctn Directory Traversal

 

첨부파일 첨부파일이 없습니다.
태그 CVE-2021-20040  SMA 100 Series