Multilingual Polylang Security & Risk Analysis

wordpress.org/plugins/multilingual-polylang

This plugin, which requires polylang

0 active installs v1.0.1 PHP + WP 4.0+ Updated Unknown
bilingualmultilingualpolylangtranslatetranslation
100
A · Safe
CVEs total0
Unpatched0
Last CVENever
Download
Safety Verdict

Is Multilingual Polylang Safe to Use in 2026?

Generally Safe

Score 100/100

Multilingual Polylang has no known CVEs and is actively maintained. It's a solid choice for most WordPress installations.

No known CVEs
Risk Assessment

The multilingual-polylang plugin v1.0.1 exhibits a seemingly strong security posture based on the provided static analysis. There are no identified entry points such as AJAX handlers, REST API routes, or shortcodes that are exposed without authentication or permission checks. Furthermore, all SQL queries are correctly prepared, output is properly escaped, and there are no file operations or external HTTP requests, which significantly reduces the attack surface. The absence of any recorded vulnerabilities (CVEs) in its history is also a positive indicator.

However, a critical concern arises from the presence of the `unserialize` function. Without proper sanitization of the data being unserialized, this function can lead to arbitrary object injection vulnerabilities, potentially allowing an attacker to execute code or manipulate the application's state. The lack of nonce checks and capability checks, while not directly tied to an attack surface in this specific version's analysis, represents a missed opportunity for defense-in-depth. The absence of taint analysis results is also noted, as this could provide further insights into potential data flow vulnerabilities that might not be apparent from function calls alone.

In conclusion, while the plugin demonstrates good practices in areas like SQL and output sanitization and boasts a clean vulnerability history, the presence of an unsanitized `unserialize` function is a significant risk that needs immediate attention. The lack of explicit authorization checks on potential entry points (even if currently zero) could become a problem if new features are added without adhering to security best practices.

Key Concerns

  • Dangerous function unserialize without clear sanitization
  • No nonce checks implemented
  • No capability checks implemented
Vulnerabilities
None known

Multilingual Polylang Security Vulnerabilities

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

Multilingual Polylang Code Analysis

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

Dangerous Functions Found

unserialize$trans_post = unserialize( $translation->description );multilingual-polylang.php:86
Attack Surface

Multilingual Polylang Attack Surface

Entry Points0
Unprotected0
WordPress Hooks 2
filterpll_check_canonical_urlmultilingual-polylang.php:24
actionplugins_loadedmultilingual-polylang.php:102
Maintenance & Trust

Multilingual Polylang Maintenance & Trust

Maintenance Signals

WordPress version tested4.7.32
Last updatedUnknown
PHP min version
Downloads1K

Community Trust

Rating0/100
Number of ratings0
Active installs0
Developer Profile

Multilingual Polylang Developer Profile

captivateaudio

4 plugins · 1K total installs

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

How We Detect Multilingual Polylang

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

Asset Fingerprints

HTML / DOM Fingerprints

HTML Comments
<!-- Don't redirect URLs in 'wrong' language so that we can * have article in one language and interface in another --><!-- https://wordpress.org/support/topic/show-posts-from-other-languages/?replies=18 * by way of * http://wordpress.syllogic.in/2014/08/going-multi-lingual-with-polylang/ --><!-- * A replacement for the WordPress function get_permalink() * * This will replace the language in a post URL so that a post can be viewed * in a language different to that of the rest of the interface. -->
FAQ

Frequently Asked Questions about Multilingual Polylang