PDF Generator for WordPress Security & Risk Analysis

wordpress.org/plugins/pdf-generator-for-wp

PDF Generator for WordPress allows you to convert posts into PDF files to share information across multiple channels.

2K active installs v1.6.0 PHP 7.4+ WP 6.7.0+ Updated Feb 12, 2026
3d-flipbookinvoicespdfpdf-flipbookpdf-generator
98
A · Safe
CVEs total2
Unpatched0
Last CVESep 9, 2025
Safety Verdict

Is PDF Generator for WordPress Safe to Use in 2026?

Generally Safe

Score 98/100

PDF Generator for WordPress has a strong security track record. Known vulnerabilities have been patched promptly.

2 known CVEsLast CVE: Sep 9, 2025Updated 1mo ago
Risk Assessment

The 'pdf-generator-for-wp' plugin v1.6.1 exhibits a mixed security posture. While it demonstrates good practices in output escaping (95%) and a significant percentage of SQL queries using prepared statements (67%), several areas raise concerns. The presence of 10 AJAX handlers without authentication checks represents a substantial attack surface, potentially exposing sensitive functionalities to unauthorized users. The vulnerability history, though currently showing no unpatched CVEs, indicates past issues related to missing authorization and cross-site scripting. This suggests a pattern of vulnerabilities that require ongoing vigilance. While the taint analysis did not reveal critical or high-severity issues in this specific scan, the historical pattern combined with the unprotected entry points warrants careful consideration. Overall, the plugin has some strengths, but the unprotected AJAX endpoints and historical vulnerability types point to potential weaknesses that should be addressed.

Key Concerns

  • Unprotected AJAX handlers
  • Historical vulnerabilities (Missing Auth, XSS)
  • Bundled outdated library (DataTables v1.10.24)
Vulnerabilities
2

PDF Generator for WordPress Security Vulnerabilities

CVEs by Year

1 CVE in 2023
2023
1 CVE in 2025
2025
Patched Has unpatched

Severity Breakdown

Medium
2

2 total CVEs

CVE-2025-58978medium · 4.3Missing Authorization

PDF Generator for WordPress <= 1.5.4 - Missing Authorization

Sep 9, 2025 Patched in 1.5.5 (7d)
CVE-2022-4321medium · 6.1Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

PDF Generator for Wordpress <= 1.1.1 - Reflected Cross-Site Scripting

Jan 16, 2023 Patched in 1.1.2 (372d)
Code Analysis
Analyzed Mar 16, 2026

PDF Generator for WordPress Code Analysis

Dangerous Functions
0
Raw SQL Queries
1
2 prepared
Unescaped Output
46
843 escaped
Nonce Checks
16
Capability Checks
3
File Operations
15
External Requests
4
Bundled Libraries
3

Bundled Libraries

DataTables1.10.24dompdfSelect2

SQL Query Safety

67% prepared3 total queries

Output Escaping

95% escaped889 total outputs
Data Flows
All sanitized

Data Flow Analysis

10 flows
pgfw_admin_save_tab_settings (admin\class-pdf-generator-for-wp-admin.php:466)
Source (user input) Sink (dangerous op) Sanitizer Transform Unsanitized Sanitized
Attack Surface
10 unprotected

PDF Generator for WordPress Attack Surface

Entry Points31
Unprotected10

AJAX Handlers 17

authwp_ajax_wps_pgfw_send_onboarding_dataincludes\class-pdf-generator-for-wp-onboarding-steps.php:125
noprivwp_ajax_wps_pgfw_send_onboarding_dataincludes\class-pdf-generator-for-wp-onboarding-steps.php:126
authwp_ajax_pgfw_skip_onboarding_popupincludes\class-pdf-generator-for-wp-onboarding-steps.php:129
noprivwp_ajax_pgfw_skip_onboarding_popupincludes\class-pdf-generator-for-wp-onboarding-steps.php:130
authwp_ajax_wps_pgfw_delete_poster_by_media_id_from_tableincludes\class-pdf-generator-for-wp.php:208
authwp_ajax_pgfw_reset_default_settingsincludes\class-pdf-generator-for-wp.php:213
authwp_ajax_wpg_ajax_callbacksincludes\class-pdf-generator-for-wp.php:215
authwp_ajax_wps_pgfw_dismiss_notice_bannerincludes\class-pdf-generator-for-wp.php:219
authwp_ajax_wps_pgfw_save_embed_sourceincludes\class-pdf-generator-for-wp.php:232
noprivwp_ajax_wps_pgfw_ajax_for_single_pdf_mailincludes\class-pdf-generator-for-wp.php:257
authwp_ajax_wps_pgfw_ajax_for_single_pdf_mailincludes\class-pdf-generator-for-wp.php:258
authwp_ajax_wpg_save_template_itemsincludes\class-pdf-generator-for-wp.php:272
authwp_ajax_fb_fetch_pdfincludes\pdf-generator-for-wp-global-functions.php:136
noprivwp_ajax_fb_fetch_pdfincludes\pdf-generator-for-wp-global-functions.php:137
authwp_ajax_ifb_upload_pdfincludes\pdf-generator-for-wp-global-functions.php:138
authwp_ajax_upload_pdf_page_imagepdf-generator-for-wp.php:1082
noprivwp_ajax_upload_pdf_page_imagepdf-generator-for-wp.php:1083

REST API Routes 1

GET/wp-json/pgfw-route/v1/pgfw-dummy-data/package\rest-api\class-pdf-generator-for-wp-rest-api.php:73

Shortcodes 13

[PGFW_DOWNLOAD_POSTER] common\class-pdf-generator-for-wp-common.php:761
[WPG_FETCH_ORDER] common\class-pdf-generator-for-wp-common.php:1237
[wps_calendly] pdf-generator-for-wp.php:489
[wps_twitch] pdf-generator-for-wp.php:492
[wps_strava] pdf-generator-for-wp.php:496
[wps_ai_chatbot] pdf-generator-for-wp.php:501
[wps_rssapp_feed] pdf-generator-for-wp.php:504
[wps_tracking_info] pdf-generator-for-wp.php:509
[WPS_SINGLE_IMAGE] pdf-generator-for-wp.php:943
[WORDPRESS_PDF] public\class-pdf-generator-for-wp-public.php:253
[WPS_SINGLE_IMAGE] public\class-pdf-generator-for-wp-public.php:254
[WPS_POST_GALLERY] public\class-pdf-generator-for-wp-public.php:255
[flipbook] public\class-pdf-generator-for-wp-public.php:403
WordPress Hooks 67
actionwp_footerElementor\class-elementor-widget-wps-reddit.php:106
actionadmin_enqueue_scriptsincludes\class-pdf-generator-for-wp-onboarding-steps.php:116
actionadmin_enqueue_scriptsincludes\class-pdf-generator-for-wp-onboarding-steps.php:117
actionadmin_footerincludes\class-pdf-generator-for-wp-onboarding-steps.php:118
actionadmin_footerincludes\class-pdf-generator-for-wp-onboarding-steps.php:119
filterwps_pgfw_on_boarding_form_fieldsincludes\class-pdf-generator-for-wp-onboarding-steps.php:121
filterwps_pgfw_deactivation_form_fieldsincludes\class-pdf-generator-for-wp-onboarding-steps.php:122
actionplugins_loadedincludes\class-pdf-generator-for-wp.php:166
actionadmin_enqueue_scriptsincludes\class-pdf-generator-for-wp.php:178
actionadmin_enqueue_scriptsincludes\class-pdf-generator-for-wp.php:179
actionadmin_menuincludes\class-pdf-generator-for-wp.php:182
actionadmin_menuincludes\class-pdf-generator-for-wp.php:183
filterwps_add_plugins_menus_arrayincludes\class-pdf-generator-for-wp.php:187
filterpgfw_general_settings_arrayincludes\class-pdf-generator-for-wp.php:190
filterpgfw_display_settings_arrayincludes\class-pdf-generator-for-wp.php:192
filterpgfw_header_settings_arrayincludes\class-pdf-generator-for-wp.php:194
filterpgfw_footer_settings_arrayincludes\class-pdf-generator-for-wp.php:196
filterpgfw_body_settings_arrayincludes\class-pdf-generator-for-wp.php:198
filterpgfw_advanced_settings_arrayincludes\class-pdf-generator-for-wp.php:200
filterpgfw_meta_fields_settings_arrayincludes\class-pdf-generator-for-wp.php:202
filterpgfw_pdf_upload_fields_settings_arrayincludes\class-pdf-generator-for-wp.php:204
actionadmin_initincludes\class-pdf-generator-for-wp.php:206
actioninitincludes\class-pdf-generator-for-wp.php:210
actionpgfw_cron_delete_pdf_from_serverincludes\class-pdf-generator-for-wp.php:211
filterwps_pgfw_custom_page_size_filter_hookincludes\class-pdf-generator-for-wp.php:216
actionadmin_initincludes\class-pdf-generator-for-wp.php:217
actionwps_wgm_check_for_notification_updateincludes\class-pdf-generator-for-wp.php:218
actioninitincludes\class-pdf-generator-for-wp.php:221
filterpgfw_taxonomy_settings_array_dummyincludes\class-pdf-generator-for-wp.php:225
actionpgfw_plugin_standard_admin_settings_sub_tabs_dummyincludes\class-pdf-generator-for-wp.php:226
filterpgfw_template_pdf_settings_array_dummyincludes\class-pdf-generator-for-wp.php:227
filterpgfw_template_invoice_settings_array_dummyincludes\class-pdf-generator-for-wp.php:228
filterpgfw_layout_cover_page_setting_html_array_dummyincludes\class-pdf-generator-for-wp.php:229
actionadd_meta_boxesincludes\class-pdf-generator-for-wp.php:235
actionsave_post_flipbookincludes\class-pdf-generator-for-wp.php:236
filtermanage_flipbook_posts_columnsincludes\class-pdf-generator-for-wp.php:237
actionmanage_flipbook_posts_custom_columnincludes\class-pdf-generator-for-wp.php:238
actionwp_enqueue_scriptsincludes\class-pdf-generator-for-wp.php:249
actionwp_enqueue_scriptsincludes\class-pdf-generator-for-wp.php:250
actioninitincludes\class-pdf-generator-for-wp.php:255
actionplugins_loadedincludes\class-pdf-generator-for-wp.php:256
actionload-edit.phpincludes\class-pdf-generator-for-wp.php:260
filterbulk_actions-edit-postincludes\class-pdf-generator-for-wp.php:262
filterbulk_actions-edit-pageincludes\class-pdf-generator-for-wp.php:263
filterbulk_actions-edit-productincludes\class-pdf-generator-for-wp.php:264
actionplugins_loadedincludes\class-pdf-generator-for-wp.php:269
filterpgfw_load_templates_for_pdf_htmlincludes\class-pdf-generator-for-wp.php:271
actionwpg_reset_invoice_number_hookincludes\class-pdf-generator-for-wp.php:273
actionwp_enqueue_scriptsincludes\class-pdf-generator-for-wp.php:287
actionwp_enqueue_scriptsincludes\class-pdf-generator-for-wp.php:288
actionplugins_loadedincludes\class-pdf-generator-for-wp.php:295
filterthe_contentincludes\class-pdf-generator-for-wp.php:302
filterthe_contentincludes\class-pdf-generator-for-wp.php:306
actioninitincludes\class-pdf-generator-for-wp.php:310
actionrest_api_initincludes\class-pdf-generator-for-wp.php:322
actionbefore_woocommerce_initpdf-generator-for-wp.php:42
actionwp_initialize_sitepdf-generator-for-wp.php:139
actionelementor/widgets/registerpdf-generator-for-wp.php:265
actionelementor/elements/categories_registeredpdf-generator-for-wp.php:266
filterplugin_row_metapdf-generator-for-wp.php:335
actionadmin_noticespdf-generator-for-wp.php:341
actionafter_plugin_row_wordpress-pdf-generator/wordpress-pdf-generator.phppdf-generator-for-wp.php:368
actionadmin_noticespdf-generator-for-wp.php:400
actionadmin_noticespdf-generator-for-wp.php:989
actioninitpdf-generator-for-wp.php:1031
actioninitpdf-generator-for-wp.php:1032
actionadmin_noticespdf-generator-for-wp.php:1112

Scheduled Events 2

pgfw_cron_delete_pdf_from_server
wps_wgm_check_for_notification_update
Maintenance & Trust

PDF Generator for WordPress Maintenance & Trust

Maintenance Signals

WordPress version tested6.9.4
Last updatedFeb 12, 2026
PHP min version7.4
Downloads103K

Community Trust

Rating92/100
Number of ratings39
Active installs2K
Developer Profile

PDF Generator for WordPress Developer Profile

WP Swings

13 plugins · 43K total installs

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

How We Detect PDF Generator 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/pdf-generator-for-wp/assets/css/pdf-generator-for-wp.css/wp-content/plugins/pdf-generator-for-wp/assets/js/pdf-generator-for-wp.js/wp-content/plugins/pdf-generator-for-wp/assets/js/backend-scripts.js/wp-content/plugins/pdf-generator-for-wp/assets/css/backend-styles.css
Script Paths
/wp-content/plugins/pdf-generator-for-wp/assets/js/pdf-generator-for-wp.js/wp-content/plugins/pdf-generator-for-wp/assets/js/backend-scripts.js
Version Parameters
pdf-generator-for-wp/assets/css/pdf-generator-for-wp.css?ver=pdf-generator-for-wp/assets/js/pdf-generator-for-wp.js?ver=pdf-generator-for-wp/assets/js/backend-scripts.js?ver=pdf-generator-for-wp/assets/css/backend-styles.css?ver=

HTML / DOM Fingerprints

CSS Classes
pgfw-pdf-generate-btnpdf-generator-for-wp-wrapperpdf-generator-for-wp-shortcode
HTML Comments
<!-- PDF Generator for WP Plugin: Start --><!-- PDF Generator for WP Plugin: End --><!-- PDF Generator for WP: Shortcode Output -->
Data Attributes
data-pdf-generator-iddata-pdf-generator-options
JS Globals
pdf_generator_for_wp_ajax_object
REST Endpoints
/wp-json/pdf-generator-for-wp/v1/generate/wp-json/pdf-generator-for-wp/v1/settings
Shortcode Output
[pdf_generator_for_wp]
FAQ

Frequently Asked Questions about PDF Generator for WordPress