
HLS Player Security & Risk Analysis
wordpress.org/plugins/hls-playerHLS Player is a lightweight HTTP Live Streaming player for WordPress, using video.js for easy embedding HLS videos into posts and pages.
Is HLS Player Safe to Use in 2026?
Generally Safe
Score 91/100HLS Player has a strong security track record. Known vulnerabilities have been patched promptly.
The hls-player plugin version 1.0.11 demonstrates a generally strong security posture based on the static analysis. The absence of dangerous functions, the exclusive use of prepared statements for SQL queries, and proper output escaping across all identified outputs are significant positive indicators. Furthermore, the lack of external HTTP requests and file operations reduces the potential attack surface. However, the analysis reveals a concerning lack of capability checks and nonce checks, particularly for its single shortcode entry point. This creates a potential avenue for privilege escalation or unauthorized execution if the shortcode is not properly secured by the calling context.
The vulnerability history shows one known CVE, which is marked as patched. While this is positive, the fact that it was a Cross-site Scripting (XSS) vulnerability, and the timing (2024-11-27), suggests that the plugin has had past security flaws. The absence of critical or high severity vulnerabilities in the history is encouraging, but the presence of a medium severity XSS highlights the importance of ongoing vigilance and robust input validation, especially given the identified lack of specific security checks in the code.
In conclusion, while the plugin employs good practices like prepared statements and proper output escaping, the lack of explicit nonce and capability checks on its shortcode represents a notable weakness. This, combined with the past XSS vulnerability, warrants careful consideration. Users should ensure that the shortcode is only used in contexts where its input can be trusted and that appropriate WordPress security best practices are followed to mitigate any residual risk.
Key Concerns
- Missing capability checks on shortcode
- Missing nonce checks on shortcode
- Past medium severity XSS vulnerability
HLS Player Security Vulnerabilities
CVEs by Year
Severity Breakdown
1 total CVE
HLS Player <= 1.0.10 - Authenticated (Contributor+) Stored Cross-Site Scripting
HLS Player Code Analysis
Output Escaping
HLS Player Attack Surface
Shortcodes 1
WordPress Hooks 4
Maintenance & Trust
HLS Player Maintenance & Trust
Maintenance Signals
Community Trust
HLS Player Alternatives
Castio.live – WordPress Live Streaming (HLS) + Real‑Time Chat
castio-live
WordPress live streaming via browser-based HLS. Go live from the admin—no OBS, no RTMP, no external services. Auto viewer page with HLS player and bui …
ZW Player Video Embed
zw-player-video-embed
Professional HTML5 video player supporting HLS, DASH, FLV, MP4, local file with screenshot, recording, PIP and live streaming features.
Jetpack VideoPress
jetpack-videopress
The finest video hosting for WordPress. Drag and drop videos through the WordPress editor and keep the focus on your content, not the ads.
Bradmax Player
bradmax-player
Embed video stream easily in WordPress using Bradmax Player. Use responsive HTML5 video player for playing HLS, MPEG-DASH, MSS streams.
PlayerJS
playerjs
The official plugin for PlayerJS.com - video & audio player builder. Make an awesome player for your website for free.
HLS Player Developer Profile
1 plugin · 600 total installs
How We Detect HLS Player
Patterns used to identify this plugin on WordPress sites during automated security audits and web crawling.
Asset Fingerprints
/wp-content/plugins/hls-player/public/js/video.min.js/wp-content/plugins/hls-player/public/css/video-js.min.css/wp-content/plugins/hls-player/public/js/hls-player.min.jspublic/js/video.min.jspublic/css/video-js.min.csspublic/js/hls-player.min.jshls-player/public/js/video.min.js?ver=hls-player/public/css/video-js.min.css?ver=hls-player/public/js/hls-player.min.js?ver=HTML / DOM Fingerprints
vjs-fluiddata-setuphlsPlayerData_<video id="class="video-js vjs-fluid"controlspreload="auto"