Wins blog

글로벌 정보보안 파트너! Global Security  No.1 윈스는 국가대표 정보보안 기업에서 글로벌 강소기업으로 도약합니다.

보안 정보

앞 내용 보기 다음 내용 보기
취약점 정보[CVE-2017-5344] dotCMS Blind SQL Injection
작성일 2017-09-08 조회 1076

 

개요
dotCMS 에서 Blind SQL Injection (Boolean) 취약점이 존재한다.

 

해당 취약점은 dotCMS 설치시 기본값인 categoriesServlet 에서 q 매개 변수에 대한 적절한 필터링이 존재하지 않아 발생하며, 해당 매개 변수에 특정 구문을 이용하여 SQL 공격이 가능하다. 

 

공격 성공 시 Database 계정 정보 획득이 가능하다.

 

분석
CVE-2017-5344, dotCMS 에 대한 SQL 취약점이 공개되었다.

 

취약점은 dotCMS 설치시 기본적인 경로인 categoriesServlet 의 q 및 inode 매개 변수에서 발생한다.

 

취약점에 대한 공개된 POC는 아래와 같다.

 

[그림 1.] POC 내역

 

실제 해당 POC를 통해 확인해보면 q 매개 변수에서 \' 구문에 대한 적절한 필터링이 존재하지 않아 발생하는 것을 확인 할 수 있다.


해당 test_exploit 이후에는 OR 구문을 이용하여 ${database}.user_ 테이블에서 DB 계정정보를 획득하기 위한 구문이 실행 된다. 

 

[그림 2.] POC 상세 내역

 

[그림 3.] POC 상세 내역_2


벤더사에서는 패치를 완료하였다. 최신버전으로 패치를 권고한다.

 

[그림 4.] 패치 내역

 

공개된 POC 를 악용할 경우 dotCMS의 Database 계정 정보 획득이 가능하므로 주의가 필요하다.

 

 
대응방안
벤더사에서 해당 취약점에 대해 패치를 진행하였으므로, 최신버전으로 패치 하는 것을 최우선으로 권고한다.
패치가 불가능하거나, 당사 Sniper 제품을 사용시에는 아래와 같은 패턴으로 대응이 가능하다.
 
1) Sniper IPS 에서는 아래와 같은 패턴으로 대응 가능하다.

[IPS 패턴블럭] : 3671, dotCMS categoriesServlet Blind SQL Injection

 
2) Snort 패턴은 시큐어캐스트에서 확인 가능하다.
 
참조
https://www.exploit-db.com/exploits/41377/
https://github.com/xdrr/webapp-exploits/blob/master/vendors/dotcms/2017.01.blind-sqli/dotcms-dump.sh
https://dotcms.com/security/SI-39

 

첨부파일 첨부파일이 없습니다.
태그 dotCMS   Blind SQL Injection  categoriesServlet  CVE-2017-5344