渗透启示录-从JS信息泄露到Webshell
2019-07-21 22:33:54 Author: mp.weixin.qq.com(查看原文) 阅读量:61 收藏

渗透测试是一项吃经验、吃心性的工作,优秀的渗透测试人员需要在一线岗位不断作战、不断提升,对于各类应用的漏洞了然于心,这至少需要数年的积累才算是"入门"。人员也要有正确的三观,巨大的黑产、泄密利益是对人性的考验,从工作上来讲,碰到过很多大神,他们共同的特点就是拥有常人难有的耐心、细心,很多影响严重的漏洞都是从细枝末节进行展开的!
PART1
从一个授权项目开始

前段时间接到授权的合法渗透测试任务,时间紧、任务重,速度开工!

初步分析后发现网站的图片路径存储在三级域名上:

http://p.xxx.*****.com/upload/***/****/**4615.jpg

URI 直接访问根路径发现title是“某某管理平台”但是由于丢失js文件导致页面无法加载,故对目录进行扫描


PART2
扫描一下并不是什么坏事

常规扫描后得到后台地址和一份后台 js 压缩包:优秀的扫描器加优秀的网站目录字典,是通往渗透测试项目成功的关键一步。访问后台页面,尝试登陆提示账号为11位手机号码,看到账号是11位手机号码,直接放弃了识别验证码爆破的想法,因为动作太大,可能性太小。

渗透测试是一项争分夺秒的工作,应以最有效、最快速的思路进行授权测试,太长的耽误及打草惊蛇反而引起管理员及时发现并隐藏问题(拔网线是流氓的手段!)。最后导致安全人员无法提出有效缺陷,渗透测试项目效果令客户难以满意。

PART3
细心、耐心加经验的组合拳

只能通过别的思路进行下一步渗透,这种前端使用webpack打包的站点,每个功能基本都是以接口的形式调用,而且很多权限都控制不严,搞不好能找到后台接口,直接操作一些功能,于是先通过F2查看加载的所有js代码,果不其然在某处JS代码中发现泄露了329 多个可登录的账号。

尝试多个弱口令无果,于是尝试从扫描到下载的js压缩包查找密码规则

密码为账号后四位数字+ *******

使用账号 1******1234 登陆后发现权限并不大,然后通过 js 获取到了别的接口地址,发现存在越权漏洞,通过JS接口越权访问到活动管理页面获取到管理员的登陆账号


PART3
安全皆为表象

利用网站资料管理功能直接上传webshell文件:

任何系统的安全都是表面的安全,登入系统后获取webshell权限就是这么简单。

看起来很复杂的事情,可能只需要你以耐心、细心为基础进行经验积累,你可能会发现… 被注释的账号密码、接口、token、真实IP、开发环境…. 永远不知道程序员在JS中给你留下了什么样的惊喜~

_________________________________________________________

本文章来自团队成员R3start分享,仅供白帽子、安全爱好者研究学习,对于用于非法途径的行为,发布者及作者不承担任何责任。

我们建立了一个以知识共享为主的 免费精品 知识星球,旨在通过相互交流,促进资源分享和信息安全建设,为以此为生的工作者、即将步入此行业的学生等人士提供绵薄之力。目前星球已发布上千篇精品技术文章、教程、工具等内容,已加入上百位安全圈大咖及数千位信息安全从业者,期待在此共同与你交流。

如果你是安全行业精英,可以加入我们的微信群,目前聚集了来自全球的信息安全公司CEO,安全部门主管,技术总监,信安创业者,网络安全专家,安全实验室负责人,公司HR等。在这里将获得更多与安全大咖们面对面交流的机会,最新的安全动态,更真实的高薪信息安全岗位,更高效率的技术交流空间。可以扫码添加我的微信,需提供真实有效的公司名称+姓名,验证通过后可加入···


文章来源: https://mp.weixin.qq.com/s/AlshbKgHOyEhM9aOT5Jxuw
如有侵权请联系:admin#unsafe.sh