Gallery – Photo Albums Plugin Security & Risk Analysis

wordpress.org/plugins/easy-media-gallery

Image Gallery – Photo Albums Plugin is the easiest tool to create image gallery, photo albums, portfolio and also photo slider.

2K active installs v1.3.170 PHP 7.2+ WP 3.4+ Updated Jan 23, 2026
galleryimage-galleryimage-sliderphoto-galleryslider
76
B · Generally Safe
CVEs total4
Unpatched1
Last CVEMar 31, 2025
Safety Verdict

Is Gallery – Photo Albums Plugin Safe to Use in 2026?

Mostly Safe

Score 76/100

Gallery – Photo Albums Plugin is generally safe to use. 4 past CVEs were resolved. Keep it updated.

4 known CVEs 1 unpatched Last CVE: Mar 31, 2025Updated 2mo ago
Risk Assessment

The "easy-media-gallery" plugin v1.3.170 exhibits a mixed security posture. While it demonstrates good practices in SQL query handling with 100% prepared statements and a significant number of nonce and capability checks (9 and 10 respectively), several critical areas raise concerns. The presence of dangerous functions like 'unserialize' and 'create_function' is a significant red flag, as these are often associated with deserialization vulnerabilities and code injection risks. Furthermore, the taint analysis revealing two high-severity flows with unsanitized paths indicates potential vulnerabilities where external input could be manipulated to execute unintended code or access unauthorized resources.

The plugin's vulnerability history, with four known medium-severity CVEs including a recent one in March 2025, suggests a recurring pattern of security weaknesses, particularly in Cross-site Scripting (XSS) and Cross-Site Request Forgery (CSRF). The fact that one CVE remains unpatched is a critical concern, leaving active exploits possible. The high percentage of improperly escaped output (82%) directly contributes to XSS risks, as user-supplied data is not adequately sanitized before being displayed to other users.

In conclusion, despite strengths in database security and input validation for certain functions, the "easy-media-gallery" plugin has significant security shortcomings. The presence of dangerous functions, high-severity taint flows, a history of multiple vulnerabilities, and a high rate of unescaped output collectively point to a substantial risk. Users should be cautious, and prompt patching of the known unpatched CVE is essential.

Key Concerns

  • Unpatched CVE found
  • High severity taint flows
  • Dangerous function 'unserialize'
  • Dangerous function 'create_function'
  • High percentage of unescaped output
  • AJAX handlers without auth checks
  • Multiple medium severity CVEs
Vulnerabilities
4

Gallery – Photo Albums Plugin Security Vulnerabilities

CVEs by Year

1 CVE in 2013
2013
1 CVE in 2014
2014
1 CVE in 2015
2015
1 CVE in 2025 · unpatched
2025
Patched Has unpatched

Severity Breakdown

Medium
4

4 total CVEs

CVE-2025-31586medium · 6.4Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

Gallery – Photo Albums Plugin <= 1.3.170 - Authenticated (Contributor+) Stored Cross-Site Scripting

Mar 31, 2025Unpatched
CVE-2015-7386medium · 6.1Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

Gallery – Photo Albums Plugin < 1.3.47 - Cross-Site Scripting

Sep 5, 2015 Patched in 1.3.50 (3062d)
WF-e438a090-1a73-450d-9325-276e45eee9ee-easy-media-gallerymedium · 4.3Cross-Site Request Forgery (CSRF)

Gallery – Photo Albums Plugin < 1.3.03 - Multiple Cross-Site Request Forgery

Sep 1, 2014 Patched in 1.3.03 (3431d)
WF-6bf7a5c3-f30d-42d6-91f9-8eb11089a499-easy-media-gallerymedium · 5.5Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

Gallery – Photo Albums Plugin < 1.2.29 - Cross-Site Scripting

Dec 17, 2013 Patched in 1.2.29 (3689d)
Code Analysis
Analyzed Mar 16, 2026

Gallery – Photo Albums Plugin Code Analysis

Dangerous Functions
2
Raw SQL Queries
0
2 prepared
Unescaped Output
305
68 escaped
Nonce Checks
9
Capability Checks
10
File Operations
2
External Requests
6
Bundled Libraries
2

Dangerous Functions Found

unserialize$plugin_info = unserialize( $response['body'] );includes\functions\functions.php:788
create_function$callback = create_function( '$post, $meta_box', 'easmedia_create_meta_box( $post, $meta_box["args"]includes\metaboxes.php:474

Bundled Libraries

TinyMCESelect2

SQL Query Safety

100% prepared2 total queries

Output Escaping

18% escaped373 total outputs
Data Flows
3 unsanitized

Data Flow Analysis

3 flows3 with unsanitized paths
<easy-media-gallery> (easy-media-gallery.php:0)
Source (user input) Sink (dangerous op) Sanitizer Transform Unsanitized Sanitized
Attack Surface
2 unprotected

Gallery – Photo Albums Plugin Attack Surface

Entry Points12
Unprotected2

AJAX Handlers 10

authwp_ajax_easymedia_sorteasy-media-gallery.php:95
noprivwp_ajax_emg_get_data_slider_ajaxincludes\functions\functions.php:138
authwp_ajax_emg_get_data_slider_ajaxincludes\functions\functions.php:139
authwp_ajax_emg_cp_resetincludes\functions\functions.php:171
authwp_ajax_easmedia_img_media_remvincludes\functions\functions.php:207
authwp_ajax_easymedia_imgresize_ajaxincludes\functions\functions.php:550
authwp_ajax_emg_hide_notyincludes\functions\functions.php:936
authwp_ajax_emg_enable_auto_updateincludes\functions\functions.php:1251
authwp_ajax_emg_get_aff_dataincludes\functions\functions.php:1717
authwp_ajax_emg_hide_block_notifyincludes\functions\functions.php:1779

Shortcodes 2

[easy-media] includes\shortcode.php:275
[easymedia-gallery] includes\shortcode.php:386
WordPress Hooks 68
actioniniteasy-media-gallery.php:83
actioniniteasy-media-gallery.php:84
actionplugins_loadedeasy-media-gallery.php:85
actionadmin_initeasy-media-gallery.php:86
actionadmin_initeasy-media-gallery.php:87
actionadmin_noticeseasy-media-gallery.php:88
filterplugin_action_linkseasy-media-gallery.php:89
filterplugin_row_metaeasy-media-gallery.php:90
actionadmin_print_styleseasy-media-gallery.php:91
actionadmin_headeasy-media-gallery.php:92
filtermanage_edit-easymediagallery_columnseasy-media-gallery.php:93
filtermanage_posts_custom_columneasy-media-gallery.php:94
actionmanage_edit-easymediagallery_columnseasy-media-gallery.php:96
actionmanage_easymediagallery_posts_custom_columneasy-media-gallery.php:97
filtermanage_edit-easymediagallery_sortable_columnseasy-media-gallery.php:98
filterpre_get_postseasy-media-gallery.php:99
actioniniteasy-media-gallery.php:100
filterwidget_texteasy-media-gallery.php:101
filterthe_excerpteasy-media-gallery.php:102
filterthe_excerpteasy-media-gallery.php:103
actionadmin_menueasy-media-gallery.php:104
filterpost_row_actionseasy-media-gallery.php:598
actionemg_auto_updateeasy-media-gallery.php:646
actionwidgets_initincludes\easywidget.php:66
actioninitincludes\emg-block\init.php:25
actionadmin_noticesincludes\emg-notice.php:6
actionadmin_initincludes\emg-notice.php:23
actionadmin_initincludes\emg-settings.php:11
actionadmin_headincludes\emg-settings.php:92
actionadmin_enqueue_scriptsincludes\emg-settings.php:93
actionadmin_menuincludes\emg-settings.php:565
actionwp_print_stylesincludes\frontend.php:12
actionwp_enqueue_scriptsincludes\frontend.php:44
actionwp_headincludes\frontend.php:75
actionadmin_initincludes\functions\functions.php:57
actionwp_enqueue_scriptsincludes\functions\functions.php:69
actioninitincludes\functions\functions.php:344
filteradmin_footer_textincludes\functions\functions.php:365
actionadmin_headincludes\functions\functions.php:567
actionadmin_footer-edit-tags.phpincludes\functions\functions.php:593
actionadmin_menuincludes\functions\functions.php:662
filtergettextincludes\functions\functions.php:744
filtergettextincludes\functions\functions.php:761
actionwp_dashboard_setupincludes\functions\functions.php:806
actionadmin_bar_menuincludes\functions\functions.php:1025
actionadmin_print_footer_scriptsincludes\functions\functions.php:1278
actionadmin_bar_menuincludes\functions\functions.php:1328
actionenqueue_block_editor_assetsincludes\functions\functions.php:1768
actiondo_meta_boxesincludes\metaboxes.php:16
actionadmin_headincludes\metaboxes.php:25
actionadmin_noticesincludes\metaboxes.php:60
actionadmin_footerincludes\metaboxes.php:65
actionadmin_enqueue_scriptsincludes\metaboxes.php:808
actionadmin_print_stylesincludes\metaboxes.php:809
actionadd_meta_boxesincludes\metaboxes.php:814
actionsave_postincludes\metaboxes.php:1049
actionadmin_menuincludes\pages\emg-pricing.php:9
actionadmin_menuincludes\pages\emg-welcome.php:32
actionadmin_headincludes\pages\emg-welcome.php:33
actionadmin_initincludes\pages\emg-welcome.php:34
actioninitincludes\taxonomy.php:38
actionadmin_headincludes\tinymce-dlg.php:8
actionadmin_footerincludes\tinymce-dlg.php:9
actionmedia_buttonsincludes\tinymce-dlg.php:32
filtermce_external_pluginsincludes\tinymce_plugin\register_mce_button.php:8
actioncurrent_screenincludes\tinymce_plugin\register_mce_button.php:9
filtermce_buttonsincludes\tinymce_plugin\register_mce_button.php:20
actionenqueue_block_editor_assetsincludes\tinymce_plugin\register_mce_button.php:21

Scheduled Events 1

emg_auto_update
Maintenance & Trust

Gallery – Photo Albums Plugin Maintenance & Trust

Maintenance Signals

WordPress version tested6.9.4
Last updatedJan 23, 2026
PHP min version7.2
Downloads1.7M

Community Trust

Rating76/100
Number of ratings277
Active installs2K
Developer Profile

Gallery – Photo Albums Plugin Developer Profile

GhozyLab

10 plugins · 21K total installs

74
trust score
Avg Security Score
93/100
Avg Patch Time
872 days
View full developer profile
Detection Fingerprints

How We Detect Gallery – Photo Albums Plugin

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

Asset Fingerprints

Asset Paths
/wp-content/plugins/easy-media-gallery/includes/css/emg-frontend.css/wp-content/plugins/easy-media-gallery/includes/css/emg-frontend-old.css/wp-content/plugins/easy-media-gallery/includes/css/emg-responsive.css/wp-content/plugins/easy-media-gallery/includes/css/easy-gallery-lightbox.css/wp-content/plugins/easy-media-gallery/includes/js/emg-frontend.js/wp-content/plugins/easy-media-gallery/includes/js/easy-gallery-lightbox.js/wp-content/plugins/easy-media-gallery/includes/js/jquery.mousewheel.min.js/wp-content/plugins/easy-media-gallery/includes/js/jquery.sweet-modal.min.js+4 more
Script Paths
/wp-content/plugins/easy-media-gallery/includes/js/emg-frontend.js/wp-content/plugins/easy-media-gallery/includes/js/easy-gallery-lightbox.js/wp-content/plugins/easy-media-gallery/includes/js/jquery.mousewheel.min.js/wp-content/plugins/easy-media-gallery/includes/js/jquery.sweet-modal.min.js/wp-content/plugins/easy-media-gallery/includes/js/fancybox.umd.js/wp-content/plugins/easy-media-gallery/includes/js/magnific-popup.js+2 more
Version Parameters
/wp-content/plugins/easy-media-gallery/includes/css/emg-frontend.css?ver=/wp-content/plugins/easy-media-gallery/includes/css/emg-frontend-old.css?ver=/wp-content/plugins/easy-media-gallery/includes/css/emg-responsive.css?ver=/wp-content/plugins/easy-media-gallery/includes/css/easy-gallery-lightbox.css?ver=/wp-content/plugins/easy-media-gallery/includes/js/emg-frontend.js?ver=/wp-content/plugins/easy-media-gallery/includes/js/easy-gallery-lightbox.js?ver=/wp-content/plugins/easy-media-gallery/includes/js/jquery.mousewheel.min.js?ver=/wp-content/plugins/easy-media-gallery/includes/js/jquery.sweet-modal.min.js?ver=/wp-content/plugins/easy-media-gallery/includes/js/fancybox.umd.js?ver=/wp-content/plugins/easy-media-gallery/includes/js/magnific-popup.js?ver=/wp-content/plugins/easy-media-gallery/includes/js/lightcase.js?ver=/wp-content/plugins/easy-media-gallery/includes/js/bxslider.js?ver=

HTML / DOM Fingerprints

CSS Classes
emg-gallery-wrapperemg-gallery-containeremg-media-itememg-gallery-item-wrapemg-gallery-lightbox-wrapper
HTML Comments
<!-- EASY MEDIA GALLERY LITE START --><!-- EASY MEDIA GALLERY LITE END --><!-- Easy Media Gallery Lite --><!-- EASY MEDIA GALLERY LITE SHORTCODE START -->+2 more
Data Attributes
data-emg-gallery-iddata-emg-item-iddata-emg-typedata-emg-media-id
JS Globals
easy_media_gallery_optionsemg_varsemg_frontend_params
Shortcode Output
[easy_media_gallery][easy_media_gallery id=[emg][emg_gallery]
FAQ

Frequently Asked Questions about Gallery – Photo Albums Plugin