Photo Gallery Plus – Image Gallery Plugin for WordPress Security & Risk Analysis

wordpress.org/plugins/photo-gallery-plus

Photo Gallery Plugin can be used to create a gallery widget, media gallery, image gallery, portfolio gallery and photo albums.

0 active installs v1.0.3 PHP + WP 3.0+ Updated Jun 17, 2017
albumgallerygallery-plugingallery-widget
85
A · Safe
CVEs total0
Unpatched0
Last CVENever
Safety Verdict

Is Photo Gallery Plus – Image Gallery Plugin for WordPress Safe to Use in 2026?

Generally Safe

Score 85/100

Photo Gallery Plus – Image Gallery Plugin for WordPress has no known CVEs and is actively maintained. It's a solid choice for most WordPress installations.

No known CVEs Updated 8yr ago
Risk Assessment

This analysis of "photo-gallery-plus" v1.0.3 reveals a plugin with a mixed security posture. While there are no recorded vulnerabilities (CVEs) and a significant portion of SQL queries utilize prepared statements, several concerning aspects are present in the static analysis. The plugin exposes two AJAX handlers without authentication checks, presenting a direct attack vector for unauthorized actions. Additionally, the presence of dangerous functions like `unserialize` and `create_function` is a red flag, as these can be exploited if user-supplied data is not rigorously sanitized before being passed to them.

The limited taint analysis (3 flows) showing no unsanitized paths is positive, but it's important to note this is a small sample size. The significant number of total outputs (8426) with only 30% properly escaped suggests a potential for Cross-Site Scripting (XSS) vulnerabilities if user-controlled data is ever rendered directly without proper sanitization. The absence of nonce checks on the unprotected AJAX endpoints is a critical omission, making it easier for attackers to trigger these functions via Cross-Site Request Forgery (CSRF) attacks.

Overall, the lack of past vulnerabilities is encouraging, suggesting the developers may have a good understanding of core security principles. However, the identified weaknesses, particularly the unprotected AJAX endpoints and the use of dangerous functions, necessitate immediate attention. While the foundation appears somewhat stable, these specific vulnerabilities represent exploitable weaknesses that could lead to significant security breaches if not addressed.

Key Concerns

  • AJAX handlers without auth checks
  • Use of dangerous functions (unserialize, create_function)
  • Missing nonce checks
  • Low percentage of properly escaped output
Vulnerabilities
None known

Photo Gallery Plus – Image Gallery Plugin for WordPress Security Vulnerabilities

No known vulnerabilities — this is a good sign.
Version History

Photo Gallery Plus – Image Gallery Plugin for WordPress Release Timeline

v1.0.2
v1.0.1
v1.0.0
Code Analysis
Analyzed Mar 17, 2026

Photo Gallery Plus – Image Gallery Plugin for WordPress Code Analysis

Dangerous Functions
5
Raw SQL Queries
3
22 prepared
Unescaped Output
5919
2507 escaped
Nonce Checks
0
Capability Checks
49
File Operations
0
External Requests
2
Bundled Libraries
2

Dangerous Functions Found

unserialize$image_data_unserialize = unserialize($value->meta_value);includes\queries.php:105
unserialize$unserialized_capabilities = unserialize($capabilities);photo-gallery-plus.php:386
unserialize$role_capabilities_serialized = unserialize($role_capabilities);photo-gallery-plus.php:453
create_functionadd_action("widgets_init", create_function("", "return register_widget(\"photo_gallery_plus_widget\"photo-gallery-plus.php:818
unserialize$display_gallery_data = unserialize($gallery_data->meta_value);user-views\includes\galleries\queries.php:19

Bundled Libraries

DataTablesjQuery

SQL Query Safety

88% prepared25 total queries

Output Escaping

30% escaped8426 total outputs
Data Flows · Security
All sanitized

Data Flow Analysis

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

Photo Gallery Plus – Image Gallery Plugin for WordPress Attack Surface

Entry Points3
Unprotected2

AJAX Handlers 2

authwp_ajax_photo_gallery_plus_action_modulephoto-gallery-plus.php:754
authwp_ajax_photo_gallery_plus_image_uploadphoto-gallery-plus.php:762

Shortcodes 1

[photo_gallery_plus] photo-gallery-plus.php:800
WordPress Hooks 11
actionadmin_enqueue_scriptsphoto-gallery-plus.php:358
actionadmin_initphoto-gallery-plus.php:746
actionadmin_menuphoto-gallery-plus.php:769
actionnetwork_admin_menuphoto-gallery-plus.php:770
actionadmin_bar_menuphoto-gallery-plus.php:777
actioninitphoto-gallery-plus.php:785
actionmedia_buttonsphoto-gallery-plus.php:809
actionwidgets_initphoto-gallery-plus.php:818
filterwidget_textphoto-gallery-plus.php:827
actionadmin_initphoto-gallery-plus.php:845
actionadmin_initphoto-gallery-plus.php:886
Maintenance & Trust

Photo Gallery Plus – Image Gallery Plugin for WordPress Maintenance & Trust

Maintenance Signals

WordPress version tested4.8.28
Last updatedJun 17, 2017
PHP min version
Downloads2K

Community Trust

Rating100/100
Number of ratings1
Active installs0
Developer Profile

Photo Gallery Plus – Image Gallery Plugin for WordPress Developer Profile

thewpgeeks

1 plugin · 0 total installs

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

How We Detect Photo Gallery Plus – Image Gallery Plugin for WordPress

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

Asset Fingerprints

Asset Paths
/wp-content/plugins/photo-gallery-plus/assets/css/image-popup.css/wp-content/plugins/photo-gallery-plus/assets/css/photo-gallery-plus.css/wp-content/plugins/photo-gallery-plus/assets/css/style.css/wp-content/plugins/photo-gallery-plus/assets/css/photo-gallery-plus-admin.css/wp-content/plugins/photo-gallery-plus/assets/js/image-popup.js/wp-content/plugins/photo-gallery-plus/assets/js/photo-gallery-plus.js/wp-content/plugins/photo-gallery-plus/assets/js/photo-gallery-plus-admin.js/wp-content/plugins/photo-gallery-plus/assets/js/photo-gallery-plus-masonry.js+3 more
Script Paths
/wp-content/plugins/photo-gallery-plus/assets/js/image-popup.js/wp-content/plugins/photo-gallery-plus/assets/js/photo-gallery-plus.js/wp-content/plugins/photo-gallery-plus/assets/js/photo-gallery-plus-admin.js/wp-content/plugins/photo-gallery-plus/assets/js/photo-gallery-plus-masonry.js/wp-content/plugins/photo-gallery-plus/assets/js/photo-gallery-plus-slideshow.js/wp-content/plugins/photo-gallery-plus/assets/js/photo-gallery-plus-thumbnails.js+1 more
Version Parameters
photo-gallery-plus/style.css?ver=photo-gallery-plus/photo-gallery-plus.css?ver=

HTML / DOM Fingerprints

CSS Classes
photo-gallery-plus-wrapphoto-gallery-plus-frontend-wrapphoto-gallery-plus-main-contentphoto-gallery-plus-gallery-containerpgp-gallery-imgpgp-album-imgpgp_wizard_photo_gallery_plusmanage_photo_gallery_plus+13 more
HTML Comments
photo-gallery-plus-license-divphoto-gallery-plus-main-div
Data Attributes
data-pgp-gallery-iddata-pgp-album-iddata-pgp-image-id
JS Globals
pgp_add_gallery_scriptphoto_gallery_plus_admin_scriptphoto_gallery_plus_masonry_scriptphoto_gallery_plus_slideshow_scriptphoto_gallery_plus_thumbnails_scriptphoto_gallery_plus_wizard_script
FAQ

Frequently Asked Questions about Photo Gallery Plus – Image Gallery Plugin for WordPress