
CVE-2026-75816에 대한 개념 증명 및 실습 재현으로, admin-ajax 폼 제출을 통한 인증되지 않은 WordPress Frontend Admin 계정 탈취입니다.
abraxaslabs.tech · github.com/abraxas · @abraxas_null · [email protected] · CVE-2026-75816
Frontend Admin by DynamiApps 3.29.11 - shabti
저는 @abraxas_null입니다. 루프백 랩입니다. 클라이언트는 CVE-2026-75816-Abraxas-Labs.py입니다.
user_1은 게시물이 아닙니다. 인증되지 않은 admin-ajax.php frontend_admin/form_submit입니다. ActionPost::conditions_logic()은 객체 id가 숫자가 아닐 때(user_1) 조기 반환하여 current_user_can('edit_post')를 건너뜁니다. 3.29.11의 Email 필드 pre_update_value에는 edit_user 검사가 없으며 user 1의 이메일을 wp_update_user합니다. NVD는 3.29.12까지 나열하며, 3.29.12 체인지로그에서 해당 검사가 추가되었습니다. 랩은 3.29.11입니다. 현재 버전은 3.29.13입니다.
| CVE | CVE-2026-75816 · CVE.org |
| CWE | CWE-287 |
| CVSS | Critical: 9.8 CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
| Product | Frontend Admin by DynamiApps |
| Affected | 3.29.11까지 모든 버전 (NVD는 3.29.12를 나열하며, 3.29.12에서 Email 필드 edit_user 검사가 추가됨) |
| Patched | 3.29.12 이상 |
| Auth | 없음 |
| License | GNU Affero GPL v3.0 |
| Lab | 127.0.0.1 전용 |
게스트 POST가 관리자 이메일을 변경합니다. 해당 주소로의 비밀번호 재설정은 계정 탈취입니다. 랩은 이메일 변경에서 멈춥니다. 저는 다른 사람의 관리자를 겨냥한 비밀번호 분실 공격 레시피를 공개하지 않습니다.
Wordfence가 pre_update_value와 user_1을 지목했습니다. 저는 conditions_logic을 읽고, 그다음 Email 필드를 읽고, 그다음 공개 폼을 수집했습니다.
GET /fea-lab/. _acf_nonce, _acf_objects, user_email 필드 키를 추출합니다. POST acff[post][<key>][email protected]. GET /?fea_lab_email=1. 작은 ajax JSON Post updated, 그다음 새 주소.
잘못된 시도: action=pre_update_value 또는 parse_array (함수 이름은 라우트가 아님); 하드코딩된 nonce; 숫자 post_id (그러면 edit_post가 실제로 실행되어 게스트는 거부됨); who_can_see가 all이 아님; 3.29.12; 본문에 여전히 남아 있는 [email protected]를 성공으로 간주.
포트 8088. Frontend Admin 3.29.11. 공개 폼 /fea-lab/, who_can_see=all, 객체 user_1.
오직 127.0.0.1:8088 (또는 바인딩한 루프백)만 대상으로 합니다.
cd lab
docker compose up --force-recreate
./run.sh
증거: GET /?fea_lab_email=1이 [email protected]입니다. 일반 폼 HTML이나 [email protected]는 아닙니다.
아무것도 배우지 못한 채 실패하는 방법:
[email protected]가 여전히 관리자 이메일인 경우0 / -1 / 권한 JSONFrontend Admin by DynamiApps를 3.29.12 이상으로 업데이트하세요 (현재 3.29.13). 패치된 빌드에 대해 CVE-2026-75816-Abraxas-Labs.py를 다시 실행하세요: 관리자 이메일이 변경되지 않아야 합니다.
plugins.trac.wordpress.org/changeset/3664865/acf-frontend-form-element
www.wordfence.com/threat-intel/vulnerabilities/id/f1637a3b-7b0f-485d-9d19-4f711f8c671b?source=cve
플러그인 디렉터리: acf-frontend-form-element
Trac 브라우저: plugins.trac.wordpress.org/acf-frontend-form-element
Abraxas Labs: abraxaslabs.tech · github.com/abraxas · @abraxas_null
GNU Affero GPL v3.0. LICENSE를 참조하세요.
클라이언트는 루프백과 통신합니다. 소유하지 않은 시스템에 사용하는 것은 Abraxas Labs에 의해 승인되지 않습니다. 보증하지 않습니다.