Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

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

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

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
portabilis-ieducar-user-type-privilege-escalation — CVE-2025-11554에 설명된 취약점 악용에 대한 개념 증명으로, i-Educar 소프트웨어의 사용자 유형 변경 엔드포인트에 대한 임의 요청을 통한 권한 상승 가능성에 관한 것입니다. | Kitploit
도구/GitHubGitHub/m3m0o/portabilis-ieducar-user-type-privilege-escalation
Privilege EscalationVulnerability AnalysisExploitationWeb Application ExploitationWeb SecurityPenetration Testing
GitHubm3m0o/portabilis-ieducar-user-type-privilege-escalation

portabilis-ieducar-user-type-privilege-escalation

CVE-2025-11554에 설명된 취약점 악용에 대한 개념 증명으로, i-Educar 소프트웨어의 사용자 유형 변경 엔드포인트에 대한 임의 요청을 통한 권한 상승 가능성에 관한 것입니다.

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유
저장소 보기
110개월 전아직 검토되지 않음

Portabilis i-Educar >= 2.1.13 사용자 유형 변경 엔드포인트에 대한 임의 요청을 통한 권한 상승

CVE-2025-11554에 설명된 취약점 악용에 대한 개념 증명으로, i-Educar 소프트웨어에서 사용자 유형 엔드포인트에 대한 임의 요청 중 권한 상승 가능성에 관한 것입니다.

설명

사용자 유형을 변경하는 데 필요한 권한이 없는 사용자도 이 작업을 담당하는 엔드포인트에 대한 임의 요청을 통해 등록된 사용자 유형의 권한을 수정할 수 있습니다. 이를 통해 낮은 권한의 사용자가 자신과 연결된 사용자 유형에 최대 권한을 부여하여 권한을 상승시키고, 애플리케이션의 모든 섹션을 손상시킬 수 있습니다.

개념 증명

취약점을 입증하기 위해 실제 악용 시나리오에서 사용될 수 있는 공격 경로를 시뮬레이션합니다. 먼저, Baixíssimo 사용자 유형과 연결된 Usuário sem Privilégios 사용자가 있습니다.

권한 없는 사용자

Baixíssimo 사용자 유형에는 연결된 권한이 없으며, 레벨 8을 가진 최저 접근 수준인 Biblioteca가 할당되어 있습니다.

권한 없는 사용자 유형

이 데모의 목적상, 이 역할에 대해 사용자 유형 편집 권한이 비활성화되어 있음을 확인할 수 있습니다. 즉, 이 역할과 연결된 사용자는 사용자 유형을 보거나 생성/편집하거나 삭제할 수 없어야 합니다.

사용자 유형 보기, 편집 및 삭제 권한

Usuário sem Privilégios로 로그인하면, 사용할 수 있는 섹션이 없으므로 권한이 할당되지 않았음을 확인할 수 있습니다.

권한 없는 사용자로 로그인

권한 상승 과정의 첫 번째 단계는 사용자에게 할당된 사용자 유형을 식별하는 것입니다. 애플리케이션에서 렌더링된 HTML 문서를 반환하는 다양한 요청 응답에서 이 정보는 문서의 첫 번째 script 요소 내에 있는 dataLayer 변수에서 찾을 수 있습니다. 예를 들어 애플리케이션의 홈 페이지에 접속하여 이 정보를 확인할 수 있습니다. 이 데모에서는 요청 분석 및 조작을 위해 Burp Suite를 사용합니다.

사용자 데이터 레이어 확인

현재 사용자와 연결된 사용자 유형을 식별한 후, 다음 단계는 데이터베이스에 저장된 해당 식별자를 결정하는 것입니다. 이를 위해 /usuarios/tipos/<cod_tipo_usuario> 엔드포인트를 사용해야 합니다. 사용자 유형 식별자는 숫자이며 순차적이므로, 현재 사용자와 연결된 사용자 유형을 찾을 때까지 저장된 모든 사용자 유형을 열거할 수 있습니다.

예를 들어 식별자 1로 식별되는 사용자 유형은 기본적으로 관리자 사용자 유형인 Administrador입니다.

ID 1 사용자 유형 확인

애플리케이션 응답에서 processes 객체에 사용자 유형과 연결된 권한을 확인할 수 있습니다. 각 특정 섹션은 고유한 숫자 식별자로 식별되며, 해당 섹션에 대한 사용자 유형의 접근 수준은 숫자 0, 1, 2, 또는 3으로 결정됩니다:

  1. 어떤 작업도 허용되지 않음.
  2. 섹션의 정보만 볼 수 있음.
  3. 섹션에서 정보를 보고, 새 레코드를 생성하고, 기존 레코드를 편집할 수 있음.
  4. 섹션에서 정보를 보고, 새 레코드를 생성하고, 기존 레코드를 편집하고 삭제할 수 있음.

관리자 사용자 유형이 모든 섹션에 대해 접근 수준 3을 가지고 있음을 확인할 수 있습니다.

ID 1 사용자 유형 권한 확인

식별자 2를 가진 사용자 유형을 요청하면, 이것이 현재 사용자와 연결된 사용자 유형에 해당함을 알 수 있습니다. 이 사용자 유형은 모든 섹션에 대해 접근 수준 0을 가지고 있습니다.

ID 2 사용자 유형 확인

ID 2 사용자 유형 권한 확인

이 모든 것을 고려하여 권한 상승을 진행할 수 있습니다. 이를 위해 동일한 엔드포인트에 POST 요청을 보내야 하며, 요청 본문에는 현재 사용자와 연결된 사용자 유형의 식별자에 해당하는 사용자 유형 식별자가 포함되어야 합니다. 요청 본문에는 _method, name, level, description, 및 processes 매개변수가 포함되어야 합니다. 모든 필수 값이 즉시 이해되는 것은 아니지만, 이는 오픈소스 프로젝트이므로 코드 검토나 로컬 인스턴스에서의 수동 테스트를 통해 올바른 요청 구조를 쉽게 발견할 수 있습니다.

아래 요청에서는 모든 섹션의 접근 수준을 최대 접근 (3) 으로 수정하고 사용자 유형을 Biblioteca에서 Poli-institucional로 변경합니다 (level 매개변수를 값 1로 설정). 이는 사용자가 생성 시 연결된 기관뿐만 아니라 등록된 모든 기관에 접근할 수 있게 됨을 의미합니다.

ID 2 사용자 유형 권한 수정

이후 홈 페이지를 다시 로드하면, 이전에 권한이 없던 사용자가 이제 애플리케이션 컨텍스트에서 사용 가능한 모든 권한을 임의로 부여받았음을 확인할 수 있습니다.

권한 상승 완료

취약한 코드

취약한 엔드포인트의 라우트는 routes/web.php 파일에서 찾을 수 있습니다.

web.php 파일

이 라우트에서 사용되는 취약한 메서드는 app/Http/Controllers/AccessLevelController.php 파일에서 찾을 수 있습니다. 이러한 메서드는 사용자 유형에 대해 요청된 작업을 실행하기 전에 요청 사용자에 대한 권한 확인을 수행하지 않습니다.

AccessLevelController.php 파일

AccessLevelController.php 파일

영향

이 소프트웨어는 다양한 공공 기관에서 학교 관리 솔루션으로 사용됩니다. 각 인스턴스에는 등록된 사용자와 학생에 대한 신분증 문서 및 의료 기록(질병 정보)과 같은 다양한 유형의 민감한 정보가 잠재적으로 포함되어 있습니다. 낮은 권한의 악의적인 사용자나 공격자가 제어하는 계정이 이 취약점을 악용하는 시나리오에서 이러한 기록의 기밀성, 무결성 및 가용성이 위험에 처하게 됩니다. 프로젝트에 대한 빠른 보안 평가를 통해 이 약점을 발견할 수 있습니다.

도구 다운로드