WordPress Plugin WPSchoolPress 2.1.16 - 'Multiple' 跨站脚本 (XSS)

2021-12-17 15:22:26 浏览数 (2)

供应​​商主页:https://wpschoolpress.com/

软件链接:https://wpschoolpress.com/free-download/

版本:最高 2.1.17(不包括在内)

测试:Ubuntu 20.04 over WordPress 5.8 和 apache2

CVE:CVE-2021-24664

该插件使用名为 sanitize_text_field() 的 wordpress 内置函数清理某些字段,但在输出属性之前没有正确转义它们,导致存储跨站点脚本问题。 函数 wp_sanitize_text_field() 转义 < 和 > 但不会转义像 " 这样的字符,允许攻击者破坏 HTML 输入标签并注入任意 javascript。

概念验证:

作为管理员

- 添加新的教师出勤 (/wp-admin/admin.php?page=sch-teacherattendance),勾选缺席框并将以下有效负载放入原因:“style=animation-name:rotation onanimationstart=alert(/XSS /)// 通过单击“添加”按钮添加其他教师出勤时将触发 XSS - 添加一个新的学生出勤 (/wp-admin/admin.php?page=sch-attendance),勾选缺席框并将以下有效负载放入原因:" style=animation-name:rotation onanimationstart=alert(/XSS /)// 通过单击“添加/更新”按钮添加另一个出勤时将触发 XSS

- 添加一个新的主题标记字段 (/wp-admin/admin.php?page=sch-settings&sc=subField) 并将以下有效负载放入“字段”:“ autofocus onfocus=alert(/XSS/)// 编辑创建的主题标记时会触发 XSS(即 /admin.php?page=sch-settings&sc=subField&ac=edit&sid=3)

- 创建一个新的主题 (/wp-admin/admin.php?page=sch-subject),在主题名称字段中包含以下有效负载:“ autofocus onfocus=alert(/XSS/)// 编辑主题时会触发 XSS

- 在考试名称字段中使用以下有效负载创建一个新考试 (/wp-admin/admin.php?page=sch-exams):“ autofocus onfocus=alert(/XSS/)// 编辑 Exam=20 时会触发 XSS

请注意,其中一些 XSS 问题可以由教师(中等特权用户)执行,但由于 wordpress 使用 HTTPonly cookie,因此不可能窃取 cookie。

0 人点赞