Pym.js Embeds Security & Risk Analysis

wordpress.org/plugins/pym-shortcode

A WordPress block and shortcode for embedding iframes that are responsive horizontally and vertically, using the NPR Visuals Team's Pym.js.

90 active installs v1.3.2.4 PHP 5.3+ WP 3.0.1+ Updated Mar 26, 2020
embedsiframejavascriptresponsiveshortcode
85
A · Safe
CVEs total0
Unpatched0
Last CVENever
Safety Verdict

Is Pym.js Embeds Safe to Use in 2026?

Generally Safe

Score 85/100

Pym.js Embeds has no known CVEs and is actively maintained. It's a solid choice for most WordPress installations.

No known CVEs Updated 6yr ago
Risk Assessment

The pym-shortcode plugin version 1.3.2.4 exhibits a generally strong security posture based on the provided static analysis. The absence of known CVEs and a clean vulnerability history suggests a consistent focus on security by the developers. The code analysis indicates good practices, with all SQL queries using prepared statements and a high percentage of output being properly escaped. There are no dangerous functions, file operations, or external HTTP requests, further limiting potential attack vectors. The plugin also demonstrates a low attack surface, with only one shortcode and no AJAX handlers or REST API routes that are exposed without authentication. However, the complete lack of nonce checks and the single capability check on its sole entry point (the shortcode) present a notable concern. While the taint analysis did not reveal any immediate issues, the absence of comprehensive checks could still allow for vulnerabilities if input is not handled carefully within the shortcode's processing, especially if it were to interact with user-supplied data in the future or if new entry points were added without proper security. This plugin is strong in many areas but has a potential weakness in input validation and authorization for its shortcode functionality.

Key Concerns

  • Missing nonce checks on shortcode
  • Only one capability check for shortcode
Vulnerabilities
None known

Pym.js Embeds Security Vulnerabilities

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

Pym.js Embeds Code Analysis

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

Output Escaping

97% escaped36 total outputs
Attack Surface

Pym.js Embeds Attack Surface

Entry Points1
Unprotected0

Shortcodes 1

[pym] inc\shortcode.php:104
WordPress Hooks 8
actionrender_blockinc\amp.php:39
actiondo_shortcode_taginc\amp.php:61
actioninitinc\block.php:73
actionwp_footerinc\class-pymsrc-output.php:41
actionadmin_menuinc\info-page.php:27
actionadmin_menuinc\settings-page.php:66
actionadmin_initinc\settings-page.php:142
actionwp_footerinc\shortcode.php:136
Maintenance & Trust

Pym.js Embeds Maintenance & Trust

Maintenance Signals

WordPress version tested5.4.19
Last updatedMar 26, 2020
PHP min version5.3
Downloads4K

Community Trust

Rating0/100
Number of ratings0
Active installs90
Developer Profile

Pym.js Embeds Developer Profile

Automattic

213 plugins · 19.2M total installs

73
trust score
Avg Security Score
92/100
Avg Patch Time
1384 days
View full developer profile
Detection Fingerprints

How We Detect Pym.js Embeds

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

Asset Fingerprints

Asset Paths
/wp-content/plugins/pym-shortcode/js/pym.min.js/wp-content/plugins/pym-shortcode/css/shortcode.css
Script Paths
/wp-content/plugins/pym-shortcode/js/pym.min.js
Version Parameters
pym-shortcode/js/pym.min.js?ver=pym-shortcode/css/shortcode.css?ver=

HTML / DOM Fingerprints

CSS Classes
pym
Data Attributes
data-pym-iddata-pym-src
JS Globals
pym_idPymsrc_Output
Shortcode Output
<div id="" class="pym"></div>
FAQ

Frequently Asked Questions about Pym.js Embeds