Two Factor SMS Security & Risk Analysis

wordpress.org/plugins/two-factor-sms

Add SMS support to "Two Factor" feature as a plugin

100 active installs v0.1.1 PHP + WP 4.3+ Updated Aug 27, 2015
authenticationloginsecuritysmstwo-factor
85
A · Safe
CVEs total0
Unpatched0
Last CVENever
Safety Verdict

Is Two Factor SMS Safe to Use in 2026?

Generally Safe

Score 85/100

Two Factor SMS has no known CVEs and is actively maintained. It's a solid choice for most WordPress installations.

No known CVEs Updated 10yr ago
Risk Assessment

The "two-factor-sms" plugin version 0.1.1 presents a mixed security profile. On the positive side, the plugin demonstrates good practices in several areas. It fully utilizes prepared statements for all SQL queries, ensures all output is properly escaped, and the vulnerability history shows no recorded CVEs, suggesting a relatively clean past. Furthermore, the static analysis reveals a very small attack surface with no identified entry points requiring authentication checks, no AJAX handlers, REST API routes, shortcodes, or cron events that are exposed without proper checks. The presence of a capability check is also a positive indicator.

However, there are significant concerns. The most prominent is the use of the `create_function` PHP function, which is deprecated and considered a security risk due to its potential for code injection if not handled with extreme care. The static analysis also identified file operations and external HTTP requests, which, while not inherently insecure, represent potential vectors if not implemented with robust sanitization and validation, though the taint analysis did not reveal any issues here. The complete absence of nonce checks on potential entry points, although the attack surface is currently zero, is a notable weakness that could become a problem if the plugin evolves to include such features without proper security controls. The vulnerability history being empty is positive, but it doesn't negate the inherent risks present in the code itself.

In conclusion, while the plugin currently has a limited attack surface and a clean vulnerability history, the use of `create_function` introduces a significant, albeit latent, risk. The lack of nonce checks, even with a zero attack surface, is a concerning omission for a security-focused plugin. The overall security posture is thus cautious, with clear areas of strength but also critical points of concern that require attention, especially the use of the dangerous `create_function`.

Key Concerns

  • Use of dangerous function create_function
  • Missing nonce checks on potential entry points
Vulnerabilities
None known

Two Factor SMS Security Vulnerabilities

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

Two Factor SMS Code Analysis

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

Dangerous Functions Found

create_function$callback = create_function('$matches',includes\Twilio\Services\Twilio\Resource.php:74
create_function$callback = create_function('$matches', 'return strtoupper("$matches[2]");');includes\Twilio\Services\Twilio\Resource.php:93

Output Escaping

100% escaped11 total outputs
Attack Surface

Two Factor SMS Attack Surface

Entry Points0
Unprotected0
WordPress Hooks 6
actionplugins_loadedclass.two-factor-sms.php:59
actionshow_user_profileclass.two-factor-sms.php:75
actionedit_user_profileclass.two-factor-sms.php:76
actionpersonal_options_updateclass.two-factor-sms.php:77
actionedit_user_profile_updateclass.two-factor-sms.php:78
filtertwo_factor_providerstwo-factor-sms.php:21
Maintenance & Trust

Two Factor SMS Maintenance & Trust

Maintenance Signals

WordPress version tested4.3.34
Last updatedAug 27, 2015
PHP min version
Downloads5K

Community Trust

Rating0/100
Number of ratings0
Active installs100
Developer Profile

Two Factor SMS Developer Profile

Daisuke Takahashi

6 plugins · 270 total installs

84
trust score
Avg Security Score
85/100
Avg Patch Time
30 days
View full developer profile
Detection Fingerprints

How We Detect Two Factor SMS

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

Asset Fingerprints

Asset Paths
/wp-content/plugins/two-factor-sms/includes/Twilio/Services/Twilio.php

HTML / DOM Fingerprints

CSS Classes
twiliotwilio-sectionuser-twilio-sid-wrapuser-twilio-auth-token-wrapuser-twilio-sender-number-wrapuser-twilio-receiver-number-wrap
HTML Comments
<!-- Ensure only one instance of this class exists in memory at any one time. --><!-- Class constructor. --><!-- Returns the name of the provider. --><!-- Generate the user token. -->+9 more
Data Attributes
id="twilio-section"id="twilio-sid"id="twilio-auth-token"id="twilio-sender-number"id="twilio-receiver-number"name="two-factor-sms-code"+2 more
JS Globals
Services_Twilio
FAQ

Frequently Asked Questions about Two Factor SMS