龙8国际pt

也想出现在这里?联系我们

WordPress 后台插件更新模块任意目录遍历导致DOS漏洞和IP验证不当漏洞

  • 文章介绍
  • 升级版本
  • 评价&建议
相信很多使用阿里云服务器的朋友也会收到:
  1. WordPress 后台插件更新模块任意目录遍历导致DOS漏洞
  2. WordPress IP验证不当漏洞
修复这两个漏洞的最直接的办法就是马上升级到 WordPress 4.6.1 版本即可!下面还是简单说说这两个漏洞,以及不升级4.6.1时应该如何手动修复。

漏洞1:WordPress 后台插件更新模块任意目录遍历导致DOS漏洞

描述

wordpress后台文件/wp-admin/includes/ajax-actions.php中,对代码插件路径的输入参数plugin未进行正确的规范化转义,导致黑客可传入特殊路径,造成拒绝服务。

修复方法

wordpress 4.5.4版本:打开WordPress后台文件/wp-admin/includes/ajax-actions.php,大概在3077行左右找到以下代码:
  1. $plugin = urldecode( $_POST['plugin'] );
在它的下面添加一行:
  1. $plugin = plugin_basename( sanitize_text_field( wp_unslash( $_POST['plugin'] ) ) );
至此,修改保存上传覆盖后即可成功修复WordPress 4.5.4版本的WordPress后台插件更新模块任意目录遍历导致DOS漏洞。wordpress 4.5.4版本以下:WordPress 4.5.4版本以下的,除了要按照WordPress 4.5.4版本的办法修复之外,还需要继续进行以下两个步骤的操作(PS:如果某版本的以下2点中的代码已经跟修复后一样的就不用修改了):1、在/wp-admin/includes/ajax-actions.php文件中搜索找以下代码:
  1. if ( $plugin_update_data === true ) {
  2.     wp_send_json_error( $status );
  3. }
直接修改为:
  1. if ( $plugin_update_data === true ) {
  2.     $status['error'] = __( 'Plugin update failed.' );
  3.     wp_send_json_error( $status );
  4. }
在/wp-admin/includes/ajax-actions.php文件中搜索找以下代码:
  1. if ( is_wp_error( $wp_filesystem->errors ) && $wp_filesystem->errors->get_error_code() ) {
  2.     $status['error'] = $wp_filesystem->errors->get_error_message();
  3.     }
  4.  wp_send_json_error( $status );
  5.  }
  6. }
直接修改为:
  1. if ( is_wp_error( $wp_filesystem->errors ) && $wp_filesystem->errors->get_error_code() ) {
  2.      $status['error'] = $wp_filesystem->errors->get_error_message();
  3.    }
  4. wp_send_json_error( $status );
  5. else {
  6. // An unhandled error occured
  7. $status['error'] = __( 'Plugin update failed.' );
  8. wp_send_json_error( $status );
  9. }
  10. }
至此,修改保存上传覆盖后即可成功修复WordPress 4.5.4版本以下的WordPress后台插件更新模块任意目录遍历导致DOS漏洞。

漏洞2:WordPress IP验证不当漏洞

描述

wordpress /wp-includes/http.php文件中的wp_http_validate_url函数对输入IP验证不当,导致黑客可构造类似于012.10.10.10这样的畸形IP绕过验证,进行SSRF

修复方法

找到/wp-includes/http.php这个文件,大概在文件465行:
  1. $same_host = strtolower$parsed_home['host'] ) === strtolower$parsed_url['host'] );
修改为:
  1. if ( isset( $parsed_home['host'] ) ) {
  2.     $same_host = ( strtolower$parsed_home['host'] ) === strtolower$parsed_url['host'] ) || 'localhost' === strtolower$parsed_url['host'] ) );
  3. else {
  4.     $same_host = false;
  5. }
修改保存上传覆盖后即可成功修复IP验证不当漏洞。

特别提示

修复后,一定要到阿里云后台“重新验证”或“忽略”漏洞,否则还是会一直发送信息的!
有用0
  • 2018.04.20初次和大家见面了!

等待您对该主题的建议

发表评论

还能输入240个字
也想出现在这里?联系我们
wordpress香港主机

Hi, 欢迎加入Wordpress技术交流群,带你装逼带你飞!

我要入群
也想出现在这里?联系我们
wordpress主题推荐
也想出现在这里?联系我们
wordpress主题推荐
也想出现在这里?联系我们
wordpress主机推荐
也想出现在这里?联系我们

我来推荐一个更牛逼的给你看看?

  • 猛戳我吧
龙8国际ptqy8千亿国际千亿国际娱乐网页版优乐娱乐
齐乐娱乐优乐娱乐诚博国际优乐娱乐
齐乐娱乐qy8千亿国际千亿国际娱乐网页版亚虎娱乐城
龙8国际pt龙8国际pt老虎机网页版long8 龙8国际娱乐优乐娱乐
齐乐娱乐优乐娱乐诚博国际优乐娱乐