The School Management – Education & Learning Management Security & Risk Analysis

wordpress.org/plugins/school-management-system

The School Management System is a WordPress plugin to manage school and its entities such as classes, sections, students, ID cards, teachers, staff, f …

1K active installs v5.3 PHP + WP + Updated Dec 12, 2025
educationfees-managementlearning-managementschool-managementstudent-management
99
A · Safe
CVEs total1
Unpatched0
Last CVEApr 19, 2023
Safety Verdict

Is The School Management – Education & Learning Management Safe to Use in 2026?

Generally Safe

Score 99/100

The School Management – Education & Learning Management has a strong security track record. Known vulnerabilities have been patched promptly. It's a solid choice for most WordPress installations.

1 known CVELast CVE: Apr 19, 2023Updated 5mo ago
Risk Assessment

The 'school-management-system' plugin version 5.3 exhibits a mixed security posture. While it demonstrates strong practices in output escaping and a high percentage of SQL queries using prepared statements, there are significant concerns regarding its attack surface and the presence of unsanitized data flows. The large number of unprotected AJAX handlers (98) represents a substantial entry point for attackers, especially when combined with the 10 high-severity taint flows indicating potential for vulnerabilities if user-supplied data is not properly handled before being used in sensitive operations.

The plugin's vulnerability history shows a past high-severity SQL injection vulnerability, which is concerning given the static analysis revealing a high volume of SQL queries. Although there are no currently unpatched CVEs, the pattern of past SQL injection vulnerabilities coupled with the taint analysis results suggests that improper data handling remains a risk. The use of the `unserialize` function, while not directly flagged as a vulnerability in this analysis, is often a source of critical security flaws and warrants careful scrutiny.

In conclusion, the plugin has strengths in preventing cross-site scripting (XSS) and generally secure SQL query practices. However, the massive unprotected AJAX endpoint count and the presence of critical taint flows significantly elevate the risk. The historical SQL injection vulnerability reinforces the need for vigilance in input validation and sanitization, particularly for AJAX endpoints.

Key Concerns

  • 98 unprotected AJAX handlers
  • 10 high severity taint flows
  • 18 dangerous functions (unserialize)
  • Past high severity SQL injection vulnerability
Vulnerabilities
1 published

The School Management – Education & Learning Management Security Vulnerabilities

CVEs by Year

1 CVE in 2023
2023
Patched Has unpatched

Severity Breakdown

High
1

1 total CVE

CVE-2022-47430high · 7.2Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection')

The School Management – Education & Learning Management <= 4.1 - Authenticated (Administrator+) SQL Injection

Apr 19, 2023 Patched in 4.2 (279d)
Version History

The School Management – Education & Learning Management Release Timeline

v5.3Current
v5.2
v5.1
v5.0
v4.9
v4.8
v4.7
v4.6
v4.5
v4.4
v4.3
v4.2
v4.11 CVE
v4.01 CVE
v3.91 CVE
v3.81 CVE
v3.71 CVE
v3.61 CVE
v3.51 CVE
v3.41 CVE
Code Analysis
Analyzed Mar 16, 2026

The School Management – Education & Learning Management Code Analysis

Dangerous Functions
18
Raw SQL Queries
32
569 prepared
Unescaped Output
32
2132 escaped
Nonce Checks
86
Capability Checks
21
File Operations
0
External Requests
0
Bundled Libraries
2

Dangerous Functions Found

unserialize$permissions = unserialize( $permissions );admin\inc\school\staff\general\roles\save.php:34
unserialize$role_permissions = unserialize( $role_permissions );admin\inc\school\staff\general\WLSM_Staff_General.php:1542
unserialize$permissions = unserialize( $permissions );admin\inc\school\staff\general\WLSM_Staff_General.php:2139
unserialize$general_saved_data = unserialize( $general->setting_value );admin\inc\school\staff\general\WLSM_Staff_General.php:3311
unserialize$smtp_saved_data = unserialize( $smtp->setting_value );admin\inc\school\staff\general\WLSM_Staff_General.php:3478
unserialize$staff_role_permissions = unserialize( $role_permissions );admin\inc\school\staff\partials\save_staff.php:64
unserialize$permissions = $user->permissions ? unserialize( $user->permissions ) : array();includes\helpers\WLSM_M_Role.php:30
unserialize$permissions = unserialize( $permissions );includes\helpers\WLSM_M_Role.php:135
unserialize$settings = unserialize( $settings->setting_value );includes\helpers\WLSM_M_Setting.php:11
unserialize$settings = unserialize( $settings->setting_value );includes\helpers\WLSM_M_Setting.php:26
unserialize$settings = unserialize( $settings->setting_value );includes\helpers\WLSM_M_Setting.php:72
unserialize$settings = unserialize( $settings->setting_value );includes\helpers\WLSM_M_Setting.php:145
unserialize$settings = unserialize( $settings->setting_value );includes\helpers\WLSM_M_Setting.php:168
unserialize$settings = unserialize( $settings->setting_value );includes\helpers\WLSM_M_Setting.php:197
unserialize$settings = unserialize( $settings->setting_value );includes\helpers\WLSM_M_Setting.php:220
unserialize$settings = unserialize( $settings->setting_value );includes\helpers\WLSM_M_Setting.php:243
unserialize$settings = unserialize( $settings->setting_value );includes\helpers\WLSM_M_Setting.php:266
unserialize$settings = unserialize( $settings->setting_value );includes\helpers\WLSM_M_Setting.php:289

Bundled Libraries

DataTablesStripe PHP

SQL Query Safety

95% prepared601 total queries

Output Escaping

99% escaped2164 total outputs
Data Flows · Security
11 unsanitized

Data Flow Analysis

25 flows11 with unsanitized paths
fetch_roles (admin\inc\school\staff\general\WLSM_Staff_General.php:1823)
Source (user input) Sink (dangerous op) Sanitizer Transform Unsanitized Sanitized
Attack Surface
98 unprotected

The School Management – Education & Learning Management Attack Surface

Entry Points103
Unprotected98

AJAX Handlers 98

authwp_ajax_wlsm-save-schooladmin\admin.php:21
authwp_ajax_wlsm-delete-schooladmin\admin.php:22
authwp_ajax_wlsm-fetch-school-classesadmin\admin.php:23
authwp_ajax_wlsm-delete-school-classadmin\admin.php:24
authwp_ajax_wlsm-get-keyword-classesadmin\admin.php:25
authwp_ajax_wlsm-assign-classesadmin\admin.php:26
authwp_ajax_wlsm-fetch-school-adminsadmin\admin.php:27
authwp_ajax_wlsm-assign-adminadmin\admin.php:28
authwp_ajax_wlsm-delete-school-adminadmin\admin.php:29
authwp_ajax_wlsm-edit-school-adminadmin\admin.php:30
authwp_ajax_wlsm-set-schooladmin\admin.php:31
authwp_ajax_wlsm-fetch-classesadmin\admin.php:34
authwp_ajax_wlsm-save-classadmin\admin.php:35
authwp_ajax_wlsm-delete-classadmin\admin.php:36
authwp_ajax_wlsm-fetch-sessionsadmin\admin.php:39
authwp_ajax_wlsm-save-sessionadmin\admin.php:40
authwp_ajax_wlsm-delete-sessionadmin\admin.php:41
authwp_ajax_wlsm-save-general-settingsadmin\admin.php:44
authwp_ajax_wlsm-reset-pluginadmin\admin.php:45
authwp_ajax_wlsm-save-uninstall-settingsadmin\admin.php:46
authwp_ajax_wlsm-staff-set-schooladmin\admin.php:49
authwp_ajax_wlsm-staff-set-sessionadmin\admin.php:52
authwp_ajax_wlsm-fetch-staff-classesadmin\admin.php:55
authwp_ajax_wlsm-fetch-class-sectionsadmin\admin.php:56
authwp_ajax_wlsm-save-sectionadmin\admin.php:57
authwp_ajax_wlsm-delete-sectionadmin\admin.php:58
authwp_ajax_wlsm-add-admissionadmin\admin.php:61
authwp_ajax_wlsm-edit-studentadmin\admin.php:64
authwp_ajax_wlsm-get-studentsadmin\admin.php:65
authwp_ajax_wlsm-delete-studentadmin\admin.php:66
authwp_ajax_wlsm-view-session-recordsadmin\admin.php:67
authwp_ajax_wlsm-print-id-cardadmin\admin.php:68
authwp_ajax_wlsm-print-bulk-id-cardsadmin\admin.php:69
authwp_ajax_wlsm-manage-promotionadmin\admin.php:72
authwp_ajax_wlsm-promote-studentadmin\admin.php:73
authwp_ajax_wlsm-fetch-rolesadmin\admin.php:76
authwp_ajax_wlsm-save-roleadmin\admin.php:77
authwp_ajax_wlsm-delete-roleadmin\admin.php:78
authwp_ajax_wlsm-get-role-permissionsadmin\admin.php:79
authwp_ajax_wlsm-fetch-inquiriesadmin\admin.php:82
authwp_ajax_wlsm-save-inquiryadmin\admin.php:83
authwp_ajax_wlsm-delete-inquiryadmin\admin.php:84
authwp_ajax_wlsm-view-inquiry-messageadmin\admin.php:85
authwp_ajax_wlsm-fetch-noticesadmin\admin.php:88
authwp_ajax_wlsm-save-noticeadmin\admin.php:89
authwp_ajax_wlsm-delete-noticeadmin\admin.php:90
authwp_ajax_wlsm-fetch-subjectsadmin\admin.php:93
authwp_ajax_wlsm-save-subjectadmin\admin.php:94
authwp_ajax_wlsm-delete-subjectadmin\admin.php:95
authwp_ajax_wlsm-fetch-subject-adminsadmin\admin.php:96
authwp_ajax_wlsm-delete-subject-adminadmin\admin.php:97
authwp_ajax_wlsm-get-keyword-adminsadmin\admin.php:98
authwp_ajax_wlsm-assign-subject-adminsadmin\admin.php:99
authwp_ajax_wlsm-fetch-staff-employeeadmin\admin.php:102
authwp_ajax_wlsm-save-employeeadmin\admin.php:103
authwp_ajax_wlsm-delete-employeeadmin\admin.php:104
authwp_ajax_wlsm-save-school-general-settingsadmin\admin.php:107
authwp_ajax_wlsm-save-school-email-carrier-settingsadmin\admin.php:108
authwp_ajax_wlsm-save-school-email-templates-settingsadmin\admin.php:109
authwp_ajax_wlsm-save-school-payment-method-settingsadmin\admin.php:110
authwp_ajax_wlsm-save-school-registration-settingsadmin\admin.php:111
authwp_ajax_wlsm-get-invoicesadmin\admin.php:114
authwp_ajax_wlsm-save-invoiceadmin\admin.php:115
authwp_ajax_wlsm-delete-invoiceadmin\admin.php:116
authwp_ajax_wlsm-print-invoiceadmin\admin.php:117
authwp_ajax_wlsm-print-invoice-fee-structureadmin\admin.php:118
authwp_ajax_wlsm-fetch-invoice-paymentsadmin\admin.php:121
authwp_ajax_wlsm-collect-invoice-paymentadmin\admin.php:122
authwp_ajax_wlsm-delete-invoice-paymentadmin\admin.php:123
authwp_ajax_wlsm-print-invoice-paymentadmin\admin.php:124
authwp_ajax_wlsm-fetch-paymentsadmin\admin.php:127
authwp_ajax_wlsm-delete-paymentadmin\admin.php:128
authwp_ajax_wlsm-view-payment-noteadmin\admin.php:129
authwp_ajax_wlsm-fetch-stats-paymentsadmin\admin.php:132
authwp_ajax_wlsm-get-class-sectionsadmin\admin.php:135
authwp_ajax_wlsm-get-section-studentsadmin\admin.php:136
authwp_ajax_wlsm-get-school-classesadmin\admin.php:137
authwp_ajax_wlsm-get-school-class-sectionsadmin\admin.php:138
authwp_ajax_wlsm-p-get-students-with-pending-invoicespublic\public.php:41
noprivwp_ajax_wlsm-p-get-students-with-pending-invoicespublic\public.php:42
authwp_ajax_wlsm-p-get-student-pending-invoicespublic\public.php:45
noprivwp_ajax_wlsm-p-get-student-pending-invoicespublic\public.php:46
authwp_ajax_wlsm-p-get-student-pending-invoicepublic\public.php:49
noprivwp_ajax_wlsm-p-get-student-pending-invoicepublic\public.php:50
authwp_ajax_wlsm-p-pay-invoice-amountpublic\public.php:53
noprivwp_ajax_wlsm-p-pay-invoice-amountpublic\public.php:54
authwp_ajax_wlsm-p-submit-inquirypublic\public.php:57
noprivwp_ajax_wlsm-p-submit-inquirypublic\public.php:58
authwp_ajax_wlsm-p-submit-registrationpublic\public.php:61
noprivwp_ajax_wlsm-p-submit-registrationpublic\public.php:62
authwp_ajax_wlsm-p-pay-with-stripepublic\public.php:65
noprivwp_ajax_wlsm-p-pay-with-stripepublic\public.php:66
authwp_ajax_wlsm-p-get-school-classespublic\public.php:69
noprivwp_ajax_wlsm-p-get-school-classespublic\public.php:70
authwp_ajax_wlsm-p-get-class-sectionspublic\public.php:71
noprivwp_ajax_wlsm-p-get-class-sectionspublic\public.php:72
authwp_ajax_wlsm-p-st-print-id-cardpublic\public.php:75
authwp_ajax_wlsm-p-st-print-invoice-paymentpublic\public.php:78

Shortcodes 5

[school_management_account] public\public.php:25
[school_management_inquiry] public\public.php:26
[school_management_registration] public\public.php:27
[school_management_fees] public\public.php:28
[school_management_noticeboard] public\public.php:29
WordPress Hooks 8
actionadmin_menuadmin\admin.php:18
actionplugins_loadedpublic\public.php:19
actionwidgets_initpublic\public.php:22
actionwp_enqueue_scriptspublic\public.php:32
actionwlsm_notify_for_student_admissionpublic\public.php:35
actionwlsm_notify_for_invoice_generatedpublic\public.php:36
actionwlsm_notify_for_online_fee_submissionpublic\public.php:37
actionwlsm_notify_for_offline_fee_submissionpublic\public.php:38

Scheduled Events 8

wlsm_notify_for_invoice_generated
wlsm_notify_for_invoice_generated
wlsm_notify_for_offline_fee_submission
wlsm_notify_for_offline_fee_submission
wlsm_notify_for_student_admission
wlsm_notify_for_online_fee_submission
wlsm_notify_for_student_registration_to_student
wlsm_notify_for_student_registration_to_admin
Maintenance & Trust

The School Management – Education & Learning Management Maintenance & Trust

Maintenance Signals

WordPress version tested6.9.4
Last updatedDec 12, 2025
PHP min version
Downloads114K

Community Trust

Rating90/100
Number of ratings15
Active installs1K
Developer Profile

The School Management – Education & Learning Management Developer Profile

Weblizar - WordPress Themes & Plugin

26 plugins · 56K total installs

76
trust score
Avg Security Score
96/100
Avg Patch Time
952 days
View full developer profile
Detection Fingerprints

How We Detect The School Management – Education & Learning Management

Patterns used to identify this plugin on WordPress sites during automated security audits and web crawling.

Asset Fingerprints

Asset Paths
/wp-content/plugins/school-management-system/admin/assets/img/logo.png/wp-content/plugins/school-management-system/admin/assets/css/bootstrap.min.css/wp-content/plugins/school-management-system/admin/assets/css/bootstrap-select.min.css/wp-content/plugins/school-management-system/admin/assets/css/owl.carousel.min.css/wp-content/plugins/school-management-system/admin/assets/css/font-awesome.min.css/wp-content/plugins/school-management-system/admin/assets/css/jquery.dataTables.min.css/wp-content/plugins/school-management-system/admin/assets/css/responsive.dataTables.min.css/wp-content/plugins/school-management-system/admin/assets/css/summernote-bs4.css+25 more
Script Paths
/wp-content/plugins/school-management-system/admin/assets/js/jquery-3.5.1.min.js/wp-content/plugins/school-management-system/admin/assets/js/popper.min.js/wp-content/plugins/school-management-system/admin/assets/js/bootstrap.min.js/wp-content/plugins/school-management-system/admin/assets/js/bootstrap-select.min.js/wp-content/plugins/school-management-system/admin/assets/js/owl.carousel.min.js/wp-content/plugins/school-management-system/admin/assets/js/jquery.dataTables.min.js+10 more
Version Parameters
school-management-system/admin/assets/css/bootstrap.min.css?ver=school-management-system/admin/assets/css/bootstrap-select.min.css?ver=school-management-system/admin/assets/css/owl.carousel.min.css?ver=school-management-system/admin/assets/css/font-awesome.min.css?ver=school-management-system/admin/assets/css/jquery.dataTables.min.css?ver=school-management-system/admin/assets/css/responsive.dataTables.min.css?ver=school-management-system/admin/assets/css/summernote-bs4.css?ver=school-management-system/admin/assets/css/daterangepicker.css?ver=school-management-system/admin/assets/css/select2.min.css?ver=school-management-system/admin/assets/css/main.css?ver=school-management-system/admin/assets/css/custom.css?ver=school-management-system/admin/assets/css/colorpicker.css?ver=school-management-system/admin/assets/css/loader.css?ver=school-management-system/admin/assets/css/animate.css?ver=school-management-system/admin/assets/js/jquery-3.5.1.min.js?ver=school-management-system/admin/assets/js/popper.min.js?ver=school-management-system/admin/assets/js/bootstrap.min.js?ver=school-management-system/admin/assets/js/bootstrap-select.min.js?ver=school-management-system/admin/assets/js/owl.carousel.min.js?ver=school-management-system/admin/assets/js/jquery.dataTables.min.js?ver=school-management-system/admin/assets/js/dataTables.responsive.min.js?ver=school-management-system/admin/assets/js/summernote-bs4.min.js?ver=school-management-system/admin/assets/js/daterangepicker.js?ver=school-management-system/admin/assets/js/select2.full.min.js?ver=school-management-system/admin/assets/js/main.js?ver=school-management-system/admin/assets/js/chart.min.js?ver=school-management-system/admin/assets/js/colorpicker.js?ver=school-management-system/admin/assets/js/bootbox.min.js?ver=school-management-system/admin/assets/js/custom.js?ver=school-management-system/public/assets/css/custom.css?ver=school-management-system/public/assets/css/responsive.css?ver=school-management-system/public/assets/js/custom.js?ver=

HTML / DOM Fingerprints

CSS Classes
wlsm-logowlsm-main-menuwlsm-page-titlewlsm-content-boxwlsm-form-groupwlsm-input-groupwlsm-btn-primarywlsm-settings-form+3 more
HTML Comments
<!-- School Management System Starts --><!-- School Management System Ends --><!-- Add New Class --><!-- Edit Class -->+5 more
Data Attributes
data-target="#wlsm-modal"data-toggle="modal"data-dismiss="modal"
JS Globals
WLSM_ADMIN_AJAX_URLWLSM_NONCEWLSM_SETTINGSWLSM_DATA
REST Endpoints
/wp-json/wlsm/v1/get_students/wp-json/wlsm/v1/get_teachers/wp-json/wlsm/v1/get_classes
Shortcode Output
[wlsm_student_registration][wlsm_teacher_login][wlsm_parent_login]
FAQ

Frequently Asked Questions about The School Management – Education & Learning Management