KOROMOON

착한 사마리아인이 되고 싶습니다.

6/06/2018

[CVE-2018-7602] Drupalgeddon3 분석



( 1 ) 취약점 정의 및 분석
Drupal 보안팀은 2018 0425 SA-CORE-2018-004 보안 권고를 발표하였으며 Drupalgeddon3 이름으로 명명됨.
[CVE-2018-7600] Drupalgeddon2 탐지를 우회한 취약점임.
위험함 문자(ex. # 문자)를 필터링하는 stripDangerousValues() 함수는 # 문자의 유니코드 인코딩 문자열(%2523)을 사용하여 우회할 수 있음.
그런 다음 응용 프로그램에서 # 문자로 디코딩되어 임의코드 실행이 가능함.

< 외부 목적지를 처리하는 데 사용되는 destination 매개 변수 >

이번 취약점에 대한 위 Drupal 보안 패치를 살펴보면 외부 목적지를 처리하는 데 사용되는 destination 매개 변수의 필터링 기능을 추가시킴.
(위치 : 위 첫 번째 스샷은 /includes/bootstrap.inc 파일, 두 번째 스샷은 /includes/request-sanitizer.inc 파일)

< 공격 사례, 출처 - www.trustwave.com >

아직까지 패치되지 않은 시스템에 백도어 설치, 가상화폐 채굴 프로그램 설치 등 광범위하게 손상시키고 있음.



( 2 ) 취약점 방어 및 탐지

아래 버전별로 패치할 것!!!
Drupal 7.x 버전대 -> 7.59 버전 패치
Drupal 8.4.x 버전대 -> 8.4.8 버전 패치
Drupal 8.5.x 버전대 -> 8.5.3 버전 패치

그리고 버전에 따라 POC 가 다르므로 Snort 룰을 아래와 같이 적용시켜 탐지할 것!!!

- Drupal v7 버전용
alert tcp any any -> any any (msg:"KOROMOON_CVE-2018-7600,7602_Drupalgeddon2,3_v7_POC"; uricontent:"password"; nocase; pcre:"/(%2523|%23|#)(access_callback|pre_render|post_render|lazy_builder)/i";)

- Drupal v8 버전용

alert tcp any any -> any any (msg:"KOROMOON_CVE-2018-7600,7602_Drupalgeddon2,3_v8_POC"; uricontent:"register?element_parents=account"; nocase; pcre:"/(%2523|%23|#)(access_callback|pre_render|post_render|lazy_builder)/i";)



참고 사이트 : 
https://www.drupal.org/SA-CORE-2018-004
https://thehackernews.com/2018/04/drupalgeddon3-exploit-code.html
https://www.trustwave.com/Resources/SpiderLabs-Blog/-Drupalgeddon2--Recent-Developments/
http://blog.nsfocus.net/cve-2018-7602-drupal/
https://www.anquanke.com/post/id/106669
https://www.mbsd.jp/Whitepaper/CVE-2018-7602.pdf



============================================================
본 게시물은 KOROMOON 님께서 작성하였으며 CCL (Creative Commons License) 에서 "저작자표시-비영리-동일조건변경허락" 이용조건으로 자료를 이용하셔야 합니다.

댓글 없음:

댓글 쓰기