dedecms漏洞利用
2019年某天夜里,洞利我盯着屏幕上那个返回的洞利“1”,后背有点发凉。洞利那是洞利一个用了十年、早该被遗忘的洞利dedecms站点,管理员密码还是洞利admin,后台地址也没改。洞利注入点就在文章标题那个参数里,洞利连sqlmap都懒得跑,洞利手测三分钟就进去了。洞利
dedecms的洞利漏洞史几乎就是国内建站史的一个缩影。05年那会儿,洞利它靠“傻瓜式操作”横扫中小站长市场,洞利巅峰期占了国内CMS份额的洞利三成。但成也模板,洞利败也模板——为了迎合小白用户,它把大量逻辑堆在PHP文件里,变量过滤全靠正则黑名单。你写个union select,它拦了;你换个/*!50000union*/+select,它又放行了。这种猫鼠游戏从2008年玩到2021年,官方补丁打了一百多个,可老站死活不升级,毕竟升级可能让模板全崩。
最经典的利用链得数/plus/download.php那个文件。它本意是给下载链接加个跳转统计,结果开发者图省事,直接把参数拼进了SQL查询。利用方式粗暴得可笑:?aid=1&cid=1&hash=xxx' union select 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200——然后通过报错信息判断字段位置,接着用into outfile写一句话木马。整套流程下来,不需要任何工具,浏览器地址栏就是你的武器。
后来我帮人清理过几个被黑站点,后台文件被塞了各种“后门变种”。最讽刺的是,有些黑客比站长更懂dedecms——他们会顺手修掉你站上的其他漏洞,免得被同行抢了shell。有个金融类小贷网站,被种了整整两年的挖矿脚本,站长愣是没发现,直到CPU天天满载才觉得不对劲。打开数据库一看,用户表被人拖了七次,每次都在凌晨三点。
为什么这玩意儿到现在还活着?你去搜索引擎搜“企业网站后台”,依然能翻出一堆用dedecms搭的老站。它们挂在过期域名的角落里,无人维护,却还在跑着十年前的代码。主机商不管,备案号不查,搜索引擎也不降权——这些“僵尸站”反而成了黑产最喜欢的跳板。拿下一个dedecms站,就等于拿到一个干净的IP和域名,可以用来发垃圾外链、搭钓鱼页面,甚至做CC攻击的肉鸡。
说到底,dedecms的悲剧不是技术问题,是商业模式的锅。官方靠卖授权和模板赚钱,但用户基数太大,补丁更新永远赶不上漏洞挖掘的速度。加上早期版本的代码质量实在堪忧,变量过滤逻辑东一块西一块,连官方自己都理不清。我见过最离谱的一个洞,是后台“友情链接”模块里有个参数直接进了eval(),连注入都省了。
现在还有人问“dedecms还能用吗”。能用,但前提是你得把后台改成随机路径、关掉会员注册、删掉/plus/目录下用不到的文件、给数据库单独设个低权限账号。可你要是问普通站长——他们连ftp密码都记在本子上,更别提做这些加固了。于是漏洞利用的剧本年复一年地上演:扫描器扫到/data/admin/ver.txt,确认版本号,掏出对应的exp,三分钟拿下后台。这个过程简单到让人怀疑,这究竟是在攻击,还是在考古。









