知识

萌新也能找cms漏洞

时间:2010-12-5 17:23:32  作者:焦点   来源:休闲  查看:  评论:0
内容摘要:我盯上一个开源论坛程序三天了。版本号停在2.3.4,官方更新日志里写着“修复若干安全问题”,但没细说。这种含糊其辞最勾人——说明还有没修干净的,或者修了但没公开的。 先看安装文件。install目录下

我盯上一个开源论坛程序三天了。萌新版本号停在2.3.4,漏洞官方更新日志里写着“修复若干安全问题”,萌新但没细说。漏洞这种含糊其辞最勾人——说明还有没修干净的萌新,或者修了但没公开的漏洞。

先看安装文件。萌新install目录下有个lock文件,漏洞正常情况安装完就该删掉。萌新我试着直接访问install/index.php,漏洞居然返回了200。萌新重新安装流程走一遍,漏洞数据库配置那一步,萌新把数据库地址改成我自己的漏洞服务器。它没校验当前站点是萌新否已初始化,直接给我生成了一个新的配置文件覆盖上去。这下管理员密码重置了,后台随便进。

这套路太老了,但人家就是不删lock文件。很多小站管理员装完就忘,根本不知道还有这茬。

换个目标。一个企业站用的CMS,搜索框直接拼SQL。我输入单引号,页面报错,错误信息把查询语句完整吐出来了。这不是注入是什么?但报错只显示前100个字符,后面被截断。没关系,用布尔盲注慢慢猜。写个脚本,逐字符提取管理员表里的密码哈希。跑了二十分钟,拿到一个md5,去cmd5平台花两块钱解出来了。密码是admin888。

后台登录进去,发现有个文件管理器插件。上传个带图片头的PHP脚本,绕过后缀检查——它只查了扩展名,没查文件内容。访问那个脚本,直接getshell。整个过程四十分钟,大部分时间花在等盲注脚本跑完上。

说这些不是让你去搞破坏。而是告诉你,漏洞往往藏在最不起眼的角落。

真正的萌新总盯着0day,觉得要找那种没人发现的惊天大洞。实际上,绝大多数漏洞都是这种低级错误——该删的文件没删、输入没过滤、上传没校验。那些所谓“漏洞挖掘高手”,不过是比你多看了几遍源码,多试了几种常规思路。

我认识一个搞渗透的哥儿们,专挑那种下载量几千的小CMS下手。他说大厂的东西修得勤,小CMS的作者可能半年才更新一次。他每周扫一批新出的源码,用肉眼过一遍关键函数,总能找到几个有意思的点。有一次他发现某个CMS的验证码生成逻辑里,把随机种子写死了,导致验证码可以预测。他写了个脚本,自动识别验证码,然后暴力破解后台密码。那站长密码设的是123456,一次就进去了。

你问我怎么开始?去下载那些小众CMS源码,本地搭起来,装个xdebug,逐行看代码。重点看三个地方:文件上传、数据库查询、模板解析。这三个位置出问题的概率最高。别怕看不懂,PHP源码没那么难,函数名字都起得挺直白。遇到看不懂的库函数就去查手册,查完再回来看,来回几次就有感觉了。

工具方面,Burp Suite抓包改包够用了。别一上来就装一堆自动扫描器,那东西扫出来的全是噪音,还会把目标站点搞崩。手动测试能让你理解漏洞成因,这是自动工具给不了你的。

找漏洞这事,七分耐心三分运气。有时候你盯着一段代码看半天没反应,去喝口水回来,突然就通了。我见过有人分析一个CMS的密码重置逻辑,发现它用用户提供的token直接拼进SQL查询,连预处理都没做。这种洞藏得够深吧?但人家就是一行一行读源码读出来的。

最后提醒一句,练手找漏洞,就在自己搭的环境里玩。别拿别人线上站开刀,那是犯罪。等你在本地环境把常见漏洞类型都摸熟了,再去看公开的漏洞报告,你会发现那些报告里写的利用思路,你早就在自己测试中碰过了。那时候,你就不算萌新了。

最近更新
热门排行
copyright © 2026 powered by 力不从心网   sitemap