ArchivioMD Security & Risk Analysis

wordpress.org/plugins/archiviomd

Cryptographic content integrity for WordPress — hashing, signing, RFC 3161 timestamps, Rekor transparency log, and DANE corroboration.

0 active installs v1.19.3 PHP 7.4+ WP 5.0+ Updated May 9, 2026
compliancecontent-integritycryptographydigital-signaturesecurity
100
A · Safe
CVEs total0
Unpatched0
Last CVENever
Safety Verdict

Is ArchivioMD Safe to Use in 2026?

Generally Safe

Score 100/100

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

No known CVEs Updated 3mo ago
Risk Assessment

The archiviomd plugin v1.19.0 exhibits a generally good security posture with several strong indicators. The high percentage of properly escaped output, comprehensive use of nonce and capability checks, and absence of dangerous functions are commendable. The plugin also shows a positive history with zero known vulnerabilities, suggesting a proactive approach to security by the developers.

However, there are notable areas of concern. The plugin presents a substantial attack surface with 92 entry points, and critically, 11 of these are unprotected, meaning they lack authentication or permission checks. This creates a significant risk, as unauthenticated users could potentially interact with these endpoints in unintended or malicious ways. The presence of 7 taint flows with unsanitized paths, while not classified as critical or high severity, still indicates potential for data manipulation or unintended code execution if user-supplied data is not handled with extreme care throughout the plugin's execution.

In conclusion, while the plugin has demonstrated a strong track record and implements many good security practices, the numerous unprotected entry points and unsanitized data flows represent a tangible risk that needs to be addressed. Developers should prioritize securing all exposed endpoints and rigorously validating all user-supplied input to mitigate these potential vulnerabilities.

Key Concerns

  • Unprotected AJAX handlers
  • Unprotected REST API routes
  • Taint flows with unsanitized paths
  • SQL queries not using prepared statements
Vulnerabilities
None known

ArchivioMD Security Vulnerabilities

No known vulnerabilities — this is a good sign.
Version History

ArchivioMD Release Timeline

v1.19.3Current
v1.19.2
v1.19.1
v1.19.0
v1.17.7
v1.17.6
v1.17.5
v1.17.4
v1.16.0
v1.7.0
Code Analysis
Analyzed Mar 17, 2026

ArchivioMD Code Analysis

Dangerous Functions
0
Raw SQL Queries
32
60 prepared
Unescaped Output
32
873 escaped
Nonce Checks
83
Capability Checks
92
File Operations
72
External Requests
17
Bundled Libraries
0

SQL Query Safety

65% prepared92 total queries

Output Escaping

96% escaped905 total outputs
Data Flows · Security
7 unsanitized

Data Flow Analysis

25 flows7 with unsanitized paths
<class-compliance-tools> (includes\class-compliance-tools.php:0)
Source (user input) Sink (dangerous op) Sanitizer Transform Unsanitized Sanitized
Attack Surface
11 unprotected

ArchivioMD Attack Surface

Entry Points92
Unprotected11

AJAX Handlers 88

authwp_ajax_archivio_post_download_verificationincludes\class-archivio-post.php:93
noprivwp_ajax_archivio_post_download_verificationincludes\class-archivio-post.php:94
authwp_ajax_archivio_post_get_audit_logsincludes\class-archivio-post.php:95
authwp_ajax_archivio_post_save_settingsincludes\class-archivio-post.php:96
authwp_ajax_archivio_post_fix_settingsincludes\class-archivio-post.php:97
authwp_ajax_archivio_post_export_audit_csvincludes\class-archivio-post.php:98
authwp_ajax_archivio_post_recreate_tableincludes\class-archivio-post.php:99
authwp_ajax_archivio_post_save_algorithmincludes\class-archivio-post.php:100
authwp_ajax_archivio_post_save_hmac_settingsincludes\class-archivio-post.php:101
authwp_ajax_archivio_post_save_extended_settingsincludes\class-archivio-post.php:102
authwp_ajax_archivio_rsa_save_settingsincludes\class-archivio-post.php:103
authwp_ajax_archivio_rsa_upload_keyincludes\class-archivio-post.php:104
authwp_ajax_archivio_rsa_upload_certincludes\class-archivio-post.php:105
authwp_ajax_archivio_rsa_clear_keyincludes\class-archivio-post.php:106
authwp_ajax_archivio_rsa_clear_certincludes\class-archivio-post.php:107
authwp_ajax_archivio_cms_save_settingsincludes\class-archivio-post.php:108
authwp_ajax_archivio_jsonld_save_settingsincludes\class-archivio-post.php:109
authwp_ajax_archivio_dane_save_settingsincludes\class-archivio-post.php:110
authwp_ajax_archivio_dane_health_checkincludes\class-archivio-post.php:111
authwp_ajax_archivio_dane_tlsa_checkincludes\class-archivio-post.php:112
authwp_ajax_archivio_dane_start_rotationincludes\class-archivio-post.php:113
authwp_ajax_archivio_dane_finish_rotationincludes\class-archivio-post.php:114
authwp_ajax_archivio_dane_dismiss_noticeincludes\class-archivio-post.php:115
authwp_ajax_archivio_canary_save_settingsincludes\class-canary-token.php:123
authwp_ajax_archivio_canary_decodeincludes\class-canary-token.php:124
authwp_ajax_archivio_canary_decode_urlincludes\class-canary-token.php:125
authwp_ajax_archivio_canary_save_dmcaincludes\class-canary-token.php:126
authwp_ajax_archivio_canary_dismiss_key_warnincludes\class-canary-token.php:127
authwp_ajax_archivio_fallback_key_dismissincludes\class-canary-token.php:128
authwp_ajax_archivio_canary_fetch_logincludes\class-canary-token.php:129
authwp_ajax_archivio_canary_clear_logincludes\class-canary-token.php:130
authwp_ajax_archivio_canary_brute_force_decodeincludes\class-canary-token.php:131
authwp_ajax_archivio_canary_brute_force_candidatesincludes\class-canary-token.php:132
authwp_ajax_archivio_canary_download_evidenceincludes\class-canary-token.php:133
authwp_ajax_archivio_canary_restamp_allincludes\class-canary-token.php:134
authwp_ajax_archivio_canary_dismiss_cache_noticeincludes\class-canary-token.php:135
authwp_ajax_mdsm_export_metadata_csvincludes\class-compliance-tools.php:60
authwp_ajax_mdsm_create_backup_archiveincludes\class-compliance-tools.php:61
authwp_ajax_mdsm_restore_dryrunincludes\class-compliance-tools.php:62
authwp_ajax_mdsm_execute_restoreincludes\class-compliance-tools.php:63
authwp_ajax_mdsm_verify_checksumsincludes\class-compliance-tools.php:64
authwp_ajax_mdsm_download_csvincludes\class-compliance-tools.php:65
authwp_ajax_mdsm_download_backupincludes\class-compliance-tools.php:66
authwp_ajax_mdsm_save_uninstall_cleanupincludes\class-compliance-tools.php:67
authwp_ajax_mdsm_export_compliance_jsonincludes\class-compliance-tools.php:68
authwp_ajax_mdsm_download_compliance_jsonincludes\class-compliance-tools.php:69
authwp_ajax_mdsm_download_export_sigincludes\class-compliance-tools.php:70
authwp_ajax_mdsm_dismiss_backup_noticeincludes\class-compliance-tools.php:74
authwp_ajax_archivio_dane_save_settingsincludes\class-dane-corroboration.php:162
authwp_ajax_archivio_dane_health_checkincludes\class-dane-corroboration.php:163
authwp_ajax_archivio_dane_tlsa_checkincludes\class-dane-corroboration.php:164
authwp_ajax_archivio_dane_start_rotationincludes\class-dane-corroboration.php:165
authwp_ajax_archivio_dane_finish_rotationincludes\class-dane-corroboration.php:166
authwp_ajax_archivio_dane_dismiss_noticeincludes\class-dane-corroboration.php:167
authwp_ajax_archivio_ecdsa_save_settingsincludes\class-ecdsa-signing.php:141
authwp_ajax_archivio_ecdsa_upload_keyincludes\class-ecdsa-signing.php:142
authwp_ajax_archivio_ecdsa_upload_certincludes\class-ecdsa-signing.php:143
authwp_ajax_archivio_ecdsa_upload_caincludes\class-ecdsa-signing.php:144
authwp_ajax_archivio_ecdsa_clear_keyincludes\class-ecdsa-signing.php:145
authwp_ajax_archivio_ecdsa_clear_certincludes\class-ecdsa-signing.php:146
authwp_ajax_archivio_ecdsa_clear_caincludes\class-ecdsa-signing.php:147
authwp_ajax_archivio_post_save_ed25519_settingsincludes\class-ed25519-signing.php:94
authwp_ajax_mdsm_anchor_save_settingsincludes\class-external-anchoring.php:846
authwp_ajax_mdsm_anchor_test_connectionincludes\class-external-anchoring.php:847
authwp_ajax_mdsm_anchor_clear_queueincludes\class-external-anchoring.php:848
authwp_ajax_mdsm_anchor_queue_statusincludes\class-external-anchoring.php:849
authwp_ajax_mdsm_anchor_get_logincludes\class-external-anchoring.php:850
authwp_ajax_mdsm_anchor_clear_logincludes\class-external-anchoring.php:851
authwp_ajax_mdsm_anchor_download_logincludes\class-external-anchoring.php:852
authwp_ajax_mdsm_anchor_download_csvincludes\class-external-anchoring.php:853
authwp_ajax_mdsm_anchor_download_tsr_zipincludes\class-external-anchoring.php:854
authwp_ajax_mdsm_anchor_dismiss_fail_noticeincludes\class-external-anchoring.php:855
authwp_ajax_mdsm_anchor_rekor_verifyincludes\class-external-anchoring.php:856
authwp_ajax_archivio_slhdsa_save_settingsincludes\class-slhdsa-signing.php:857
authwp_ajax_archivio_slhdsa_generate_keypairincludes\class-slhdsa-signing.php:858
authwp_ajax_mdsm_dismiss_permalink_noticemeta-documentation-seo-manager.php:91
authwp_ajax_mdsm_save_filemeta-documentation-seo-manager.php:95
authwp_ajax_mdsm_delete_filemeta-documentation-seo-manager.php:96
authwp_ajax_mdsm_get_file_contentmeta-documentation-seo-manager.php:97
authwp_ajax_mdsm_get_file_countsmeta-documentation-seo-manager.php:98
authwp_ajax_mdsm_generate_sitemapmeta-documentation-seo-manager.php:99
authwp_ajax_mdsm_generate_htmlmeta-documentation-seo-manager.php:100
authwp_ajax_mdsm_delete_htmlmeta-documentation-seo-manager.php:101
authwp_ajax_mdsm_check_html_statusmeta-documentation-seo-manager.php:102
authwp_ajax_mdsm_save_public_indexmeta-documentation-seo-manager.php:103
authwp_ajax_mdsm_create_custom_markdownmeta-documentation-seo-manager.php:104
authwp_ajax_mdsm_delete_custom_markdownmeta-documentation-seo-manager.php:105
authwp_ajax_mdsm_get_changelogmeta-documentation-seo-manager.php:106

REST API Routes 2

POST/wp-json/content/v1/verifyincludes\class-canary-token.php:3977
POST/wp-json/content/v1/verify/fullincludes\class-canary-token.php:3994

Shortcodes 2

[hash_verify] includes\class-archivio-post.php:91
[archiviomd_documents] includes\class-public-index.php:21
WordPress Hooks 68
actionadmin_menuincludes\class-archivio-post.php:78
actionadmin_enqueue_scriptsincludes\class-archivio-post.php:79
actionadmin_noticesincludes\class-archivio-post.php:80
actionadmin_noticesincludes\class-archivio-post.php:81
actionsave_postincludes\class-archivio-post.php:84
actionadd_meta_boxesincludes\class-archivio-post.php:85
actionsave_postincludes\class-archivio-post.php:86
filterthe_contentincludes\class-archivio-post.php:88
filterthe_titleincludes\class-archivio-post.php:89
actionwp_enqueue_scriptsincludes\class-archivio-post.php:117
actiontemplate_redirectincludes\class-cache-compat.php:101
actiontemplate_redirectincludes\class-cache-compat.php:106
filterwp_cache_ob_callbackincludes\class-cache-compat.php:111
filterw3tc_process_contentincludes\class-cache-compat.php:112
filterlitespeed_buffer_outputincludes\class-cache-compat.php:113
filterrocket_bufferincludes\class-cache-compat.php:114
filterthe_contentincludes\class-canary-token.php:109
filterthe_excerptincludes\class-canary-token.php:110
filterthe_content_feedincludes\class-canary-token.php:111
filterrest_prepare_postincludes\class-canary-token.php:113
filterrest_prepare_pageincludes\class-canary-token.php:114
filterrest_prepare_attachmentincludes\class-canary-token.php:115
actionadmin_menuincludes\class-canary-token.php:118
actionadmin_enqueue_scriptsincludes\class-canary-token.php:119
actionadmin_noticesincludes\class-canary-token.php:120
actionadmin_noticesincludes\class-canary-token.php:121
actionrest_api_initincludes\class-canary-token.php:137
actionadded_post_metaincludes\class-canary-token.php:139
actionupdated_post_metaincludes\class-canary-token.php:140
actiondeleted_post_metaincludes\class-canary-token.php:141
actionadd_meta_boxesincludes\class-canary-token.php:143
actionhttp_api_curlincludes\class-canary-token.php:3821
actionsave_postincludes\class-cms-signing.php:48
actionadd_attachmentincludes\class-cms-signing.php:49
actionadmin_menuincludes\class-compliance-tools.php:57
actionadmin_noticesincludes\class-compliance-tools.php:73
filtercron_schedulesincludes\class-dane-corroboration.php:170
actionadmin_noticesincludes\class-dane-corroboration.php:179
actionsave_postincludes\class-ecdsa-signing.php:138
actionadd_attachmentincludes\class-ecdsa-signing.php:139
actionsave_postincludes\class-ed25519-signing.php:88
actionadd_attachmentincludes\class-ed25519-signing.php:91
filtercron_schedulesincludes\class-external-anchoring.php:828
actioninitincludes\class-external-anchoring.php:835
actionsave_postincludes\class-external-anchoring.php:840
actionpublish_future_postincludes\class-external-anchoring.php:843
actionadmin_menuincludes\class-external-anchoring.php:860
actionadmin_enqueue_scriptsincludes\class-external-anchoring.php:861
actionsave_postincludes\class-jsonld-signing.php:58
actionadd_attachmentincludes\class-jsonld-signing.php:59
actionwp_enqueue_scriptsincludes\class-public-index.php:24
actionrest_api_initincludes\class-rest-verify.php:50
actionsave_postincludes\class-rsa-signing.php:68
actionadd_attachmentincludes\class-rsa-signing.php:69
actionsave_postincludes\class-slhdsa-signing.php:854
actionadd_attachmentincludes\class-slhdsa-signing.php:855
actionadmin_menumeta-documentation-seo-manager.php:88
actionadmin_enqueue_scriptsmeta-documentation-seo-manager.php:89
actionadmin_noticesmeta-documentation-seo-manager.php:90
actionsave_postmeta-documentation-seo-manager.php:109
actiondelete_postmeta-documentation-seo-manager.php:110
actioninitmeta-documentation-seo-manager.php:113
filterquery_varsmeta-documentation-seo-manager.php:114
actiontemplate_redirectmeta-documentation-seo-manager.php:115
actioninitmeta-documentation-seo-manager.php:120
actionplugins_loadedmeta-documentation-seo-manager.php:1100
actionplugins_loadedmeta-documentation-seo-manager.php:1116
actionplugins_loadedmeta-documentation-seo-manager.php:1125
Maintenance & Trust

ArchivioMD Maintenance & Trust

Maintenance Signals

WordPress version tested6.9.5
Last updatedMay 9, 2026
PHP min version7.4
Downloads720

Community Trust

Rating0/100
Number of ratings0
Active installs0
Developer Profile

ArchivioMD Developer Profile

mtnviewpro

2 plugins · 0 total installs

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

How We Detect ArchivioMD

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

Asset Fingerprints

Asset Paths
/wp-content/plugins/archiviomd/assets/css/admin.css/wp-content/plugins/archiviomd/assets/js/admin.js
Script Paths
/wp-content/plugins/archiviomd/assets/js/admin.js
Version Parameters
archiviomd/assets/css/admin.css?ver=archiviomd/assets/js/admin.js?ver=

HTML / DOM Fingerprints

Data Attributes
data-file-pathdata-file-namedata-file-sizedata-last-modifieddata-line-numberdata-canary-token-id
JS Globals
mdsmData
REST Endpoints
/wp-json/archiviomd/v1/files/wp-json/archiviomd/v1/files/meta/wp-json/archiviomd/v1/sitemap/wp-json/archiviomd/v1/html/wp-json/archiviomd/v1/status/wp-json/archiviomd/v1/changelog/wp-json/archiviomd/v1/canary
FAQ

Frequently Asked Questions about ArchivioMD