beescms网站渗透测试和修复意见
beescms网站渗透测试修复意见
目录
1.环境搭建
2.渗透前信息收集
3.开始渗透
4.总结
5.修复建议
Beescms实验环境搭建
1、官方下载Beescms v4.0,下载地址: http://beescms.com/cxxz.html
2、解压压缩文件,然后把文件放到phpstudy的网站根目录
3、浏览器访问http://127.0.0.1/beescms/install
,开始安装
4、一直下一步,出现如下界面,输入数据库账户密码
5、成功安装
6、修改mysql.ini 文件,在mysqld 下添加条目: secure_file_priv =
,保存然后重启phpstudy,不然用mysql写入文件会报错。
7、安装完成
渗透前信息收集
1、用kali的dirb对网站目录进行扫描
同时也用sqlmap对网站进行注入扫描
sqlmap -u "http://靶机IP/newsletter&id=1" -p id
2、扫描完成后,sqlmap没有发现注入点,但是目录扫描发现了管理登录点,尝试对管理登录点进行漏洞测试
3、在这里对用户名登录进行sql注入尝试
发现有sql语句报错
这里是一个渗透点记下!
4.查看能否对管理员登录进行爆破
在这里,可以看到,验证码是有submit
来刷新页面,也就是说可以达到控制submit
来禁止验证码刷新实现爆破,这也是渗透点,记下!
漏洞利用
一、密码爆破漏洞
(1)尝试输入用户名密码进行登录
(2)通过burp分析登录需要的参数
可以看到参数里面有user,password,code,submit
通过代码可以发现,submit在用户提交后刷新页面和验证码,所以我们需要在submit=true哪里修改为submit=false就可以让他停止刷新,从而输入一遍验证码即可。
(3)通过burp爆破
修改submit=true为false将密码设定为变量对admin用户进行爆破。
(4)成功结果
二、文件上传漏洞
1.登录后台获取系统权限
(1)后台管理中有文件上传的区域
(2)上传一个一句话木马后,发现文件将会被重新命名
(3)观察源码后发现,文件被重新命名后源文件还是在同一目目录下,只是将文件单独截图多加了_thumb.png的后缀改成我们所上传的文件后缀,去掉后缀就可以看到我们上传的文件包含一句话木马
(4)用蚁剑连接测试
测试成功,获得系统权限
sql注入漏洞
(1)登录页面尝试
通过分析可以看到有sql注入漏洞
unionselect等关键字被过滤
(3)通过上面的分析源码,发现bypass的方法,猜解SQL查询语句中的字段数,根据如下图所示,判断出SQL查询语句中的字段数为5
(4)对库名爆破
(5)对表名爆破
(6)列名爆破
(7)暴字段
(8)暴密码
(9)密码解密
密码是md5编写的,用md5解密即可
密码是admin
总结
经过审计分析,beescms V4.0版本存在后台管理员密码爆破漏洞、文件上传漏洞、后台SQL注入漏洞。管理员后台密码爆破漏洞会造成管理员密码泄露影响;文件上传漏洞漏洞会造成系统被黑客入侵影响;后台SQL注入漏洞会造成管理员密码泄露影响。
修复建议
可以通过修改验证码方式对后台管理员密码漏洞进行修护,修复的措施如下:
- 验证码只能用一次,用完立即过期!不能再次使用
- 验证码不要太弱。扭曲、变形、干扰线条、干扰背景色、变换字体、增加token,且一次性有效。
- 模糊提醒
- 限制请求频率,错误一定次数,锁定账号一段时间
- 修改验证方式设置,改为滑块验证或者图像化验证防止抓包
可以通过修改图片方式对文件上传漏洞进行修护,修复的措施如下:
- 图片二次处理后,将源文件删除或转移其他目录,防止被发现找到,避免一句话木马插入
可以通过修改图片方式对sql注入漏洞进行修护,修复的代码或措施如下: - 普通用户与系统管理员用户的权限要有严格的区分,如果一个普通用户在使用查询语句中嵌入另一个Drop Table语句,那么是否允许执行呢?由于Drop语句关系到数据库的基本对象,故要操作这个语句用户必须有相关的权限
- 强迫使用参数化语句,如果在编写SQL语句的时候,用户输入的变量不是直接嵌入到SQL语句,而是通过参数来传递这个变量的话,那么就可以有效的防治SQL注入式攻击
- 加强对用户输入的验证,加强对用户输入内容的检查与验证,强迫使用参数化语句来传递用户输入的内容。在SQLServer数据库中,有比较多的用户输入内容验证工具,可以帮助管理员来对付SQL注入式攻击。测试字符串变量的内容,只接受所需的值。拒绝包含二进制数据、转义序列和注释字符的输入内容
- 多多使用SQL Server数据库自带的安全参数,在SQLServer数据库专门设计了相对安全的SQL参数。在数据库设计过程中,要尽量采用这些参数来杜绝恶意的SQL注入式攻击
- 定期使用专业的漏洞扫描工具来寻找可能被攻击的点,在被人攻击自己网站前,优先找出自己网站的漏洞
- 设置两个帐号,一个是普通管理员帐号,一个是防注入的帐号。将防注入的账号设置的很象管理员,如 admin,以制造假象吸引软件的检测,而密码是大于千字以上的中文字符,迫使软件分析账号的时候进入全负荷状态甚至资源耗尽而死机
beescms网站渗透测试和修复意见相关推荐
- 网站渗透测试,看这篇就够了
一.信息收集 1.获取域名的whois信息,获取注册者邮箱姓名电话等. 2.查询服务器旁站以及子域名站点,因为主站一般比较难,所以先看看旁站有没有通用性的cms或者其他漏洞. 3.查看服务器操作系统版 ...
- 网站渗透测试原理及详细过程
渗透测试实战 site:baidu.com 渗透测试思路 site:baidu.com 带你入门渗透测试的5个项目:https://www.jianshu.com/p/5b82e42ae346 渗透测 ...
- 网站渗透测试工作三年总结报告
3年,说长也长,说短也短,以前在A3年,从公司的自建房十多人,到走的那时候,上百人,自主创业不容易,一路上说不出的艰苦,也算记录了一个互联网公司的发展壮大,而且据说听闻发展壮大的也非常好,很有可能快挂 ...
- 网站渗透测试公司总结心得
3年,说长也长,说短也短,以前在A3年,从公司的自建房十多人,到走的那时候,上百人,自主创业不容易,一路上说不出的艰苦,也算记录了一个互联网公司的发展壮大,而且据说听闻发展壮大的也非常好,很有可能快挂 ...
- WEB网站渗透测试方案
曾经写过的一个方案.拿出来晒晒. 目录: WEB网站渗透测试方案 1 一. Web网站渗透测试概述 1 1.1概述 2 1.2渗透测试对象 3 1.3现场安排 4 二. Web网站渗透测试技术 4 2 ...
- thinkcmf 渗透测试漏洞修复解决方案
近段时间发现很多APP程序用的是thinkcmf,此程序源码存在getshell漏洞,我们Sine安全紧急对此高危漏洞进行了分析和漏洞修复,攻击者可以通过构造特定的请求包get请求即可在远程服务器上执 ...
- 网站渗透测试到底怎么入门
从大学毕业的时候开始简单入门,写写网站程序代码,搞搞sql注入以及安全测试,到现在Sinesafe当安全工程师,差不多在安全行业成长了11年,发现不懂得问题随着实战渗透测试中非常多,还是学到老干到老才 ...
- 低成本网站渗透测试怎么找
从国内企业安全市场需求的角度来看,渗透测试服务也很受欢迎,国内大型安全制造商只有渗透测试单一服务收入超过2亿元.为什么企业会购买渗透测试服务?原因来自渗透测试服务本身的特点:攻击者视角.过程可复制.漏 ...
- 记一次失败的菠菜网站渗透测试
来源: https://blog.csdn.net/weixin_44991517/article/details/114268401 0x01 写在前面 刚好最近有点时间,于是随便找了一个bc网站, ...
- 最新荧惑网站渗透测试iAPP安卓源码+功能很多
正文: 只有源码,导入iapp即可使用,有兴趣的自行去体验吧,源码仅供学习研究,请勿用于其它操作. 程序: wwirgu.lanzoul.com/icmOX0fzazne 图片:
最新文章
- 论文中的绘图软件大总结 ---自己感想:当你拼命寻找向上的扶梯时,但也要先不让自己恐高
- 推荐7款超良心的windows软件,每一个都是精品!
- linux shell数学计算器,技术|使用 GNU bc 在 Linux Shell 中进行数学运算
- python数据分析方法五种_加速Python数据分析的10个简单技巧(上)
- 【Spring注解系列04】@Condition条件注解
- Joy of Handcraft Gym - 102822J(线段树或差分)
- MySQL Workbench运行脚本
- 吴恩达 深度学习 编程作业(1-3)- Planar data classification with one hidden layer(平面花形状)
- npm install 报错(npm ERR! errno -4048,Error: EPERM: operation not permitted,)解决方法
- OpenGL超级宝典(第7版)笔记1 清单的初始环境配置part1
- 文件服务器定时开关机,云服务器定时开关机
- 【面经_计算机网络_(个人总结_下】
- Python-集合练习(协助学生做问卷调查)
- 按当前位置与其它位置远近排序,按经纬度计算
- 台式计算机驱动程序未被安装,计算机图形驱动程序安装失败的原因及其解决方法...
- 夏天CPU温度过高原因及解决办法
- 并查集(详细解释+完整C语言代码)
- Python廖雪峰教程学习笔记:Day5
- Ra1nusb越狱的原理解释与实现方式
- 杭电ACM-LCY算法进阶培训班-专题训练(KMP)