Code School Badges Security & Risk Analysis

wordpress.org/plugins/code-school-badges

Provides both widgets and shortcodes to help display Code School profile badges on your website.

10 active installs v1.0.2 PHP + WP 3.0.1+ Updated Sep 23, 2014
badgescode-schoolcodeschoolprofileshortcode
85
A · Safe
CVEs total0
Unpatched0
Last CVENever
Safety Verdict

Is Code School Badges Safe to Use in 2026?

Generally Safe

Score 85/100

Code School Badges has no known CVEs and is actively maintained. It's a solid choice for most WordPress installations.

No known CVEs Updated 11yr ago
Risk Assessment

The code-school-badges plugin v1.0.2 presents a mixed security posture. On the positive side, it demonstrates good practices by not utilizing dangerous functions, performing all SQL queries with prepared statements, and having no recorded historical vulnerabilities. The plugin also avoids bundled libraries and making external HTTP requests, which can sometimes introduce security risks.

However, significant concerns arise from the static analysis. The plugin exposes a single AJAX handler that lacks authentication checks, creating a direct attack vector. Furthermore, a substantial portion of its output (89%) is not properly escaped, indicating a high risk of Cross-Site Scripting (XSS) vulnerabilities. While taint analysis did not reveal critical or high severity issues, the presence of two flows with unsanitized paths, even if of lower severity, coupled with the unescaped output, suggests potential for malicious data injection or manipulation.

In conclusion, the lack of historical vulnerabilities is a positive indicator, but the current code analysis highlights critical weaknesses, particularly the unprotected AJAX endpoint and pervasive output escaping deficiencies. These issues present a clear and present danger to any WordPress site using this plugin, outweighing the positive aspects of its code quality in other areas.

Key Concerns

  • AJAX handler without authentication check
  • High percentage of unescaped output
  • Flows with unsanitized paths detected
Vulnerabilities
None known

Code School Badges Security Vulnerabilities

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

Code School Badges Code Analysis

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

Output Escaping

11% escaped55 total outputs
Data Flows
2 unsanitized

Data Flow Analysis

2 flows2 with unsanitized paths
wpcodeschool_badges_options_page (wpcodeschool-badges.php:44)
Source (user input) Sink (dangerous op) Sanitizer Transform Unsanitized Sanitized
Attack Surface
1 unprotected

Code School Badges Attack Surface

Entry Points1
Unprotected1

AJAX Handlers 1

authwp_ajax_wpcodeschool_badges_recfresh_profilewpcodeschool-badges.php:210
WordPress Hooks 5
actionadmin_menuwpcodeschool-badges.php:37
actionwidgets_initwpcodeschool-badges.php:138
actionwp_headwpcodeschool-badges.php:227
actionadmin_headwpcodeschool-badges.php:236
actionwp_enqueue_scriptswpcodeschool-badges.php:242
Maintenance & Trust

Code School Badges Maintenance & Trust

Maintenance Signals

WordPress version tested4.0.38
Last updatedSep 23, 2014
PHP min version
Downloads2K

Community Trust

Rating0/100
Number of ratings0
Active installs10
Developer Profile

Code School Badges Developer Profile

mcnitt

1 plugin · 10 total installs

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

How We Detect Code School Badges

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

Asset Fingerprints

Asset Paths
/wp-content/plugins/wpcodeschool-badges/inc/wpcodeschool-badges.css/wp-content/plugins/wpcodeschool-badges/wpcodeschool-badges.js
Script Paths
/wp-content/plugins/wpcodeschool-badges/wpcodeschool-badges.js

HTML / DOM Fingerprints

HTML Comments
<!-- Markup Based on: https://github.com/bueltge/WordPress -->
Data Attributes
name="wpcodeschool_username"name="wpcodeschool_display_sub_badges"id="wpcodeschool_username"id="wpcodeschool_display_sub_badges"
JS Globals
ajaxurl
Shortcode Output
[wpcodeschool_badges][wpcodeschool_badges num_badges="3"][wpcodeschool_badges badge_size="120px"][wpcodeschool_badges num_badges="3" badge_size="120px"]
FAQ

Frequently Asked Questions about Code School Badges