OneSignal – Web Push Notifications Security & Risk Analysis

wordpress.org/plugins/onesignal-free-web-push-notifications

Increase engagement and drive more repeat traffic to your WordPress site with push notifications. Now a WordPress VIP Gold Partner.

70K active installs v3.8.1 PHP + WP 3.8+ Updated Apr 7, 2026
chrome-pushdesktop-notificationsmobile-notificationspush-notificationpush-notifications
97
A · Safe
CVEs total3
Unpatched0
Last CVEApr 15, 2026
Safety Verdict

Is OneSignal – Web Push Notifications Safe to Use in 2026?

Generally Safe

Score 97/100

OneSignal – Web Push Notifications has a strong security track record. Known vulnerabilities have been patched promptly. It's a solid choice for most WordPress installations.

3 known CVEsLast CVE: Apr 15, 2026Updated 1mo ago
Risk Assessment

The onesignal-free-web-push-notifications plugin version 3.8.0 presents a mixed security posture. On the positive side, the plugin demonstrates good practices in several areas, including 100% of SQL queries using prepared statements, a high percentage of properly escaped output (92%), and robust nonce and capability checks (8 and 6 respectively). It also has no known bundled libraries or critical/high severity taint flows, which are positive indicators of secure coding. However, significant concerns arise from the attack surface. There is one identified AJAX handler that lacks authentication checks, presenting a direct entry point for potential unauthorized actions or information disclosure. The plugin's history of medium severity vulnerabilities, particularly related to Missing Authorization and Cross-site Scripting, suggests a recurring pattern of security weaknesses that need careful attention.

The presence of an unprotected AJAX handler is a critical finding from the static analysis, as it bypasses WordPress's built-in security mechanisms. While taint analysis shows no critical or high severity issues currently, the past vulnerabilities highlight potential blind spots. The fact that there are no currently unpatched CVEs is a positive sign, but the historical trend of medium severity issues, especially those involving authorization and XSS, warrants a cautious approach. The plugin's strengths in prepared SQL statements and output escaping are commendable, but they are overshadowed by the direct unauthenticated entry point and the historical vulnerability patterns.

Key Concerns

  • Unprotected AJAX handler
  • 2 medium severity vulnerabilities in history
  • Past XSS and Missing Authorization vulnerabilities
Vulnerabilities
3 published

OneSignal – Web Push Notifications Security Vulnerabilities

CVEs by Year

1 CVE in 2019
2019
1 CVE in 2025
2025
1 CVE in 2026
2026
Patched Has unpatched

Severity Breakdown

Medium
2
Low
1

3 total CVEs

CVE-2026-3155low · 3.1Missing Authorization

OneSignal – Web Push Notifications <= 3.8.0 - Missing Authorization to Authenticated (Subscriber+) Post Meta Deletion via 'post_id'

Apr 15, 2026 Patched in 3.8.1 (1d)
CVE-2025-13950medium · 5.3Missing Authorization

OneSignal – Web Push Notifications <= 3.6.1 - Missing Authorization to Unauthenticated Plugin Settings Update

Dec 15, 2025 Patched in 3.6.2 (1d)
CVE-2019-15827medium · 6.4Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

OneSignal Web Push Notifications <=1.17.7 - Stored Cross-Site Scripting

Jul 18, 2019 Patched in 1.17.8 (1650d)
Version History

OneSignal – Web Push Notifications Release Timeline

Code Analysis
Analyzed Mar 16, 2026

OneSignal – Web Push Notifications Code Analysis

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

Output Escaping

92% escaped249 total outputs
Attack Surface
1 unprotected

OneSignal – Web Push Notifications Attack Surface

Entry Points1
Unprotected1

AJAX Handlers 1

authwp_ajax_has_metadatav2\onesignal-admin.php:25
WordPress Hooks 34
actioninitonesignal.php:65
actioninitonesignal.php:66
actionadmin_noticesonesignal.php:67
actionadmin_initv2\complete-migration.php:21
actionadmin_initv2\configuration-export.php:58
actionadmin_enqueue_scriptsv2\onesignal-admin.php:14
actionadmin_menuv2\onesignal-admin.php:135
actionadmin_initv2\onesignal-admin.php:138
actionsave_postv2\onesignal-admin.php:141
actiontransition_post_statusv2\onesignal-admin.php:142
actionadmin_enqueue_scriptsv2\onesignal-admin.php:143
actionadmin_noticesv2\onesignal-admin.php:242
actionadmin_enqueue_scriptsv2\onesignal-admin.php:560
actionadmin_noticesv2\onesignal-admin.php:581
actionadmin_noticesv2\onesignal-admin.php:593
filteradmin_footer_textv2\onesignal-admin.php:599
actionwp_headv2\onesignal-public.php:13
actionwp_enqueue_scriptsv2\onesignal-public.php:14
actionamp_post_template_body_openv2\onesignal-public.php:49
actionamp_post_template_footerv2\onesignal-public.php:50
actionwp_body_openv2\onesignal-public.php:52
actionwp_footerv2\onesignal-public.php:53
actionwidgets_initv2\onesignal-widget.php:46
actionadmin_menuv3\onesignal-admin\onesignal-admin.php:7
actionadmin_enqueue_scriptsv3\onesignal-admin\onesignal-admin.php:15
actionadmin_initv3\onesignal-admin\onesignal-admin.php:30
actionwp_headv3\onesignal-init.php:6
actionadd_meta_boxesv3\onesignal-metabox\onesignal-metabox.php:6
actionadmin_print_styles-post.phpv3\onesignal-metabox\onesignal-metabox.php:121
actionadmin_print_styles-post-new.phpv3\onesignal-metabox\onesignal-metabox.php:122
actionsave_postv3\onesignal-metabox\onesignal-metabox.php:143
actiontransition_post_statusv3\onesignal-notification.php:7
actionsave_postv3\onesignal-notification.php:10
actionwp_trash_postv3\onesignal-notification.php:13
Maintenance & Trust

OneSignal – Web Push Notifications Maintenance & Trust

Maintenance Signals

WordPress version tested6.9.4
Last updatedApr 7, 2026
PHP min version
Downloads5.1M

Community Trust

Rating86/100
Number of ratings361
Active installs70K
Developer Profile

OneSignal – Web Push Notifications Developer Profile

OneSignal Push Notifications

1 plugin · 70K total installs

77
trust score
Avg Security Score
97/100
Avg Patch Time
551 days
View full developer profile
Detection Fingerprints

How We Detect OneSignal – Web Push Notifications

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

Asset Fingerprints

Asset Paths
/wp-content/plugins/onesignal-free-web-push-notifications/v2/js/onesignal-utils.js/wp-content/plugins/onesignal-free-web-push-notifications/v2/js/onesignal-admin.js/wp-content/plugins/onesignal-free-web-push-notifications/v2/js/onesignal-public.js/wp-content/plugins/onesignal-free-web-push-notifications/v2/js/onesignal-settings.js/wp-content/plugins/onesignal-free-web-push-notifications/v2/js/onesignal-widget.js/wp-content/plugins/onesignal-free-web-push-notifications/v2/js/configuration-export.js/wp-content/plugins/onesignal-free-web-push-notifications/v2/js/complete-migration.js/wp-content/plugins/onesignal-free-web-push-notifications/v3/onesignal-admin/onesignal-admin.js+3 more
Script Paths
/wp-content/plugins/onesignal-free-web-push-notifications/v2/js/notice.js
Version Parameters
/wp-content/plugins/onesignal-free-web-push-notifications/v2/js/notice.js?ver=

HTML / DOM Fingerprints

HTML Comments
<!-- OneSignal :: START Meta Box --><!-- OneSignal :: END Meta Box --><!-- OneSignal :: START Notification Options --><!-- OneSignal :: END Notification Options -->
Data Attributes
name="onesignal_notification_title"name="onesignal_notification_message"name="onesignal_notification_url"name="onesignal_notification_icon"name="onesignal_notification_segment"name="onesignal_notification_send_to_all"+40 more
JS Globals
ajax_objectonesignal_admin_ajax_object
FAQ

Frequently Asked Questions about OneSignal – Web Push Notifications