WCK - Custom Fields and Custom Post Types Creator [Unauthorized DB Access]

WCK - Custom Fields and Custom Post Types Creator plugin for WordPress suffers from a Unauthorized DB Access vulnerability


WordPress plugin WCK - Custom Fields and Custom Post Types Creator suffers from unathorized DB access vulnerability. An attacker can exploit the wck_add_form{$this->args['meta_name']} and wck_add_meta{$this->args['meta_name']} actions to insert arbitrary data to database or update existing values.

If the attack is successful then the attacker can insert data or update values in postmeta DB table even without a valid acount, as these actions are available to anyone through the wp_ajax_nopriv actions.


First the attacker must acquire a nonce value for wck-add-meta action. This is possible by using the action action=wck_add_formwck_cfc_fields because action wck_add_form{$this->args['meta_name']} is available to non-privileged users: <a href="http://example.com/wp-admin/admin-ajax.php?action=wck_add_formwck_cfc_fields">http://example.com/wp-admin/admin-ajax.php?action=wck_add_formwck_cfc_fields</a>

The response is a form that contains the nonce in .button-primary link, eg:

<a href="javascript:void(0)" class="button-primary" 
    onclick="addMeta('', '', 'f76ddf7b16')">
    <span>Add Entry</span>

With this nonce the attacker can exploit the wck_add_meta{$this->args['meta_name']} action to modify post meta directly in DB, eg:


curl -d "_wpnonce=${NONCE}&action=${ACTION}&meta=${META_KEY}&values=${META_VALUE}&id=${POST_ID}" \

WordPress Plugins Unauthorized DB Access
  • 2016-02-04:
    Vendor notified via support forums in WordPress.org
  • 2016-02-05:
    Vendor responded
  • 2016-02-05:
    Send issue details to vendor
  • 2016-02-06:
    Requested CVE ID
  • 2016-02-09:
    Vendor released v1.2.0 which resolves this issue