Robin Image Optimizer – Unlimited Image Optimization & WebP Converter Security & Risk Analysis

wordpress.org/plugins/robin-image-optimizer

Unlimited automatic image optimization for WordPress. Compress images, convert to WebP, and improve site speed without losing image quality.

100K active installs v2.0.4 PHP 7.4+ WP 5.6+ Updated Mar 12, 2026
compress-imagesimage-optimierimage-optimizationunlimited-image-optimizationwebp-converter
98
A · Safe
CVEs total2
Unpatched0
Last CVEFeb 4, 2026
Safety Verdict

Is Robin Image Optimizer – Unlimited Image Optimization & WebP Converter Safe to Use in 2026?

Generally Safe

Score 98/100

Robin Image Optimizer – Unlimited Image Optimization & WebP Converter has a strong security track record. Known vulnerabilities have been patched promptly.

2 known CVEsLast CVE: Feb 4, 2026Updated 22d ago
Risk Assessment

The robin-image-optimizer plugin exhibits a mixed security posture. While it demonstrates good practices in several areas, such as a high percentage of SQL queries using prepared statements and proper output escaping, there are significant concerns regarding its attack surface. The presence of 6 AJAX handlers without authentication checks is a notable weakness, creating potential entry points for unauthorized actions. The vulnerability history, though currently showing no unpatched CVEs, indicates a past pattern of medium-severity Cross-site Scripting and Missing Authorization vulnerabilities. This suggests that while issues have been addressed, the potential for such vulnerabilities to reappear or for new ones to be introduced exists.

Overall, the plugin has strengths in its sanitization and database interaction, but the unprotected AJAX endpoints and historical vulnerability types warrant careful attention. The lack of any reported taint flows is positive, but it doesn't fully negate the risks posed by the exposed AJAX handlers. A balanced conclusion would be that the plugin is generally well-developed from a code hygiene perspective, but the attack surface management, particularly for AJAX operations, requires improvement to mitigate risks effectively.

Key Concerns

  • AJAX handlers without authentication checks
  • Past medium severity vulnerabilities (XSS, Missing Auth)
Vulnerabilities
2

Robin Image Optimizer – Unlimited Image Optimization & WebP Converter Security Vulnerabilities

CVEs by Year

1 CVE in 2024
2024
1 CVE in 2026
2026
Patched Has unpatched

Severity Breakdown

Medium
2

2 total CVEs

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

Robin Image Optimizer <= 2.0.2 - Authenticated (Author+) Stored Cross-Site Scripting via Image Alternative Text Field

Feb 4, 2026 Patched in 2.0.3 (1d)
CVE-2024-43122medium · 4.3Missing Authorization

Robin image optimizer <= 1.6.9 - Missing Authorization

Aug 7, 2024 Patched in 1.7.0 (8d)
Code Analysis
Analyzed Mar 16, 2026

Robin Image Optimizer – Unlimited Image Optimization & WebP Converter Code Analysis

Dangerous Functions
0
Raw SQL Queries
15
51 prepared
Unescaped Output
41
302 escaped
Nonce Checks
29
Capability Checks
31
File Operations
25
External Requests
8
Bundled Libraries
1

Bundled Libraries

Freemius

SQL Query Safety

77% prepared66 total queries

Output Escaping

88% escaped343 total outputs
Attack Surface
6 unprotected

Robin Image Optimizer – Unlimited Image Optimization & WebP Converter Attack Surface

Entry Points30
Unprotected6

AJAX Handlers 30

authwp_ajax_wio_restore_backupadmin\ajax\backup.php:16
authwp_ajax_wio_clear_backupadmin\ajax\backup.php:84
authwp_ajax_wrio_logs_cleanupadmin\ajax\logs.php:6
authwp_ajax_wrio_meta_migrationsadmin\ajax\meta-migrations.php:15
authwp_ajax_wio_settings_update_leveladmin\ajax\settings.php:16
authwp_ajax_wrio_dismiss_avif_banneradmin\boot.php:341
authwp_ajax_wrio_subscribeadmin\includes\class-wrio-subscribe-widget.php:50
authwp_ajax_wrio_license_actionadmin\pages\class-rio-license.php:87
authwp_ajax_wrio-cron-startincludes\classes\class-rio-bulk-optimization.php:26
authwp_ajax_wrio-cron-stopincludes\classes\class-rio-bulk-optimization.php:27
authwp_ajax_wrio-webp-cron-startincludes\classes\class-rio-bulk-optimization.php:29
authwp_ajax_wrio-webp-cron-stopincludes\classes\class-rio-bulk-optimization.php:30
authwp_ajax_wrio-avif-cron-startincludes\classes\class-rio-bulk-optimization.php:31
authwp_ajax_wrio-avif-cron-stopincludes\classes\class-rio-bulk-optimization.php:32
authwp_ajax_wrio-cron-startincludes\classes\class-rio-bulk-optimization.php:34
authwp_ajax_wrio-cron-stopincludes\classes\class-rio-bulk-optimization.php:35
authwp_ajax_wrio-webp-cron-startincludes\classes\class-rio-bulk-optimization.php:37
authwp_ajax_wrio-webp-cron-stopincludes\classes\class-rio-bulk-optimization.php:38
authwp_ajax_wrio-avif-cron-startincludes\classes\class-rio-bulk-optimization.php:39
authwp_ajax_wrio-avif-cron-stopincludes\classes\class-rio-bulk-optimization.php:40
authwp_ajax_wrio-bulk-optimization-processincludes\classes\class-rio-bulk-optimization.php:43
authwp_ajax_wrio-bulk-conversion-processincludes\classes\class-rio-bulk-optimization.php:44
authwp_ajax_wio_reoptimize_imageincludes\classes\class-rio-bulk-optimization.php:45
authwp_ajax_wio_convert_imageincludes\classes\class-rio-bulk-optimization.php:46
authwp_ajax_wio_restore_imageincludes\classes\class-rio-bulk-optimization.php:47
authwp_ajax_wbcr-rio-check-servers-statusincludes\classes\class-rio-bulk-optimization.php:49
authwp_ajax_wbcr-rio-check-user-balanceincludes\classes\class-rio-bulk-optimization.php:50
authwp_ajax_wbcr-rio-calculate-total-imagesincludes\classes\class-rio-bulk-optimization.php:53
authwp_ajax_wbcr-rio-calculate-total-attachmentsincludes\classes\class-rio-bulk-optimization.php:54
authwp_ajax_wbcr-rio-calculate-total-thumbsincludes\classes\class-rio-bulk-optimization.php:55
WordPress Hooks 48
actionadmin_initadmin\boot.php:22
filterwbcr/clearfy/components/items_listadmin\boot.php:33
actionwbcr/clearfy/components/custom_plugins_cardadmin\boot.php:56
actionadmin_enqueue_scriptsadmin\boot.php:71
actionwbcr/factory/admin_noticesadmin\boot.php:109
actionwbcr/factory/pages/impressive/print_all_noticesadmin\boot.php:148
filterwbcr_factory_pages_480_imppage_rating_widget_urladmin\boot.php:194
filterwbcr/factory/pages/impressive/widgetsadmin\boot.php:202
filterwbcr/clearfy/pages/suggetion_titleadmin\boot.php:245
filterwbcr/clearfy/pages/suggetion_featuresadmin\boot.php:265
filterwbcr/factory/premium/notice_textadmin\boot.php:294
actionadmin_menuadmin\includes\classes\class-rio-nextgen-landing.php:20
actionadmin_menuadmin\includes\classes\class-rio-nextgen-landing.php:21
actionadmin_menuadmin\pages\class-rio-license.php:85
actionadmin_enqueue_scriptsadmin\pages\class-rio-license.php:86
filterwbcr/factory/option_image_optimization_typeadmin\pages\class-rio-settings.php:82
filterwbcr/factory/option_convert_avif_formatadmin\pages\class-rio-settings.php:93
actionadmin_enqueue_scriptsadmin\pages\class-rio-statistic.php:94
filterwbcr/factory/pages/impressive/print_all_noticesadmin\pages\class-rio-statistic.php:96
filterbig_image_size_thresholdincludes\class-rio-plugin.php:83
actioninitincludes\class-rio-plugin.php:98
actionplugins_loadedincludes\class-rio-plugin.php:109
filterthemeisle_sdk_productsincludes\class-rio-plugin.php:119
filterthemeisle_sdk_ran_promosincludes\class-rio-plugin.php:120
actionadmin_print_stylesincludes\class-rio-plugin.php:138
actionadmin_enqueue_scriptsincludes\class-rio-plugin.php:373
filterwp_generate_attachment_metadataincludes\classes\class-rio-attachment.php:157
actionwrio/cron/optimization_processincludes\classes\class-rio-cron.php:26
actionwrio/cron/conversion_processincludes\classes\class-rio-cron.php:27
actionwrio/cron/avif_conversion_processincludes\classes\class-rio-cron.php:28
filtercron_schedulesincludes\classes\class-rio-cron.php:29
actionwbcr/riop/queue_item_savedincludes\classes\class-rio-image-query.php:65
actionwbcr/rio/attachment_restoredincludes\classes\class-rio-image-query.php:66
actiondelete_attachmentincludes\classes\class-rio-image-query.php:67
filterwp_generate_attachment_metadataincludes\classes\class-rio-media-library.php:47
actionwr2x_retina_file_addedincludes\classes\class-rio-media-library.php:48
filterattachment_fields_to_editincludes\classes\class-rio-media-library.php:52
filtermanage_media_columnsincludes\classes\class-rio-media-library.php:53
actionmanage_media_custom_columnincludes\classes\class-rio-media-library.php:54
actionadmin_enqueue_scriptsincludes\classes\class-rio-media-library.php:55
actiondelete_attachmentincludes\classes\class-rio-media-library.php:56
actionwbcr/rio/optimize_template/optimized_percentincludes\classes\class-rio-media-library.php:57
actionwbcr/riop/queue_item_savedincludes\classes\class-rio-media-library.php:58
filterwbcr/riop/queue_item_save_execute_hookincludes\classes\class-rio-media-library.php:942
actionwbcr/rio/multisite_current_blogincludes\classes\class-rio-multisite.php:19
actionwbcr/rio/multisite_restore_blogincludes\classes\class-rio-multisite.php:20
actionadmin_noticesrobin-image-optimizer.php:182
actionnetwork_admin_noticesrobin-image-optimizer.php:183

Scheduled Events 1

wrio/cron/optimization_process
Maintenance & Trust

Robin Image Optimizer – Unlimited Image Optimization & WebP Converter Maintenance & Trust

Maintenance Signals

WordPress version tested6.9.4
Last updatedMar 12, 2026
PHP min version7.4
Downloads2.1M

Community Trust

Rating88/100
Number of ratings125
Active installs100K
Developer Profile

Robin Image Optimizer – Unlimited Image Optimization & WebP Converter Developer Profile

Themeisle

37 plugins · 2.2M total installs

76
trust score
Avg Security Score
96/100
Avg Patch Time
420 days
View full developer profile
Detection Fingerprints

How We Detect Robin Image Optimizer – Unlimited Image Optimization & WebP Converter

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

Asset Fingerprints

Asset Paths
/wp-content/plugins/robin-image-optimizer/admin/assets/js/meta-migrations.js
Script Paths
/wp-content/plugins/robin-image-optimizer/admin/assets/js/meta-migrations.js
Version Parameters
robin-image-optimizer/admin/assets/js/meta-migrations.js?ver=

HTML / DOM Fingerprints

HTML Comments
<!-- Plugin was heavy migrated into new architecture. Specifically, post meta was moved to separate table and therefore it is required to migrate all of them to new table. --><!-- This action prints a notice, which contains clickable link with JS onclick event, which invokes AJAX request to migrate these post metas to new table. --><!-- Once all post meta migrated, notice would not be shown anymore. -->
JS Globals
WRIO_PluginWbcr_Factory600_RequirementsRIO_Process_Queuewrio_is_clearfy_license_activatewbcr_rio_has_meta_to_migratewbcr_rio_migrate_postmeta_to_process_queue
FAQ

Frequently Asked Questions about Robin Image Optimizer – Unlimited Image Optimization & WebP Converter