보안 동향 ㅣ 남아공, Adobe 적용된 자체 브라우저 공개
침해사고분석팀ㅣ2021.01.27
침해사고분석팀ㅣ2021.01.27
보안 동향 ㅣ 미공개 자료를 위해 보안 연구원들을 노리는 북한 해커들
침해사고분석팀ㅣ2021.01.27
침해사고분석팀ㅣ2021.01.27
침해사고분석팀ㅣ2021.01.26
취약점 정보[CVE-2017-12927] Cacti spikekill.php XSS | ||||
작성일 | 2017-09-08 | 조회 | 1059 | |
---|---|---|---|---|
개요Cacti에 reflected XSS 취약점이 존재한다. 해당 취약점은 spikekill.php 페이지에 접근 시, 웹 사용자 인터페이스로 사용자가 입력한 입력 값을 제대로 검증하지 못해 발생한다. [CVE 정보]
CVE-2017-12927
[취약한 버전]
Cacti Group Cacti prior to 1.1.18
[취약한 파라미터]
method
확인 내역Cacti는 PHP로 작성된 Round-Robin 데이터베이스 도구 (RRDtool)에 대한 오픈 소스 front-end 인터페이스이다. Cacti는 사용자가 일정한 간격으로 다양한 데이터 소스를 폴링하여 수집 된 데이터를 기본 MySQL 데이터베이스에 저장한다. 데이터 수집은 외부 스크립트의 사용을 통해 SNMP 종점 및 기타 데이터 소스를 포함한 다양한 데이터 소스를 사용하여 수행 할 수 있다. Cacti는 RRDtool에서 지원하는 다양한 그래프 유형 및 통합 기능을 사용하여 수집 된 데이터를 표시 할 수 있다. 또한 관리자가 Cacti의 특정 영역에 대한 액세스 권한을 사용자에게 부여 할 수 있는 사용자 기반 관리 도구가 포함되어 있다.
Cacti 내에서는 spikekill.php를 사용하여 특정 데이터 세트에서 원하지 않는 잡음이나 스파이크를 제거 할 수 있다. spikekill.php는 다양한 스파이크 제거 방법들을 지원하는 removpikes.php 스크립트를 호출하여 이를 수행한다.
spikekill.php에 대한 요청이 있을 때, 사용할 스파이크 제거 방법은 요청에 전달 된 method 파라미터에 따라 지정된다. 그런 다음 spikekill.php는 method의 값이 "stddev", "float", "variance" 또는 "fill" 중 하나인지 확인한다. spikekill.php 스크립트에 대한 요청의 예는 다음과 같다.
GET /cacti/spikekill.php?method=stddev&local_graph_id=1 HTTP/1.1
Host: www.myhost.com 해당 취약점은 spikekill.php 내의 method 파라미터를 제대로 검증하지 못해 발생한다. method 파라미터의 값이 위에서 언급한 값들(stddev, float, variance, fill) 중 하나가 아닌 경우, Cacti는 method 값이 인식되지 않았음을 나타내는 에러 메시지로 응답한다. 이렇게 하면 요청문의 method로 전달된 값이 에러 메시지에 직접 반영된다. 그 결과, XSS 공격이 가능하게 된다.
![]() [그림1] spikekill.php
![]() [그림2] POC 정보
대응방안해당 벤더사에서 제공한 보안 권고문을 참고하여, 취약한 버전에 대해 패치를 진행 한다. https://www.cacti.net/release_notes.php?version=1.1.18
참고https://github.com/Cacti/cacti/issues/907 http://securitytracker.com/id?1039208 |
||||
첨부파일 | 첨부파일이 없습니다. | |||
![]() ![]() ![]() |
||||
태그 | CVE-2017-12927 |