Skip to content
KitploitKITPLOIT
도구익스플로잇블로그
Log in
제출
도구익스플로잇블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

피드문의개인정보© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
pfsense-ovpn-connect-eval — pfSense CE 2.9.0-DEVELOPMENT - 높음 - 원격 - RCE - OpenVPN connect eval | Kitploit
도구/GitHubGitHub/abraxas/pfsense-ovpn-connect-eval
Vulnerability AnalysisExploitationWeb Application ExploitationPenetration TestingCommand and ControlRemote Access ToolLabs & Practice
GitHubabraxas/pfsense-ovpn-connect-eval

pfsense-ovpn-connect-eval

pfSense CE 2.9.0-DEVELOPMENT - 높음 - 원격 - RCE - OpenVPN connect eval

저장소 보기
124일 전아직 검토되지 않음

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

Abraxas Labs - pfsense-ovpn-connect-eval

abraxaslabs.tech  ·  github.com/abraxas  ·  @abraxas_null  ·  [email protected]  ·  pfsense-ovpn-connect-eval

pfsense-ovpn-connect-eval

분류: RCE 도달 범위: 원격

pfSense CE 2.9.0-DEVELOPMENT (9363ac5) - pfsense.org

openvpn.connect_async.sh eval "/sbin/pfctl -a '${anchorname}' ..."에서 anchorname=openvpn/${dev}${username}${trusted_port}. 확장 후 사용자 이름을 작은따옴표가 감싸지 못한다. 로컬 GUI preg는 셸 문자를 거부하지만, RADIUS 사용자 이름은 그 검사를 건너뛴다.

ID아직 CVE 없음
분류RCE
도달 범위원격 (별도 언급이 없는 한 인증된 WebGUI)
CWECWE-78
CVSS높음: 8.8 CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
제품pfSense CE
영향받는 버전2.9.0-DEVELOPMENT (9363ac5b8651a1c7a333180425ce7719070f95f9)
인증OpenVPN server_user / server_tls_user client (RADIUS/LDAP username)이 있는 WebGUI 세션
라이선스GNU Affero GPL v3.0
랩127.0.0.1 전용

공개 master 9363ac5를 고정했다. 랩은 고정된 싱크의 PHP 가젯이며, 127.0.0.1:19070에서 루프백 HTTP를 사용한다.

시리즈 분석 글: https://abraxaslabs.tech/research/pfsense-ce-leftovers

공격자가 할 수 있는 일

방법싱크권한
RADIUS 사용자 이름을 사용한 OpenVPN client-connectopenvpn.connect_async.sh eval pfctl -a '${anchorname}'무결성: 랩에서 입증: 사용자 이름 alice'; w; : '가 추가 w를 실행했다. 로컬 GUI 문자 집합은 해당 사용자 이름을 거부한다.
동일한 잔여 코드동일한 싱크정찰: 랩에서 입증: 해당 세션의 pfctl argv. 추론: 연결 해제 시 rm /tmp/${username}.
동일한 잔여 코드동일한 싱크가용성: 추론: 사용자 앵커에 대한 pfctl -F rules.

요구 사항: OpenVPN server_user / server_tls_user client (RADIUS/LDAP username). 별도 언급이 없는 한 POST에 CSRF-magic 적용. WebGUI PHP-FPM은 root로 실행된다.

요구 사항: OpenVPN server_user / server_tls_user client (RADIUS/LDAP username). 별도 언급이 없는 한 POST에 CSRF-magic 적용. WebGUI PHP-FPM은 root로 실행된다. 별도 언급이 없는 한 POST에 CSRF-magic 적용. WebGUI PHP-FPM은 root로 실행된다.

닫힌 채로 유지되는 인접 공격 표면

로컬 데이터베이스 사용자 이름 문자 집합. 가젯에서 인증되지 않은 접근은 해당 없음.

해당 페이지도 함께 부여되지 않는 한 Diagnostics: Command는 사용할 수 없다.

랩

cd lab
./run.sh

루프백 127.0.0.1:19070. Compose 프로젝트 pfsense-ovpn-connect-eval. 증인 PFSENSE-OVPN-CONNECT-EVAL-WITNESS. 루프백 전용: 127.0.0.1:19070. Compose 프로젝트 pfsense-ovpn-connect-eval. 증인 PFSENSE-OVPN-CONNECT-EVAL-WITNESS. 고정된 라인의 PHP 가젯. 실행 후 스택은 해체된다.

마지막 줄:

SUCCESS PFSENSE-OVPN-CONNECT-EVAL control-eval=yes local-gui-charset-rejects-trigger=yes trigger-eval=yes PFSENSE-OVPN-CONNECT-EVAL-WITNESS

수정

eval을 중단하라. 앵커를 pfctl에 리터럴 argv로 전달하라. RADIUS 사용자 이름을 로컬과 동일하게 필터링하라.

참고 자료

  • github.com/pfsense/pfsense 9363ac5b8651a1c7a333180425ce7719070f95f9
  • CWE-78
  • 시리즈: https://abraxaslabs.tech/research/pfsense-ce-leftovers
도구 다운로드