某头部直辖市攻防演练纪实-如何不用0day打下n个点
前言几个月前打了一场某地的攻防演练,演练当时通知的很急促,没做什么准备直接小米加步枪上阵了… 在此过程中,很多个没用到0day的打点案例都很有意思,下面就简单分享一下 案例一、某单位shiro绕WAF(利用shiro处理rememberMe字段值的feature)信息搜集到某单位的CAS系统…当时开着Burpsuite插件,扫到了默认的shiro秘钥 当时开心坏了…但是有遥遥领先厂商的WAF在,如果直接上现成的工具会直接寄 后面试了试网上公开的方法,直接把请求方式删掉,依然被拦,包直接被重置掉,无奈寻找新faeture 最终在Shiro的rememberMe字段值处理流程中,发现在Base64解码过程中有戏 如图,在shiro解码base64字符串的过程中,会调用discardNonBase64方法去..
Read more重生之我是赏金猎人(十二)-记一次最终被忽略的graphql漏洞挖掘经历
0x00 起因前几日在hackerone上挖掘某高赏金厂商,走了一遍业务点后,偶然发现http history里面有个graphql的接口 于是一场坐牢之旅开始了 0x01 前置知识与内省查询不了解graphql的兄弟可以看看如下的图 通俗易懂地说:Graphql类似于restful的API 开源查询语言,其巧妙的新方法来改善应用程序中客户端和服务器之间的交互,为项目构建和后期维护提供了新思路 在实践经验中,发现国内用graphql技术的厂商并不是很多,大部分还是基于restful的,国外比较流行 在graphql中,是支持“内省查询”这种比较特殊的技术的 简单来说就是,GraphQL内置了类似于“swagger的”接口文档,你可以通过内省的方法获得这些信息,如graphql中对象定义、接口参数等信息。..
Read more重生之我是赏金猎人(十一)-从忽略到triage再到失望bounty的SSRF挖掘之旅
0x01 起因前两天和朋友聊天,他发现了一家在hackerone上赏金颇高的Program,并且发现了其中的漏洞 让老夫羡慕不已 去hackerone看了看厂商信息,漏洞奖励确实是非常诱人的 而且BugBounty Program Launched on Apr 2015…. 8年hackerone的老厂商了,业务点本来就不多,又被世界各国牛逼的黑客们挖了八年,难度可想而知 但是为了赏金迎难而上,才应该是真正的漏洞猎人该有的风格。 0x03 走业务点万念俱灰到发现敏感请求从Hackerone的Program scope中搜集了一下业务信息,虽然展开测试 测试了常规的一些WEB漏洞,IDOR等漏洞,发现完全没有一点机会,Filter和鉴权写的非常过硬,而且用户都是通过uuid类型来传参进行身份鉴权 首先目..
Read more重生之我是赏金猎人(九)-巧用目标域名特点挖掘某新上SRC四处RCE
0x02 缘起早上打开微信无聊水群,偶然间发现新上了家SRC 新上的SRC一般都是细皮嫩肉的处子,未经万人骑,得手也更加容易,我们来一探究竟 0x03 资产搜集到默认秘钥被改 山穷水尽简单用目标的cert信息收集了一下网络空间的资产 发现了目标不少的域名都采用“短横线命名法”,一般来说大厂用这种命名法便于分辨开发、测试、生产环境还是蛮多的 总结了一下,常见的开发、测试、生产环境域名中常见词如下 uat test dev pre pr pro ... 随后从资产列表中找到了一个看起来像管理api接口的域名进行访问 根据页面回显,结合之前多年的测试经验,推断此处使用了Apache Apisix 之前复现过Apache Apisix默认秘钥添加恶意路由导致的RCE漏洞,此处直接准备一试 发现直接寄了,目标..
Read more重生之我是赏金猎人(八)-梦中绝杀某脖代理商后台
前两天在国企的朋友遇到了一个棘手的靶标,听说之前没人能从外网打点进去,只能靠万里防火墙取证 我一听来了兴趣,在梦中臆造了一个靶场进行渗透,并且该梦境已获得相关授权 还请各位看官请勿对号入座,如有雷同,纯属巧合 0x01 钓鱼打点官网发现了客服联系方式 通过修改 shellcode特征的CS + 免杀加载器,直接做出免杀🐴。 改后缀名为非exe(懂的都懂),直接用话术钓鱼客服(现在客服都聪明了,直接exe是肯定钓不到的),获得其桌面记事本 记事本中翻出来了后台地址,但是并没有账号密码(有也没有用,因为有Google验证码) http://xxxxx/xxxxx-admin/ 0x02 FUZZ得到Spring Actuator泄露,并分析信息FUZZ了一下,出了二级目录Spring Actuator的泄..
Read more重生之我是赏金猎人(七)-记一次与飞塔流量检测对抗的文件上传
0x01 起因某项目靶标,是一个人员管理系统,通过webpack暴露的接口 我们成功找到了一个未鉴权的密码修改接口,通过fuzz 我们获取到了该接口的参数username与password,并成功修改了admin账号密码进入后台 在一个任意上传的后台功能点,我们遇到了飞塔WAF+流量检测设备,于是便有了本文 0x02 摸清检测规则众所周知,飞塔公司的WAF+流量检测设备还是比较牛逼的,我直接尝试上传一个免杀webshell,毫无疑问直接GG了 经过测试,上传无害内容1111但文件名为XXX.aspx也会被拦截 发现飞塔对form表单的文件名和文件内容都有检测,我们必须得把这俩检测都安排掉才能成功上传 下面简述一下对抗思路 0x03 文件名检测——根据.NET上传匹配文件名特性绕WAF(骗).NET中常用c..
Read more重生之我是赏金猎人(六)-强行多次FUZZ发现某厂商SSRF到redis密码喷洒批量反弹Shell
0x01 对目录批量FUZZ,发现一处隐蔽接口挖某大厂已经挖了快两个周了,期间因为公司业务比较繁忙,最近一直没挖。 但是一直在用ffuf挂着字典对厂商资产进行批量目录扫描,今天上服务器看了下扫描结果,就出货了 接口地址为:https://xxx.xxxx.com/xxxx/start 我们直接对其进行访问 发现该接口给我们提供了一些可以使用的接口链接 我们逐个测试拼接接口后,发现一个名为face_xxxx的接口有戏 0x02 FUZZ传参格式+参数访问接口,提示Method Not Allow,405错误,那么很显然,我们得换POST传参 POST随便传个参过去,发现接口提示”Request error, content-type was unsupported” 很好,继续FUZZ content..
Read more重生之我是赏金猎人(五)-多手法绕过WAF挖掘某知名厂商XSS
0x01 前奏最近在测试某知名安全厂商的过程中,发现其一处重要业务的子域竟出现了难得一见的自研WAF,如此一来勾起了我的兴趣~ 仔细研究该业务点后,发现某处传参,会直接将传参内容写入JS中,大大的危险 于是与WAF的一次交锋便从此刻开始~ 0x02 平静的闭合与常规操作由上图的输出位置可知,无WAF情况下,我们只需要通过 ’)] 三个符号来闭合前半部分JS,再用//注释后方JS,再直接eval执行JS代码即可 构造Payload %27)];eval(alert('xss'))// 由于eval,alert,括号等太敏感~毫无疑问,直接被WAF秒了 那只能用经验与思路来逐渐替换掉这些敏感的函数关键词了~ 0x03 多手法组合绕过WAF解决eval首先解决的是ev..
Read more重生之我是赏金猎人(四)-记一次有趣的客户端RCE+服务端XXE挖掘
0x01 起因朋友给某甲方做渗透测试,奈何甲方是某知名保险,系统太耐艹,半天不出货 兄弟喊我来一块来看,于是有了本文 0x02 客户端RCE一处朋友把靶标发给我看了下,除了两个下载链接啥也没有 链接下载下来的东西如图,看了下目录里面还有JRE,那么很显然,这客户端exe就是个JAVA启动命令执行套壳 随后打开program文件夹,逆了一下里面的Jar full_path前面定义为用户更新时输入的路径 那么很简单了full_path可控,诱导用户安装更新时路径出输入注入命令即可 D:\software && ping hacker's IP 0x03 发现Webservice Soap接口光这一个水来的客户端RCE肯定是不够的,接下来继续挖掘服务端 看了看没别的功能点,我就..
Read more重生之我是赏金猎人(三)-无脑挖掘某SRC getshell
0x02 资产收集到脆弱系统在某数字厂src挖掘过程中,本人通过ssl证书对域名资产进行了收集,通过计算域名对应ip段的权重 整理出其资产集中的C段,并进行了批量测活+目录扫描 查看目录扫描结果后,发现了一个有趣的文件 http://36.x.x.x/upload_image.php 对于这种页面,毫无疑问,要对参数进行FUZZ 0x03 FUZZ参数+表单上传使用arjun工具对其参数进行fuzz,发现了一个参数字段为do 随后在burpsuite中对do的参数值进行fuzz 成功fuzz出一个do的参数值,upload 构造urlhttp://36.x.x.x/upload_image.php?do=upload,成功出现上传表单 webshell名skr_anti.php 选择我们的webs..
Read more