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
权限提升漏洞分析漏洞利用Web应用程序漏洞利用Web安全渗透测试
GitHubm3m0o/portabilis-ieducar-user-type-privilege-escalation

portabilis-ieducar-user-type-privilege-escalation

CVE-2025-11554 中所述漏洞的利用概念验证,该漏洞涉及 i-Educar 软件中通过向用户类型更改端点发送任意请求而实现权限提升的可能性。

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享
查看仓库
1411个月前尚未审核

Portabilis i-Educar >= 2.1.13 通过任意请求用户类型变更端点实现权限提升

针对 CVE-2025-11554 中所述漏洞的利用概念验证,该漏洞涉及 i-Educar 软件中通过任意请求用户类型端点实现权限提升的可能性。

描述

没有更改用户类型所需权限的用户,可以通过向负责此操作的端点发送任意请求来修改已注册用户类型的权限。这允许低权限用户通过向其关联的用户类型授予最大权限来提升自身权限,从而危及应用程序的所有部分。

概念验证

为演示该漏洞,我们将模拟一条可在真实利用场景中使用的攻击路径。首先,我们有一个用户 Usuário sem Privilégios,其关联的用户类型为 Baixíssimo。

无权限用户

Baixíssimo 用户类型没有关联任何权限,并被分配了最低访问级别 Biblioteca,其级别为 8。

无权限用户类型

出于本次演示的目的,我们可以看到,编辑用户类型的权限对此角色是禁用的,这意味着与其关联的用户不应能够查看、创建/编辑或删除用户类型。

查看、编辑和删除用户类型的用户类型权限

以 Usuário sem Privilégios 身份登录后,我们可以确认没有分配任何权限,因为对他来说没有任何可用部分。

以无权限用户身份登录

权限提升过程的第一步是识别用户被分配的用户类型。在应用程序返回的渲染 HTML 文档的各种请求响应中,此信息可以在文档中第一个 script 元素内的 dataLayer 变量中找到。例如,我们可以通过访问应用程序的主页来验证此信息。在本次演示中,将使用 Burp Suite 进行请求分析和操作。

验证用户数据层

识别出与当前用户关联的用户类型后,下一步是确定其在数据库中存储的标识符。为此,应使用端点 /usuarios/tipos/<cod_tipo_usuario>。由于用户类型标识符是数字且连续的,因此可以枚举所有存储的用户类型,直到找到与当前用户关联的那个。

例如,标识符为 1 的用户类型默认是管理用户类型 Administrador。

验证标识符为 1 的用户类型

在应用程序的响应中,我们可以在 processes 对象中看到与该用户类型关联的权限。每个特定部分由唯一的数字标识符标识,用户类型对该部分的访问级别由数字 0、1、2 或 3 决定:

  1. 不允许任何操作。
  2. 只能查看该部分中的信息。
  3. 可以查看、创建新记录以及编辑该部分中的现有记录。
  4. 可以查看、创建新记录、编辑以及删除该部分中的现有记录。

我们可以观察到,管理用户类型对所有部分都具有访问级别 3。

验证标识符为 1 的用户类型的权限

当请求标识符为 2 的用户类型时,我们看到它对应于与当前用户关联的用户类型。该用户类型对所有部分的访问级别均为 0。

验证标识符为 2 的用户类型

验证标识符为 2 的用户类型的权限

考虑到以上所有信息,我们可以继续进行权限提升。为此,必须向同一端点发送一个 POST 请求,其中包含与当前用户关联的用户类型标识符相对应的用户类型标识符。请求体应包含参数 _method、name、level、description 和 processes。并非所有必需值都能立即理解,但由于这是一个开源项目,请求的正确结构可以通过代码审查或在本地实例上进行手动测试轻松发现。

在下面的请求中,我们将所有部分的访问级别修改为最大访问权限 (3),并将用户类型从 Biblioteca 更改为 Poli-institucional(level 参数设置为值 1)。这意味着该用户将获得对所有已注册机构的访问权限,而不仅仅是其创建时关联的那个机构。

修改标识符为 2 的用户类型的权限

之后,重新加载主页,我们可以确认之前无权限的用户现在拥有应用程序上下文中的所有可用权限,这些权限是被任意授予的。

权限提升完成

易受攻击的代码

易受攻击端点的路由可以在 routes/web.php 文件中找到。

web.php 文件

这些路由使用的易受攻击方法可以在 app/Http/Controllers/AccessLevelController.php 文件中找到。这些方法在执行对用户类型的请求操作之前,不会对请求用户进行权限检查。

AccessLevelController.php 文件

AccessLevelController.php 文件

影响

该软件被用作多个公共机构的学校管理解决方案。每个实例可能包含各种关于已注册用户和学生的敏感信息,例如身份证明文件和医疗记录(健康状况)。在低权限恶意用户或攻击者控制的账户利用此漏洞的场景中,这些记录的机密性、完整性和可用性将面临风险。对该项目进行快速安全评估即可发现此弱点。

下载工具