Unenroll For Learndash Security & Risk Analysis

wordpress.org/plugins/unenroll-for-learndash

Unenroll For Learndash is the best way to allow students to unenroll from courses.

50 active installs v1.0.1 PHP 5.6+ WP 5.0+ Updated Feb 2, 2022
educationelearninglearndashlearninglms
85
A · Safe
CVEs total0
Unpatched0
Last CVENever
Safety Verdict

Is Unenroll For Learndash Safe to Use in 2026?

Generally Safe

Score 85/100

Unenroll For Learndash has no known CVEs and is actively maintained. It's a solid choice for most WordPress installations.

No known CVEs Updated 4yr ago
Risk Assessment

The "unenroll-for-learndash" plugin, version 1.0.1, exhibits a mixed security posture. On the positive side, it has a minimal attack surface, no recorded vulnerabilities in its history, and the vast majority of its output is properly escaped. The code analysis also reveals no critical or high severity taint flows, a clean record of no known CVEs, and no dangerous functions or file operations, all of which are strong indicators of good security practices. However, a significant concern arises from the presence of one AJAX handler that lacks authentication checks. This unprotected entry point represents a direct vulnerability that could be exploited by unauthenticated users to trigger actions within the plugin, potentially leading to unintended consequences or privilege escalation if the AJAX handler performs sensitive operations.

Key Concerns

  • Unprotected AJAX handler detected
  • Raw SQL query without prepared statements
  • Missing capability checks on AJAX handler
Vulnerabilities
None known

Unenroll For Learndash Security Vulnerabilities

No known vulnerabilities — this is a good sign.
Code Analysis
Analyzed Mar 16, 2026

Unenroll For Learndash Code Analysis

Dangerous Functions
0
Raw SQL Queries
1
0 prepared
Unescaped Output
1
32 escaped
Nonce Checks
1
Capability Checks
0
File Operations
0
External Requests
0
Bundled Libraries
0

SQL Query Safety

0% prepared1 total queries

Output Escaping

97% escaped33 total outputs
Data Flows
All sanitized

Data Flow Analysis

1 flows
<functions> (includes\functions.php:0)
Source (user input) Sink (dangerous op) Sanitizer Transform Unsanitized Sanitized
Attack Surface
1 unprotected

Unenroll For Learndash Attack Surface

Entry Points1
Unprotected1

AJAX Handlers 1

authwp_ajax_trun_listen_unenroll_from_courselearndash-unenroll.php:104
WordPress Hooks 7
actionadmin_menuadmin\trun-settings.php:137
actionadmin_initadmin\trun-settings.php:146
actioninitlearndash-unenroll.php:24
actionadmin_enqueue_scriptslearndash-unenroll.php:38
actionwp_enqueue_scriptslearndash-unenroll.php:100
filterthe_contentlearndash-unenroll.php:110
filterlearndash_course_grid_html_outputlearndash-unenroll.php:119
Maintenance & Trust

Unenroll For Learndash Maintenance & Trust

Maintenance Signals

WordPress version tested5.8.13
Last updatedFeb 2, 2022
PHP min version5.6
Downloads2K

Community Trust

Rating0/100
Number of ratings0
Active installs50
Developer Profile

Unenroll For Learndash Developer Profile

Luis Rock

11 plugins · 1K total installs

84
trust score
Avg Security Score
86/100
Avg Patch Time
30 days
View full developer profile
Detection Fingerprints

How We Detect Unenroll For Learndash

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

Asset Fingerprints

Asset Paths
/wp-content/plugins/unenroll-for-learndash/assets/css/trun-admin.css/wp-content/plugins/unenroll-for-learndash/assets/css/trun.css/wp-content/plugins/unenroll-for-learndash/assets/sweetalert2/sweetalert2.min.css/wp-content/plugins/unenroll-for-learndash/assets/js/trun.js/wp-content/plugins/unenroll-for-learndash/assets/sweetalert2/sweetalert2.min.js
Script Paths
/wp-content/plugins/unenroll-for-learndash/assets/js/trun.js/wp-content/plugins/unenroll-for-learndash/assets/sweetalert2/sweetalert2.min.js
Version Parameters
unenroll-for-learndash/assets/js/trun.js?ver=1.0.0

HTML / DOM Fingerprints

CSS Classes
trun-unenroll-formtrun-unenroll-single-coursetrun-unenroll-submit-input-single-course
Data Attributes
data-course-idid="trun-form-unenroll-name="trun_actionid="trun_action_name="open_courseid="open_course_+3 more
JS Globals
trun_js_objectTRUN_UNENROLL_TEXTTRUN_REMOVE_FROM_GROUPconfirmationAlertTitleconfirmationAlertTextconfirmationAlertYesButton+17 more
REST Endpoints
/wp-json/learndash-unenroll/v1/unenroll
FAQ

Frequently Asked Questions about Unenroll For Learndash