WP Real Estate Security & Risk Analysis

wordpress.org/plugins/wp-real-estate

A Real Estate listing plugin that is feature packed, works with any theme and is easy to use. IDX/MLS integration to pull data automatically.

200 active installs v1.1.8 PHP 7.2+ WP 5.6+ Updated Jan 26, 2022
real-estate-listingreal-estate-listingsreal-estate-pluginreal-estate
85
A · Safe
CVEs total0
Unpatched0
Last CVENever
Safety Verdict

Is WP Real Estate Safe to Use in 2026?

Generally Safe

Score 85/100

WP Real Estate has no known CVEs and is actively maintained. It's a solid choice for most WordPress installations.

No known CVEs Updated 4yr ago
Risk Assessment

The wp-real-estate plugin v1.1.8 presents a mixed security posture. While it demonstrates good practices in certain areas, such as a high percentage of prepared SQL statements and a lack of known vulnerabilities, significant concerns exist regarding its attack surface and input sanitization.

The analysis highlights 14 AJAX handlers, with a notable 9 lacking authentication checks. This creates a substantial entry point for unauthenticated attackers. Furthermore, the taint analysis revealed 4 flows with unsanitized paths, although they were not classified as critical or high severity. This indicates potential for unexpected behavior or data manipulation if these paths are exploited.

The absence of any recorded CVEs is a positive sign, suggesting a generally stable codebase or diligent patching by developers in the past. However, the presence of unsanitized paths and numerous unprotected AJAX handlers warrants attention. The plugin has strengths in its SQL query handling and output escaping, but its overall security is hampered by these identified weaknesses, requiring careful consideration by users and administrators.

Key Concerns

  • Unprotected AJAX handlers
  • Flows with unsanitized paths
  • Limited capability checks on entry points
  • Limited nonce checks on entry points
Vulnerabilities
None known

WP Real Estate Security Vulnerabilities

No known vulnerabilities — this is a good sign.
Code Analysis
Analyzed Mar 16, 2026

WP Real Estate Code Analysis

Dangerous Functions
0
Raw SQL Queries
1
6 prepared
Unescaped Output
158
394 escaped
Nonce Checks
4
Capability Checks
4
File Operations
3
External Requests
1
Bundled Libraries
0

SQL Query Safety

86% prepared7 total queries

Output Escaping

71% escaped552 total outputs
Data Flows
4 unsanitized

Data Flow Analysis

5 flows4 with unsanitized paths
radius_query (includes\class-wre-search.php:499)
Source (user input) Sink (dangerous op) Sanitizer Transform Unsanitized Sanitized
Attack Surface
9 unprotected

WP Real Estate Attack Surface

Entry Points25
Unprotected9

AJAX Handlers 14

authwp_ajax_wre_idx_listing_deleteincludes\admin\class-wre-idx-import.php:412
authwp_ajax_wre_idx_listing_delete_allincludes\admin\class-wre-idx-import.php:433
authwp_ajax_wre_ajax_archive_listingincludes\admin\metaboxes\functions.php:223
authwp_ajax_wre_contact_formincludes\class-wre-contact-form.php:24
noprivwp_ajax_wre_contact_formincludes\class-wre-contact-form.php:25
authwp_ajax_wre_orderby_valueincludes\class-wre-search.php:20
noprivwp_ajax_wre_orderby_valueincludes\class-wre-search.php:21
authwp_ajax_wre_nearby_listingsincludes\functions-general.php:330
noprivwp_ajax_wre_nearby_listingsincludes\functions-general.php:331
authwp_ajax_wre_compare_listingsincludes\functions-general.php:453
noprivwp_ajax_wre_compare_listingsincludes\functions-general.php:454
authwp_ajax_wre_remove_compare_listingsincludes\functions-general.php:470
noprivwp_ajax_wre_remove_compare_listingsincludes\functions-general.php:471
authwp_ajax_mts_dismiss_realestate_noticeincludes\functions-general.php:592

Shortcodes 11

[wre_archive_agent] includes\class-wre-agent-rewrite.php:15
[wre_archive_listings] includes\class-wre-archive-listings.php:10
[wre_compare_listings] includes\class-wre-compare-listings.php:11
[wre_contact_form] includes\class-wre-contact-form.php:22
[wre_map] includes\class-wre-map.php:11
[wre_search] includes\class-wre-search.php:13
[wre_listing] includes\class-wre-shortcodes.php:10
[wre_listings] includes\class-wre-shortcodes.php:11
[wre_agent] includes\class-wre-shortcodes.php:12
[wre_nearby_listings] includes\class-wre-shortcodes.php:13
[wre_agents] includes\class-wre-shortcodes.php:14
WordPress Hooks 145
filtermanage_users_columnsincludes\admin\class-wre-admin-agent-columns.php:24
filtermanage_users_custom_columnincludes\admin\class-wre-admin-agent-columns.php:25
filtermanage_listing_posts_columnsincludes\admin\class-wre-admin-columns.php:54
actionmanage_listing_posts_custom_columnincludes\admin\class-wre-admin-columns.php:55
filtermanage_edit-listing_sortable_columnsincludes\admin\class-wre-admin-columns.php:58
filterrequestincludes\admin\class-wre-admin-columns.php:59
filterrequestincludes\admin\class-wre-admin-columns.php:60
filterrequestincludes\admin\class-wre-admin-columns.php:61
filterrequestincludes\admin\class-wre-admin-columns.php:62
actionrestrict_manage_postsincludes\admin\class-wre-admin-columns.php:65
actionparse_queryincludes\admin\class-wre-admin-columns.php:66
actionadmin_enqueue_scriptsincludes\admin\class-wre-admin-enqueues.php:32
actioncustomize_controls_print_stylesincludes\admin\class-wre-admin-enqueues.php:33
filtermanage_listing-enquiry_posts_columnsincludes\admin\class-wre-admin-enquiry-columns.php:33
actionmanage_listing-enquiry_posts_custom_columnincludes\admin\class-wre-admin-enquiry-columns.php:34
filtermanage_edit-listing-enquiry_sortable_columnsincludes\admin\class-wre-admin-enquiry-columns.php:37
filterrequestincludes\admin\class-wre-admin-enquiry-columns.php:38
filterrequestincludes\admin\class-wre-admin-enquiry-columns.php:39
filterrequestincludes\admin\class-wre-admin-enquiry-columns.php:40
filterrequestincludes\admin\class-wre-admin-enquiry-columns.php:41
actionrestrict_manage_postsincludes\admin\class-wre-admin-enquiry-columns.php:44
actionparse_queryincludes\admin\class-wre-admin-enquiry-columns.php:45
actionadmin_menuincludes\admin\class-wre-admin-menu.php:26
actionadmin_headincludes\admin\class-wre-admin-menu.php:27
actioncmb2_admin_initincludes\admin\class-wre-admin-metaboxes.php:19
filtercmb2-taxonomy_meta_boxesincludes\admin\class-wre-admin-metaboxes.php:20
actioncmb2_admin_initincludes\admin\class-wre-admin-options.php:6
actioninitincludes\admin\class-wre-admin.php:24
filteradmin_body_classincludes\admin\class-wre-admin.php:25
actionafter_wp_tiny_mceincludes\admin\class-wre-admin.php:26
filtermce_external_pluginsincludes\admin\class-wre-admin.php:53
filtermce_buttonsincludes\admin\class-wre-admin.php:56
actionadmin_menuincludes\admin\class-wre-idx-import.php:382
actionadmin_initincludes\admin\class-wre-idx-import.php:386
actionwre_new_post_cron_hookincludes\admin\class-wre-idx-import.php:400
actionadmin_enqueue_scriptsincludes\admin\class-wre-idx-import.php:402
actionadmin_initincludes\admin\class-wre-idx-import.php:579
actionadmin_initincludes\admin\class-wre-idx-import.php:582
actionwre_idx_updateincludes\admin\class-wre-idx-import.php:594
actionwre_idx_auto_importincludes\admin\class-wre-idx-import.php:605
filterwpincludes\class-wre-agent-rewrite.php:9
actioninitincludes\class-wre-agent-rewrite.php:10
filterquery_varsincludes\class-wre-agent-rewrite.php:11
filterauthor_linkincludes\class-wre-agent-rewrite.php:13
filteris_wreincludes\class-wre-agent-rewrite.php:24
actionshow_user_profileincludes\class-wre-agent.php:14
actionedit_user_profileincludes\class-wre-agent.php:15
actionpersonal_options_updateincludes\class-wre-agent.php:16
actionedit_user_profile_updateincludes\class-wre-agent.php:17
actionshow_user_profileincludes\class-wre-agent.php:20
actionedit_user_profileincludes\class-wre-agent.php:21
actionpersonal_options_updateincludes\class-wre-agent.php:22
actionedit_user_profile_updateincludes\class-wre-agent.php:23
filterwpincludes\class-wre-archive-listings.php:9
filteris_wreincludes\class-wre-archive-listings.php:19
filterwpincludes\class-wre-compare-listings.php:10
filteris_wreincludes\class-wre-compare-listings.php:20
actioninitincludes\class-wre-contact-form.php:20
actioncmb2_initincludes\class-wre-contact-form.php:21
filterwp_mail_content_typeincludes\class-wre-contact-form.php:23
actionwpmu_new_blogincludes\class-wre-install.php:285
actionadmin_initincludes\class-wre-install.php:319
actionadmin_noticesincludes\class-wre-install.php:345
filterwpincludes\class-wre-map.php:10
actionwp_enqueue_scriptsincludes\class-wre-map.php:12
filteris_wreincludes\class-wre-map.php:43
actioninitincludes\class-wre-post-status.php:15
actionadmin_footer-post.phpincludes\class-wre-post-status.php:16
actionadmin_footer-edit.phpincludes\class-wre-post-status.php:17
filterdisplay_post_statesincludes\class-wre-post-status.php:18
actioninitincludes\class-wre-post-types.php:30
actionpre_get_postsincludes\class-wre-query.php:17
actionwpincludes\class-wre-query.php:18
actionwpincludes\class-wre-query.php:19
filterquery_varsincludes\class-wre-search.php:16
actionpre_get_postsincludes\class-wre-search.php:18
filterwpincludes\class-wre-shortcodes.php:9
filteris_wreincludes\class-wre-shortcodes.php:32
filteris_single_wreincludes\class-wre-shortcodes.php:38
filterpost_classincludes\class-wre-shortcodes.php:140
actionwp_enqueue_scriptsincludes\frontend\class-wre-enqueues.php:68
actioninitincludes\frontend\class-wre-frontend.php:20
actionbody_classincludes\frontend\class-wre-frontend.php:21
filtertemplate_includeincludes\frontend\class-wre-template-loader.php:15
filterpost_classincludes\frontend\template-hooks.php:6
actionwre_before_main_contentincludes\frontend\template-hooks.php:12
actionwre_after_main_contentincludes\frontend\template-hooks.php:13
actionwre_sidebarincludes\frontend\template-hooks.php:19
actionwre_archive_page_contentincludes\frontend\template-hooks.php:25
actionwre_archive_page_contentincludes\frontend\template-hooks.php:26
actionwre_before_listings_loopincludes\frontend\template-hooks.php:28
actionwre_before_listings_loopincludes\frontend\template-hooks.php:29
actionwre_before_listings_loopincludes\frontend\template-hooks.php:30
actionwre_before_listings_loopincludes\frontend\template-hooks.php:31
actionwre_after_listings_loopincludes\frontend\template-hooks.php:33
actionwre_before_listings_loop_item_summaryincludes\frontend\template-hooks.php:39
actionwre_before_listings_loop_item_wrapperincludes\frontend\template-hooks.php:40
actionwre_after_listings_loop_item_wrapperincludes\frontend\template-hooks.php:41
actionwre_listings_loop_itemincludes\frontend\template-hooks.php:43
actionwre_listings_loop_itemincludes\frontend\template-hooks.php:44
actionwre_listings_loop_itemincludes\frontend\template-hooks.php:45
actionwre_listings_loop_itemincludes\frontend\template-hooks.php:46
actionwre_listings_loop_itemincludes\frontend\template-hooks.php:47
actionwre_listings_loop_itemincludes\frontend\template-hooks.php:48
actionwre_single_listing_galleryincludes\frontend\template-hooks.php:54
actionwre_single_listing_summaryincludes\frontend\template-hooks.php:56
actionwre_single_listing_summaryincludes\frontend\template-hooks.php:57
actionwre_single_listing_summaryincludes\frontend\template-hooks.php:58
actionwre_single_listing_summaryincludes\frontend\template-hooks.php:59
actionwre_single_listing_summaryincludes\frontend\template-hooks.php:60
actionwre_single_listing_summaryincludes\frontend\template-hooks.php:61
actionwre_single_listing_summaryincludes\frontend\template-hooks.php:62
actionwre_single_listing_contentincludes\frontend\template-hooks.php:64
actionwre_single_listing_contentincludes\frontend\template-hooks.php:65
actionwre_single_listing_contentincludes\frontend\template-hooks.php:66
actionwre_single_listing_contentincludes\frontend\template-hooks.php:67
actionwre_single_listing_contentincludes\frontend\template-hooks.php:68
actionwre_single_listing_sidebarincludes\frontend\template-hooks.php:70
actionwre_single_listing_sidebarincludes\frontend\template-hooks.php:71
actionwre_single_listing_sidebarincludes\frontend\template-hooks.php:72
actionwre_single_agent_introincludes\frontend\template-hooks.php:78
actionwre_single_agent_introincludes\frontend\template-hooks.php:79
actionwre_single_agent_summaryincludes\frontend\template-hooks.php:80
actionwre_single_agent_summaryincludes\frontend\template-hooks.php:81
actionwre_single_agent_summaryincludes\frontend\template-hooks.php:82
actionwre_single_agent_contentincludes\frontend\template-hooks.php:85
actionwre_single_agent_contentincludes\frontend\template-hooks.php:86
actionwre_single_agent_contentincludes\frontend\template-hooks.php:87
actionwre_single_agent_sidebarincludes\frontend\template-hooks.php:89
actionwre_single_agent_bottomincludes\frontend\template-hooks.php:91
filterget_the_archive_titleincludes\frontend\template-tags.php:259
filtereditable_rolesincludes\functions-agent.php:91
filtermap_meta_capincludes\functions-agent.php:116
filterget_avatarincludes\functions-agent.php:182
actioninitincludes\functions-general.php:180
actionafter_switch_themeincludes\functions-general.php:420
filterthe_contentincludes\functions-general.php:474
actionadmin_noticesincludes\functions-general.php:565
filterwp_privacy_personal_data_exportersincludes\functions-general.php:737
filterwp_privacy_personal_data_erasersincludes\functions-general.php:813
filtercmb2_override__wre_listing_agent_meta_saveincludes\functions-listing.php:321
filtercmb2_override__wre_listing_agent_meta_saveincludes\functions-listing.php:357
actionwidgets_initincludes\wre-widgets.php:14
actioninitwp-real-estate.php:97
filterplugin_row_metawp-real-estate.php:98

Scheduled Events 3

wre_new_post_cron_hook
wre_idx_update
wre_idx_auto_import
Maintenance & Trust

WP Real Estate Maintenance & Trust

Maintenance Signals

WordPress version tested5.9.13
Last updatedJan 26, 2022
PHP min version7.2
Downloads27K

Community Trust

Rating40/100
Number of ratings5
Active installs200
Developer Profile

WP Real Estate Developer Profile

MyThemeShop

7 plugins · 39K total installs

67
trust score
Avg Security Score
83/100
Avg Patch Time
472 days
View full developer profile
Detection Fingerprints

How We Detect WP Real Estate

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

Asset Fingerprints

Asset Paths
/wp-content/plugins/wp-real-estate/includes/admin/assets/css/wre-admin.css/wp-content/plugins/wp-real-estate/includes/admin/assets/css/wre-admin-rtl.css/wp-content/plugins/wp-real-estate/includes/admin/assets/js/jquery.geocomplete.min.js/wp-content/plugins/wp-real-estate/includes/admin/assets/js/wre-admin-geocomplete.js/wp-content/plugins/wp-real-estate/includes/admin/assets/js/wre-admin.js
Script Paths
https://maps.googleapis.com/maps/api/js?v=3.exp&libraries=places
Version Parameters
wp-real-estate/includes/admin/assets/css/wre-admin.css?ver=wp-real-estate/includes/admin/assets/css/wre-admin-rtl.css?ver=wp-real-estate/includes/admin/assets/js/jquery.geocomplete.min.js?ver=wp-real-estate/includes/admin/assets/js/wre-admin-geocomplete.js?ver=wp-real-estate/includes/admin/assets/js/wre-admin.js?ver=

HTML / DOM Fingerprints

CSS Classes
wre-admin-rtl
JS Globals
WREwre_is_theme_compatiblewre_map_keyis_wre_admin
FAQ

Frequently Asked Questions about WP Real Estate