PayHere Payment Gateway Security & Risk Analysis

wordpress.org/plugins/payhere-payment-gateway

PayHere Payment Gateway

2K active installs v2.4.4 PHP + WP 6.4+ Updated Jan 27, 2026
onlinepayherepaymentssri-lanka
98
A · Safe
CVEs total2
Unpatched0
Last CVEJan 13, 2026
Safety Verdict

Is PayHere Payment Gateway Safe to Use in 2026?

Generally Safe

Score 98/100

PayHere Payment Gateway has a strong security track record. Known vulnerabilities have been patched promptly.

2 known CVEsLast CVE: Jan 13, 2026Updated 2mo ago
Risk Assessment

The PayHere Payment Gateway plugin, version 2.4.4, exhibits a mixed security posture. On the positive side, the plugin demonstrates good practices in its handling of SQL queries, exclusively using prepared statements, and a high percentage of properly escaped output, which mitigates common injection and cross-site scripting vulnerabilities. The absence of dangerous functions and file operations is also a strength. However, significant concerns arise from the static analysis, particularly the presence of three AJAX handlers that lack any authentication checks. This creates a substantial attack surface that could be exploited by unauthenticated users to trigger potentially sensitive actions within the plugin. The complete absence of nonce and capability checks further exacerbates this risk, making these AJAX endpoints vulnerable to unauthorized access. While the plugin has a history of medium-severity vulnerabilities, specifically related to missing authorization and exposure of sensitive information, the fact that these are currently unpatched (indicated by the vulnerability history mentioning future dates for resolution, which is unusual and might represent simulated data) is a critical concern that requires immediate attention. Despite the good practices in SQL and output handling, the unprotected entry points and historical vulnerability patterns suggest a need for significant security improvements to ensure the plugin's robust protection.

Key Concerns

  • Unprotected AJAX handlers
  • Missing nonce checks
  • Missing capability checks
  • Medium severity CVEs (unpatched)
  • Vulnerability type: Missing Authorization
  • Vulnerability type: Exposure of Sensitive Information
Vulnerabilities
2

PayHere Payment Gateway Security Vulnerabilities

CVEs by Year

1 CVE in 2023
2023
1 CVE in 2026
2026
Patched Has unpatched

Severity Breakdown

Medium
2

2 total CVEs

CVE-2025-15475medium · 5.3Missing Authorization

PayHere Payment Gateway Plugin for WooCommerce <= 2.3.9 - Missing Authorization to Unauthenticated Order Status Modification

Jan 13, 2026 Patched in 2.4.0 (10d)
CVE-2023-6064medium · 5.3Exposure of Sensitive Information to an Unauthorized Actor

PayHere Payment Gateway <= 2.2.11 - Information Disclosure via Log Files

Dec 7, 2023 Patched in 2.2.12 (62d)
Code Analysis
Analyzed Mar 16, 2026

PayHere Payment Gateway Code Analysis

Dangerous Functions
0
Raw SQL Queries
0
4 prepared
Unescaped Output
7
185 escaped
Nonce Checks
0
Capability Checks
0
File Operations
0
External Requests
3
Bundled Libraries
0

SQL Query Safety

100% prepared4 total queries

Output Escaping

96% escaped192 total outputs
Attack Surface
3 unprotected

PayHere Payment Gateway Attack Surface

Entry Points3
Unprotected3

AJAX Handlers 3

authwp_ajax_payhere_remove_cardincludes\class-payhere.php:222
authwp_ajax_payhere_chargeincludes\class-payhere.php:246
authwp_ajax_payhere_captureincludes\class-payhere.php:247
WordPress Hooks 29
actionbefore_woocommerce_initblock\class-payhere-block-loader.php:29
actionwoocommerce_blocks_payment_method_type_registrationblock\class-payhere-block-loader.php:46
actionwoocommerce_blocks_loadedblock\class-payhere-block-loader.php:55
actionwoocommerce_receipt_payheregateway\class-wcgatewaypayhere.php:217
actionwoocommerce_thankyougateway\class-wcgatewaypayhere.php:218
filterthe_titlegateway\class-wcgatewaypayhere.php:221
filterwoocommerce_thankyou_order_received_textgateway\class-wcgatewaypayhere.php:223
actionadmin_noticesincludes\class-payhere.php:103
actionadmin_noticesincludes\class-payhere.php:121
actionadmin_enqueue_scriptsincludes\class-payhere.php:194
actionadmin_enqueue_scriptsincludes\class-payhere.php:195
filterplugin_action_linksincludes\class-payhere.php:197
actionplugins_loadedincludes\class-payhere.php:199
actioninitincludes\class-payhere.php:214
filterquery_varsincludes\class-payhere.php:216
filterwoocommerce_account_menu_itemsincludes\class-payhere.php:217
actionwoocommerce_account_saved-cards_endpointincludes\class-payhere.php:218
actionwp_enqueue_scriptsincludes\class-payhere.php:220
actionwp_enqueue_scriptsincludes\class-payhere.php:221
actionplugins_loadedincludes\class-payhere.php:237
filterwoocommerce_payment_gatewaysincludes\class-payhere.php:239
filterwoocommerce_register_shop_order_post_statusesincludes\class-payhere.php:240
filterwc_order_statusesincludes\class-payhere.php:242
filterwc_order_is_editableincludes\class-payhere.php:244
actionadd_meta_boxesincludes\class-payhere.php:248
filterwcs_view_subscription_actionsincludes\class-payhere.php:250
filteruser_has_capincludes\class-payhere.php:251
actionadmin_menuincludes\class-phcustomerlistoptions.php:45
actionplugins_loadedpayhere-payment-gateway.php:93
Maintenance & Trust

PayHere Payment Gateway Maintenance & Trust

Maintenance Signals

WordPress version tested6.9.4
Last updatedJan 27, 2026
PHP min version
Downloads53K

Community Trust

Rating90/100
Number of ratings8
Active installs2K
Developer Profile

PayHere Payment Gateway Developer Profile

PayHere

2 plugins · 2K total installs

87
trust score
Avg Security Score
99/100
Avg Patch Time
36 days
View full developer profile
Detection Fingerprints

How We Detect PayHere Payment Gateway

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

Asset Fingerprints

Asset Paths
/wp-content/plugins/payhere-payment-gateway/public/css/payhere-payment-gateway-public.css/wp-content/plugins/payhere-payment-gateway/public/js/payhere-payment-gateway-public.js
Script Paths
/wp-content/plugins/payhere-payment-gateway/public/js/payhere-payment-gateway-public.js
Version Parameters
payhere-payment-gateway/public/css/payhere-payment-gateway-public.css?ver=payhere-payment-gateway/public/js/payhere-payment-gateway-public.js?ver=

HTML / DOM Fingerprints

CSS Classes
image-selection-wrapperadd-mediaremove-media
Data Attributes
id="image-selection-wrapper"name="woocommerce_payhere_gateway[logo_url]"id="woocommerce_payhere_gateway[logo_url]"
JS Globals
window.wp.mediawindow.send_to_editor
FAQ

Frequently Asked Questions about PayHere Payment Gateway