Wins blog

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

보안 정보

앞 내용 보기 다음 내용 보기
취약점 정보[CVE-2016-9838] Joomla 계정 탈취 취약점 분석
작성일 2017-02-07 조회 1158

1. 개요

해당 취약점은 components/com_users/models/registration.php 파일에서 적절한 확인 없이 세션에 저장된 데이터를 병합하여 사용해서 발생 된다.

이를 이용하여 공격자는 적절하지 않은 데이터 추가 및 악성 필드가 있는 등록 양식을 보내 세션에 저장되게 만들고 정상적인 양식을 보내 병합되게 유도 한다.

공격에 성공하게 되면 사용자의 비밀번호와 이메일주소 수정이 가능하게 된다.

취약버전은 Joomla 1.6.0 에서 3.6.4 이다.

 

2. 취약점 패치 내역

폼에 존재하는 필드만 병합하도록 하여 패치하였다.

[그림1. 취약점 패치 내역]

 

3. 확인 내역

3-1) 비밀번호가 일치하지 않게 jfrom을 이용하여 요청하면서, jfrom[id] 를 원하는 계정으로 설정하여 전송

- jform[id] 를 관리자 ID로 설정하게 되면 관리자 계정 탈취 가능

3-2) 비밀번호가 일치하게 다시 전송하여 저장되도록 만든다.

[그림2. POC 내역]
 

[그림3. 실제 발생 패킷 요약]
 



[그림4,5. 공격 성공시 변경된 계정 내역]

 

4. 정리

본 게시글에서 Joomla Account Takeover 취약점에 대해 알아보았다.

사용자의 편의를 위해 비밀번호 불일치시 세션을 저장하는 정상적인 기능에서 발생하였다.

취약점에 대한 POC가 공개 되었고, 영향을 받는 버전이 많으므로 주의가 필요하다.

해당 취약점에 대해 패치가 되었으므로 최신버전으로 사용하는것을 권고한다.

 

5. 대응 방안

Sniper IPS에서는 아래와 같은 패턴으로 대응 가능하다.

[IPS 패턴 블럭] : 3409, Joomla Account Takeover

 

6. 참고

https://github.com/joomla/joomla-cms/commit/435a2226118a4e83ecaf33431ec05f39c640c744#diff-afc2ec5976ba0864e92ec8782a1f2330

https://www.ambionics.io/blog/cve-2016-9838-joomla-account-takeover-and-remote-code-execution

https://www.joomla.org/announcements/release-news/5693-joomla-3-6-5-released.html 

첨부파일 첨부파일이 없습니다.
태그 Joomla  Account Takeover  Remote Code Execution  CVE-2016-9838