TallyKit Security & Risk Analysis

wordpress.org/plugins/tallykit

A collection of features and functionality for Tally Framework Theme.

10 active installs v5.9 PHP + WP 4+ Updated Jul 9, 2016
faqpeopleportfolioslideshowtestimonials
85
A · Safe
CVEs total0
Unpatched0
Last CVENever
Safety Verdict

Is TallyKit Safe to Use in 2026?

Generally Safe

Score 85/100

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

No known CVEs Updated 9yr ago
Risk Assessment

The TallyKit plugin version 5.9 presents a mixed security posture. On the positive side, the plugin demonstrates good practices by exclusively using prepared statements for SQL queries and includes a decent number of nonce checks, suggesting some awareness of security principles. The absence of known CVEs and common vulnerability types in its history is also a positive indicator, implying a generally stable security record.

However, several significant concerns arise from the static analysis. The presence of five unprotected AJAX handlers opens a substantial attack vector for unauthenticated users. Furthermore, the taint analysis reveals two flows with unsanitized paths, both classified as high severity. These, combined with a worrying 11% rate of properly escaped output across 734 output operations, indicate potential for cross-site scripting (XSS) and other injection vulnerabilities.

In conclusion, while TallyKit benefits from a clean vulnerability history and sound SQL handling, the unprotected AJAX endpoints and high-severity taint flows are critical weaknesses that require immediate attention. The low rate of proper output escaping further amplifies these risks. Addressing these specific areas should be the priority for improving the plugin's overall security.

Key Concerns

  • Unprotected AJAX handlers present
  • High severity unsanitized taint flows
  • Low percentage of properly escaped output
  • Dangerous function 'unserialize' used
Vulnerabilities
None known

TallyKit Security Vulnerabilities

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

TallyKit Code Analysis

Dangerous Functions
4
Raw SQL Queries
0
10 prepared
Unescaped Output
654
80 escaped
Nonce Checks
10
Capability Checks
6
File Operations
12
External Requests
0
Bundled Libraries
1

Dangerous Functions Found

unserialize$option_data = unserialize( $_POST['import_data'] );acoc\classes\setting-api-class.php:116
unserialize$datetime = unserialize( $meta_value );acoc\vandors\cmb\helpers\cmb_Meta_Box_types.php:486
unserialize$new_data = unserialize( acoc_decode( $_POST['tallykit_parallax_import_page_data'] ) );components\parallax\parallax-export-import.php:125
unserialize$options = unserialize( tallykit_decode( $options_file ) );includes\custom-functions.php:128

Bundled Libraries

TinyMCE

SQL Query Safety

100% prepared10 total queries

Output Escaping

11% escaped734 total outputs
Data Flows
2 unsanitized

Data Flow Analysis

6 flows2 with unsanitized paths
save (acoc\classes\setting-api-class.php:97)
Source (user input) Sink (dangerous op) Sanitizer Transform Unsanitized Sanitized
Attack Surface
5 unprotected

TallyKit Attack Surface

Entry Points56
Unprotected5

AJAX Handlers 5

authwp_ajax_cmb_oembed_handleracoc\vandors\cmb\init.php:1045
noprivwp_ajax_cmb_oembed_handleracoc\vandors\cmb\init.php:1046
authwp_ajax_tallykit_importer_demo_importcomponents\importer\importer.php:8
authwp_ajax_tallykit_dynamic_cssincludes\dynamic-css-loader.php:13
noprivwp_ajax_tallykit_dynamic_cssincludes\dynamic-css-loader.php:14

Shortcodes 51

[tk_buddypress_members] components\buddypress\buddypress-shortcodes.php:12
[tk_buddypress_groups] components\buddypress\buddypress-shortcodes.php:45
[tk_doc_archive] components\doc\doc-shortcodes.php:12
[tk_doc_single] components\doc\doc-shortcodes.php:92
[frontpage] components\FrontPage\FrontPage.php:77
[tk_album] components\gallery\gallery-shortcodes.php:12
[tk_gallery] components\gallery\gallery-shortcodes.php:111
[tk_logo_grid] components\logo\logo-shortcodes.php:12
[tk_logo_carousel] components\logo\logo-shortcodes.php:103
[tk_logo_slideshow] components\logo\logo-shortcodes.php:199
[tk_parallax] components\parallax\parallax-shortcodes.php:12
[tk_people_grid] components\people\people-shortcodes.php:12
[tk_people_carousel] components\people\people-shortcodes.php:104
[tk_people_slideshow] components\people\people-shortcodes.php:201
[tk_people_single] components\people\people-shortcodes.php:301
[tk_portfolio_grid] components\portfolio\portfolio-shortcodes.php:12
[tk_portfolio_carousel] components\portfolio\portfolio-shortcodes.php:127
[tk_portfolio_slideshow] components\portfolio\portfolio-shortcodes.php:247
[tk_portfolio_list] components\portfolio\portfolio-shortcodes.php:369
[tk_portfolio_single] components\portfolio\portfolio-shortcodes.php:480
[tk_row] components\shortcodes\shortcodes-shortcodes.php:13
[ato] components\shortcodes\shortcodes-shortcodes.php:76
[tk_accordion] components\shortcodes\shortcodes-shortcodes.php:87
[tk_accordion_item] components\shortcodes\shortcodes-shortcodes.php:98
[tk_alert] components\shortcodes\shortcodes-shortcodes.php:120
[tk_button] components\shortcodes\shortcodes-shortcodes.php:147
[tk_checklist] components\shortcodes\shortcodes-shortcodes.php:192
[tk_column] components\shortcodes\shortcodes-shortcodes.php:224
[tk_divider] components\shortcodes\shortcodes-shortcodes.php:265
[tk_dropcap] components\shortcodes\shortcodes-shortcodes.php:289
[tk_icon] components\shortcodes\shortcodes-shortcodes.php:306
[tk_highlight] components\shortcodes\shortcodes-shortcodes.php:342
[tk_lightbox] components\shortcodes\shortcodes-shortcodes.php:360
[tk_map] components\shortcodes\shortcodes-shortcodes.php:385
[tk_blog_grid] components\shortcodes\shortcodes-shortcodes.php:461
[tk_progress_bar] components\shortcodes\shortcodes-shortcodes.php:585
[tk_counter_box] components\shortcodes\shortcodes-shortcodes.php:610
[tk_counter_circle] components\shortcodes\shortcodes-shortcodes.php:641
[tk_tab] components\shortcodes\shortcodes-shortcodes.php:688
[tk_tab_item] components\shortcodes\shortcodes-shortcodes.php:714
[tk_callout] components\shortcodes\shortcodes-shortcodes.php:727
[tk_toggle] components\shortcodes\shortcodes-shortcodes.php:760
[tk_tooltip] components\shortcodes\shortcodes-shortcodes.php:776
[tk_video] components\shortcodes\shortcodes-shortcodes.php:794
[tk_audio] components\shortcodes\shortcodes-shortcodes.php:821
[tk_blog_timeline] components\shortcodes\shortcodes-shortcodes.php:849
[tk_heading] components\shortcodes\shortcodes-shortcodes.php:953
[tk_slideshow] components\slideshow\slideshow-shortcodes.php:11
[tk_testimonial_grid] components\testimonial\testimonial-shortcodes.php:12
[tk_testimonial_carousel] components\testimonial\testimonial-shortcodes.php:104
[tk_testimonial_slideshow] components\testimonial\testimonial-shortcodes.php:200
WordPress Hooks 154
actionactivated_pluginacoc\acoc.php:92
actionadd_meta_boxesacoc\classes\metabox-register-class.php:28
actionsave_postacoc\classes\metabox-register-class.php:29
filterpre_get_postsacoc\classes\post-column-class.php:66
actionrestrict_manage_postsacoc\classes\post-taxonomy-filter.php:20
actioninitacoc\classes\post-type-register-class.php:13
actionwp_enqueue_scriptsacoc\classes\script-register-class.php:25
actionadmin_menuacoc\classes\setting-api-class.php:26
actionadmin_initacoc\classes\setting-api-class.php:28
actioninitacoc\classes\taxonomy-register-class.php:13
filtertemplate_includeacoc\classes\theme-compat-class.php:30
filterthe_contentacoc\classes\theme-compat-class.php:31
actionpre_get_postsacoc\classes\theme-compat-class.php:32
actionloop_startacoc\classes\theme-compat-class.php:33
filterthe_titleacoc\classes\theme-compat-class.php:144
filtertemplate_includeacoc\classes\theme-compat-class2.php:12
filtertemplate_includeacoc\classes\theme-compat-class2.php:13
filtertemplate_includeacoc\classes\theme-compat-class2.php:14
filterthe_contentacoc\classes\theme-compat-class2.php:16
filterthe_contentacoc\classes\theme-compat-class2.php:17
filterthe_contentacoc\classes\theme-compat-class2.php:18
actionpre_get_postsacoc\classes\theme-compat-class2.php:20
actionpre_get_postsacoc\classes\theme-compat-class2.php:21
actionmedia_buttonsacoc\classes\tinymce-register-class.php:28
actionadmin_footeracoc\classes\tinymce-register-class.php:29
actionload-post.phpacoc\demos\metabox-demo.php:42
actionload-post-new.phpacoc\demos\metabox-demo.php:43
actionadmin_enqueue_scriptsacoc\fields\color.php:9
actionadmin_enqueue_scriptsacoc\fields\image_upload.php:14
actionadmin_enqueue_scriptsacoc\fields\parallax.php:11
actionadmin_footeracoc\fields\parallax.php:12
filteroembed_resultacoc\functions.php:4
filteroembed_resultacoc\functions.php:19
filteroembed_resultacoc\functions.php:31
filteroembed_resultacoc\functions.php:43
filteroembed_resultacoc\functions.php:55
filteroembed_resultacoc\functions.php:68
actionwp_enqueue_scriptsacoc\load-extranal-scripts.php:2
actionadmin_enqueue_scriptsacoc\load-extranal-scripts.php:69
filterget_post_metadataacoc\vandors\cmb\helpers\cmb_Meta_Box_ajax.php:112
filterupdate_post_metadataacoc\vandors\cmb\helpers\cmb_Meta_Box_ajax.php:114
filtercmb_show_onacoc\vandors\cmb\init.php:171
actionadmin_enqueue_scriptsacoc\vandors\cmb\init.php:175
actionadmin_menuacoc\vandors\cmb\init.php:178
actionadd_attachmentacoc\vandors\cmb\init.php:179
actionedit_attachmentacoc\vandors\cmb\init.php:180
actionsave_postacoc\vandors\cmb\init.php:181
actionadmin_enqueue_scriptsacoc\vandors\cmb\init.php:182
actionadmin_headacoc\vandors\cmb\init.php:185
actionshow_user_profileacoc\vandors\cmb\init.php:200
actionedit_user_profileacoc\vandors\cmb\init.php:201
actionpersonal_options_updateacoc\vandors\cmb\init.php:203
actionedit_user_profile_updateacoc\vandors\cmb\init.php:204
actionadmin_headacoc\vandors\cmb\init.php:207
actiondelete_attachmentacoc\vandors\mr-image-resize\mr-image-resize.php:23
actionwp_headcomponents\buddypress\buddypress-color.php:2
actionwp_enqueue_scriptscomponents\buddypress\buddypress-script.php:10
actiontallykit_dynamic_csscomponents\doc\doc-color.php:2
actionadmin_initcomponents\doc\doc-metabox.php:11
actionwp_enqueue_scriptscomponents\doc\doc-script.php:10
actiontally_template_initcomponents\doc\doc-template.php:88
actiontally_loopcomponents\doc\doc-template.php:93
filtertally_ot_page_metaboxcomponents\doc\doc-template.php:97
filteroption_tree_settings_argscomponents\FrontPage\blocks\accordion\form.php:11
filteroption_tree_settings_argscomponents\FrontPage\blocks\audio\form.php:11
filteroption_tree_settings_argscomponents\FrontPage\blocks\blog_grid\form.php:11
filteroption_tree_settings_argscomponents\FrontPage\blocks\callout\form.php:11
filteroption_tree_settings_argscomponents\FrontPage\blocks\gallery_archive\form.php:11
filteroption_tree_settings_argscomponents\FrontPage\blocks\gallery_single\form.php:11
filteroption_tree_settings_argscomponents\FrontPage\blocks\logo_carousel\form.php:11
filteroption_tree_settings_argscomponents\FrontPage\blocks\logo_grid\form.php:11
filteroption_tree_settings_argscomponents\FrontPage\blocks\logo_slideshow\form.php:11
filteroption_tree_settings_argscomponents\FrontPage\blocks\map\form.php:11
filteroption_tree_settings_argscomponents\FrontPage\blocks\people_carousel\form.php:11
filteroption_tree_settings_argscomponents\FrontPage\blocks\people_grid\form.php:11
filteroption_tree_settings_argscomponents\FrontPage\blocks\people_slideshow\form.php:11
filteroption_tree_settings_argscomponents\FrontPage\blocks\portfolio_carousel\form.php:11
filteroption_tree_settings_argscomponents\FrontPage\blocks\portfolio_grid\form.php:11
filteroption_tree_settings_argscomponents\FrontPage\blocks\portfolio_slideshow\form.php:11
filteroption_tree_settings_argscomponents\FrontPage\blocks\slideshow\form.php:11
filteroption_tree_settings_argscomponents\FrontPage\blocks\tab\form.php:11
filteroption_tree_settings_argscomponents\FrontPage\blocks\testimonial_carousel\form.php:11
filteroption_tree_settings_argscomponents\FrontPage\blocks\testimonial_grid\form.php:11
filteroption_tree_settings_argscomponents\FrontPage\blocks\testimonial_slideshow\form.php:11
filteroption_tree_settings_argscomponents\FrontPage\blocks\text\form.php:11
filteroption_tree_settings_argscomponents\FrontPage\blocks\textblock\form.php:11
filteroption_tree_settings_argscomponents\FrontPage\blocks\toggle\form.php:11
filteroption_tree_settings_argscomponents\FrontPage\blocks\video\form.php:11
filtertally_main_classcomponents\FrontPage\FrontPage.php:92
filtertally_sitebar_layout_optioncomponents\FrontPage\FrontPage.php:98
filtertally_is_subheadercomponents\FrontPage\FrontPage.php:104
filtertally_is_comment_templatecomponents\FrontPage\FrontPage.php:112
actionwp_headcomponents\FrontPage\FrontPage.php:126
actiontally_loopcomponents\FrontPage\FrontPage.php:130
actionwp_enqueue_scriptscomponents\FrontPage\FrontPage.php:143
actionadmin_enqueue_scriptscomponents\FrontPage\FrontPage.php:149
filteroption_tree_settings_argscomponents\FrontPage\sections-settings.php:5
filteroption_tree_settings_argscomponents\FrontPage\sections-settings.php:44
actiontallykit_dynamic_csscomponents\FrontPage\sections-settings.php:45
actiontallykit_dynamic_csscomponents\gallery\gallery-color.php:2
actionadmin_initcomponents\gallery\gallery-metabox.php:10
actionwp_enqueue_scriptscomponents\gallery\gallery-script.php:10
actiontally_template_initcomponents\gallery\gallery-template.php:93
actiontally_loopcomponents\gallery\gallery-template.php:97
filtertally_ot_page_metaboxcomponents\gallery\gallery-template.php:101
actionadmin_enqueue_scriptscomponents\importer\importer.php:126
actionadmin_menucomponents\importer\importer.php:132
filterimport_post_meta_keycomponents\importer\inc\wordpress-importer.php:106
filterhttp_request_timeoutcomponents\importer\inc\wordpress-importer.php:107
actiontallykit_dynamic_csscomponents\logo\logo-color.php:2
actionwp_enqueue_scriptscomponents\logo\logo-script.php:10
actiontally_reset_loopscomponents\logo\logo-template.php:74
actiontally_loopcomponents\logo\logo-template.php:79
actionadmin_menucomponents\parallax\parallax-export-import.php:7
actionadmin_enqueue_scriptscomponents\parallax\parallax-export-import.php:8
actionadmin_initcomponents\parallax\parallax-metabox.php:40
actionwp_enqueue_scriptscomponents\parallax\parallax-script.php:10
actionadmin_enqueue_scriptscomponents\parallax\parallax-script.php:18
filterthe_contentcomponents\parallax\parallax-template.php:32
filtertally_main_classcomponents\parallax\parallax-template.php:46
filtertally_sitebar_layout_optioncomponents\parallax\parallax-template.php:56
filtertally_is_subheadercomponents\parallax\parallax-template.php:65
filtertally_is_comment_templatecomponents\parallax\parallax-template.php:76
filterbody_classcomponents\parallax\parallax-template.php:96
actiontallykit_dynamic_csscomponents\people\people-color.php:2
actionwp_enqueue_scriptscomponents\people\people-script.php:10
actiontally_template_initcomponents\people\people-template.php:72
actiontally_loopcomponents\people\people-template.php:77
actiontally_loopcomponents\people\people-template.php:81
filtertally_ot_page_metaboxcomponents\people\people-template.php:88
actiontallykit_dynamic_csscomponents\portfolio\portfolio-color.php:2
actionwp_enqueue_scriptscomponents\portfolio\portfolio-script.php:10
actiontally_template_initcomponents\portfolio\portfolio-template.php:95
actiontally_loopcomponents\portfolio\portfolio-template.php:100
filtertally_ot_page_metaboxcomponents\portfolio\portfolio-template.php:104
actiontallykit_dynamic_csscomponents\shortcodes\shortcodes-color.php:2
filterthe_contentcomponents\shortcodes\shortcodes-functions.php:21
actionwp_headcomponents\shortcodes\shortcodes-functions.php:30
actionwp_enqueue_scriptscomponents\shortcodes\shortcodes-scripts.php:10
actionadmin_enqueue_scriptscomponents\shortcodes\shortcodes-scripts.php:50
actiontallykit_dynamic_csscomponents\slideshow\slideshow-color.php:2
actionadmin_initcomponents\slideshow\slideshow-metabox.php:2
actionwp_enqueue_scriptscomponents\slideshow\slideshow-script.php:10
filtercpt_columns_text_post_shortcode_slideshowcomponents\slideshow\slideshow-types.php:68
actiontallykit_dynamic_csscomponents\testimonial\testimonial-color.php:2
actionwp_enqueue_scriptscomponents\testimonial\testimonial-script.php:10
actiontally_template_initcomponents\testimonial\testimonial-template.php:74
actiontally_loopcomponents\testimonial\testimonial-template.php:79
filteradmin_noticesincludes\acoc-loader.php:5
actionwp_headincludes\color-management.php:49
actionwp_headincludes\color-management.php:68
actionwp_enqueue_scriptsincludes\dynamic-css-loader.php:2
actionadmin_enqueue_scriptsincludes\script-loader.php:2
actionafter_setup_themetallykit.php:19
Maintenance & Trust

TallyKit Maintenance & Trust

Maintenance Signals

WordPress version tested4.5.33
Last updatedJul 9, 2016
PHP min version
Downloads4K

Community Trust

Rating0/100
Number of ratings0
Active installs10
Developer Profile

TallyKit Developer Profile

TallyThemes

5 plugins · 130 total installs

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

How We Detect TallyKit

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

Asset Fingerprints

Asset Paths
/wp-content/plugins/tallykit/assets/css/tallykit.css/wp-content/plugins/tallykit/assets/js/tallykit.js/wp-content/plugins/tallykit/vendors/tinymce/skins/ui/light/skin.min.css/wp-content/plugins/tallykit/vendors/tinymce/tinymce.min.js/wp-content/plugins/tallykit/vendors/isotope/isotope.min.js/wp-content/plugins/tallykit/vendors/flexslider/jquery.flexslider-min.js/wp-content/plugins/tallykit/vendors/flexslider/flexslider.css
Script Paths
/wp-content/plugins/tallykit/assets/js/tallykit.js/wp-content/plugins/tallykit/vendors/tinymce/tinymce.min.js/wp-content/plugins/tallykit/vendors/isotope/isotope.min.js/wp-content/plugins/tallykit/vendors/flexslider/jquery.flexslider-min.js
Version Parameters
tallykit/assets/css/tallykit.css?ver=tallykit/assets/js/tallykit.js?ver=

HTML / DOM Fingerprints

CSS Classes
tallykit_accordiantallykit_tabstallykit_tab_contenttallykit_tab_itemtallykit_slidertallykit_slider_itemtallykit_grid_itemtallykit_image_gallery+6 more
HTML Comments
<!-- TallyKit Accordion Start --><!-- TallyKit Accordion End --><!-- TallyKit Tabs Start --><!-- TallyKit Tabs End -->+12 more
Data Attributes
data-tallykit-accordiondata-tallykit-tabdata-tallykit-sliderdata-tallykit-gallerydata-tallykit-carouseldata-tallykit-pricing+1 more
JS Globals
tallykit_params
Shortcode Output
[tallykit_accordion][/tallykit_accordion][tallykit_tabs][/tallykit_tabs]
FAQ

Frequently Asked Questions about TallyKit