如何选择网站域名,建一个门户网站要多少钱,莱芜雪野湖介绍,建设企业网站找谁视频教程和更多福利在我主页简介或专栏里
#xff08;不懂都可以来问我 专栏找我哦#xff09; 目录#xff1a; 前言 波折一#xff1a;RCE漏洞利用失败 波折二#xff1a;SQL时间盲注 波折三#xff1a;寻找管理后台 总结 前言
先谈个人SRC心得体会吧#xff0c;我虽…视频教程和更多福利在我主页简介或专栏里
不懂都可以来问我 专栏找我哦 目录 前言 波折一RCE漏洞利用失败 波折二SQL时间盲注 波折三寻找管理后台 总结 前言
先谈个人SRC心得体会吧我虽然很早前就体验过挖掘SRC来锻炼自己但真正坚持下来大概是从去年3月初开始。一开始主要是逛公益SRC平台和教育SRC动作有点慢经常遇到报告提交前人吃肉后人喝汤的局面而且赚不到米慢慢进入补天SRC开始挖掘小企业和众测。因为之前算是做过几个渗透测试的项目所以自始至终我都把关注重点放在”交互”上而且关键也在于”信息收集”上只要足够细心和耐心慢慢就有了产出。
本文下面记录一次不断碰到难题不断解决难题的的众测SRC实战为期三四天文章不算长请耐心看完。开局发现是一个搞外贸的企业的信息发布网站。 波折一RCE漏洞利用失败
通过信息搜集发现网站框架为thinkphp。作为曾经的程序员我知道ThinkPHP是一个广泛使用的PHP开发框架但历史上存在多个安全漏洞尤其是远程代码执行RCE漏洞非常好利用。 于是第一反应就是祭出神器Liqun工具箱-1.5进行漏洞扫描与利用奇怪的是虽然利用exp工具能够扫描出来确实存在rce漏洞但是无法成功利用执行命令whoami多次尝试反弹shell到我的vps也是没有成功。 分析问题出现原因 可能是工具误报目标系统并未真正存在该漏洞。 可能是目标系统部署了WAFWeb应用防火墙拦截了攻击请求。
时间宝贵啊于是只能放弃这里的进攻点去寻找新的突破口。
波折二SQL时间盲注
这里必须要安利一个好用的burpsuite插件xia_sql能够被动检测SQL注入漏洞。通过前端不断点击与后台交互的功能点找到一处存在注入点但坑的是没有数据回显只能使用时间盲注。 更坑的是后台居然过滤了OR 和 AND 关键字还有空格字符or可以用||替代而and可以用替代对于空格字符常见的绕过思路是 space2plus 将空格替换为。 示例UNION SELECT - UNIONSELECT。 space2hash 将空格替换为%23即#URL编码。 示例UNION SELECT - UNION%23SELECT。 space2blank 将空格替换为其他空白字符如%09、%0A等。 示例UNION SELECT - UNION%09SELECT。 space2randomblank 将空格替换为随机的空白字符如%09、%0A、%0C等。 示例UNION SELECT - UNION%0ASELECT。
如下图因为网站有关键字符过滤所以sqlmap跑不出任何信息 补充一个知识点Tamper脚本是SQLMap中用于修改请求数据的脚本能够对注入语句进行编码、混淆或其他处理以绕过WAF或其他过滤机制。
最终编写了一个sqlmap的tamper脚本space2randomblank_and_keywords成功绕过获取到数据库信息尤其是管理员账号密码 #!/usr/bin/env python Copyright (c) 2006-2023 sqlmap developers (https://sqlmap.org/) See the file LICENSE for copying permission import random from lib.core.enums import PRIORITY __priority__ PRIORITY.NORMAL def dependencies(): pass def tamper(payload, **kwargs): 将空格替换为随机的空白字符如 %09, %0A, %0C 等 例如UNION SELECT - UNION%0ASELECT 或 UNION%09SELECT if payload: # 定义可用的空白字符 blank_chars [%09, %0A, %0C, %0D] # 替换空格为随机的空白字符 payload payload.replace( , random.choice(blank_chars)) # 替换 OR 和 AND 关键字 payload payload.replace(OR, ||) # 替换 OR 为 || payload payload.replace(AND, ) # 替换 AND 为 return payload
利用tamper脚本跑出banner 利用tamper脚本跑出数据库中所有表名重要的是admin表和user表 最终成功利用sqlmap跑出管理员账户密码为XXXX/XXXX888因为数据敏感所以这里不放图了
波折三寻找管理后台
经常打SRC的大佬都知道接下来要扩大战果就是进管理后台了但是我死活找不到该thinkphp网站的管理后台
先是通过常规路径尝试因为一般thinkphp框架的后台路径默认是/admin/但是这里报错显示无法加载模块admin 接着通过路径扫描工具如dirsearch/御剑等路径扫描工具fuzz后台路径还是无果 用了五六款工具和一个小时了还是搞不进去有点“难受香菇”啊。
只要努力奇迹还是可能出现的哈哈最终通过C段扫描找到该公司下属的其他业务系统即OA办公系统管理后台。 利用之前获取的管理员账号密码是企业名称简写/企业名称简写888进一步生成若干组合弱口令攻击和撞库成功进入OA办公系统后台。在获取管理后台权限后可以进一步探索系统内部寻找更多敏感信息或漏洞。
打完~~~~收工最后提一句厂家给了中危300大洋谢谢厂家审核大大哈哈
总结
目标系统存在SQL注入漏洞而且是比较难利用的时间盲注过滤了or/and/空格等关键字符。在实际渗透测试中Tamper脚本是非常有用的工具能够显著提高SQL注入攻击的成功率。后台路径隐藏较深增加了攻击难度。通过C段扫描和组合口令攻击成功进入管理后台暴露了系统的防御问题。
我觉得渗透测试中要心平静气仔细观察每一个服务器/客户端交互的数据包一条道走不通灵活地换一条道山穷水复疑无路柳暗花明又一村。为了提高渗透效率还要不断地提高工具编写能力平时多学习网站前后台交互的底层原理。
视频教程和更多福利在我主页简介或专栏里
不懂都可以来问我 专栏找我哦 申明本账号所分享内容仅用于网络安全技术讨论切勿用于违法途径所有渗透都需获取授权违者后果自行承担与本号及作者无关