SRC实战:分享一个不到500块的高危,史低价(在steam都可以上头条了)。

264 篇文章 0 订阅
198 篇文章 0 订阅

最近工作忙得飞起,挖洞的时间变少了,一般有什么活动之类的才会花个半天时间去尝试一下。今天这个漏洞有点意思,不到500块的高危,但是我个人认为是严重低估了的,但没办法,白帽子在审核面前没人权啊。

以下主要是过程与思路分析,没截图,因为几百块的高危不配有图。

0x00
入口
这次的入口是小程序,某厂商的一个考试类的小程序,先尝试了一下登录,发现它正常是不对外提供的,使用微信登录后会提示无权限,也没有注册入口。那咋办?直接下一个?我一般看心情,如果心情不好,就下一下,如果当时心情不错的话,我给给予它一点耐心,反编译之后,进行一波代码审计。

代码审计当然是从登录功能开始,这一看就发现了大雷,也不知道是哪个大聪明写的登录功能,正常来说,我们实现登录时,一般是使用账号密码登录,如果成功,则返回用户信息和token,如果错误,则失败。

但是这个小程序有意思了,它登录成功后,只返回用户信息,然后再使用用户信息,通过另外一个接口去获取token。黑人问号?这不白送吗?

敏感数据泄露
直接拿到获取token的接口,先试一下不传任何参数请求一下这个接口,发现它也可以返回一个token,通过这个token,我们进到小程序后,发现有一个获取自己的考试列表的功能,但是请求会报错,这是正常的,因为我们的这个token是没有用户信息的。

但是都有列表了,那获取指定数据的详情的接口应该也有吧,而且能写出这种登录功能的开发,我认为存在数据越权的概率大于90%。 (关于数据越权不清楚, 可以看一下这篇《挖逻辑漏洞不懂数据权限怎么赚大钱?》)

继续分析源码,找到获取考试详情的接口,发现只有一个id参数,随便传个数字试一下,这不巧了嘛,返回了别人的考试结果,其中包含了用户的真实姓名、手机号、得分等等。由于id是自增id,通过能够获取到数据的id的最大值来判断,泄露考试详情数据量近7位数,即使去除重复用户的考试记录,泄露的用户隐私数据最少也应该是6位数了。

管理员权限
到这其实就可以交了,但是我都能获取任意用户的token了,不得再深度利用一下?上面有说到, token是通过用户信息获取的,那如果我们知道管理的id,是不是就可以拿到管理员的token了?

那这个信息哪里拿?一般公告、题目之类的肯定是由有管理员权限的用户编辑的(不明白为什么可以看一下这篇,有简单提到过《SRC实战:改个返回包就严重了?》),那就看看会不会返回创建者ID之为类的咯。幸运的是,在获取题目信息的接口中,返回了create_id,甚至还返回了create_name(管理员),真的是贴心呢。

拿到管理员的id后,通过管理员的id创建了一个token登录,发现小程序内也没有多出什么功能?那看来这只是一个纯用户端,那后台在哪里?

一般情况下,我会先尝试将小程序的域名直接放到浏览器中访问一下,没想到,在浏览器中访问后直接就跳到管理后台页面了。这还有什么可说的,JS代码审计呗,先找到token的传输方式,再随便找一个接口,用之前小程序获取到的token试一下,直接返回数据,原地起飞,管理员权限拿下。

其实这一步后面也没这么简单,它的管理后台菜单项是后台返回的,还要去猜解参数、构造返回值等,搞了我挺久的。不过都有token了,这些都不是重点了。

0x01
虽然但是,看起来好像危害挺大的样子,最终厂商给的是高危,不过是一个不到500块的高危,理由是边缘产品(虽然它的公告也没有明确的对产品进行分类),我只能说,没见过哪个边缘产品有超过6位数用户的。就这样吧,毕竟话语权在人家那里。

根据以上网络安全技能表不难看出,网络安全需要接触的技术还远远很多,常见的技能需要学习:外围打点能力、钓鱼远控能力、域渗透能力、流量分析能力、漏洞挖掘能力、代码审计能力等。

【----帮助网安学习,以下所有学习资料免费领!】

① 网安学习成长路径思维导图
② 60+网安经典常用工具包
③ 100+SRC漏洞分析报告
④ 150+网安攻防实战技术电子书
⑤ 最权威CISSP 认证考试指南+题库
⑥ 超1800页CTF实战技巧手册
⑦ 最新网安大厂面试题合集(含答案)
⑧ APP客户端安全检测指南(安卓+IOS)

网络安全的知识多而杂,怎么科学合理安排?

一、基础阶段

★中华人民共和国网络安全法 (包含18个知识点)
★Linux操作系统 (包含16个知识点)
★计算机网络 (包含12个知识点)
★SHELL (包含14个知识点)
★HTML/CSS (包含44个知识点)
★JavaScript (包含41个知识点)
★PHP入门 (包含12个知识点)
★MySQL数据库 (包含30个知识点)
★Python (包含18个知识点)
————————————————

img

入门的第一步是系统化的学习计算机基础知识,也就是学习以下这几个基础知识模块:操作系统、协议/网络、数据库、开发语言、常用漏洞原理。前面的基础知识学完之后,就要进行实操了。

因为互联网与信息化的普及网站系统对外的业务比较多,而且程序员的水平参差不齐和运维人员的配置事物,所以需要掌握的内容比较多。

二、渗透阶段

■SQL注入的渗透与防御(包含36个知识点)
■XSS相关渗透与防御(包含12个知识点)
■上传验证渗透与防御(包含16个知识点)
■|文件包含渗透与防御(包含12个知识点)
■CSRF渗透与防御(包含7个知识点)
■SSRF渗透与防御(包含6个知识点)
■XXE渗透与防御(包含5个知识点)
■远程代码执行渗透与防御(包含7个知识点)
■…(包含…个知识点)
————————————————

在这里插入图片描述在这里插入图片描述
在这里插入图片描述

掌握常见漏洞的原理、使用、防御等知识。Web渗透阶段还是需要掌握一些必要的工具。

主要要掌握的工具和平台:burp、AWVS、Appscan、Nessus、sqlmap、nmap、shodan、fofa、代理工具ssrs、hydra、medusa、airspoof等,以上工具的练习完全可以利用上面的开源靶场去练习,足够了;

三、安全管理(提升)

★渗透报告编写(包含21个知识点)
★等级保护2.0(包含50个知识点)
★应急响应(包含5个知识点)
★代码审计(包含8个知识点)
★风险评估(包含11个知识点)
★安全巡检(包含12个知识点)
★数据安全(包含25个知识点)
————————————————

主要包括渗透报告编写、网络安全等级保护的定级、应急响应、代码审计、风险评估、安全巡检、数据安全、法律法规汇编等。

这一阶段主要针对已经从事网络安全相关工作需要提升进阶成管理层的岗位。如果你只学习参加工程师方面的岗位,这一阶段可学可不学。

四、提升阶段(提升)

■密码学(包含34个知识点)
■JavaSE入门(包含92个知识点)
■C语言(包含140个知识点)
■C++语言(包含181个知识点)
■Windows逆向(包含46个知识点)
■CTF夺旗赛(包含36个知识点)
■Android逆向(包含40个知识点)
————————————————

主要包括密码学、JavaSE、C语言、C++、Windows逆向、CTF夺旗赛、Android逆向等。

主要针对已经从事网络安全相关工作需要提升进阶安全架构需要提升的知识。

【----帮助网安学习,以下所有学习资料免费领!】

① 网安学习成长路径思维导图
② 60+网安经典常用工具包
③ 100+SRC漏洞分析报告
④ 150+网安攻防实战技术电子书
⑤ 最权威CISSP 认证考试指南+题库
⑥ 超1800页CTF实战技巧手册
⑦ 最新网安大厂面试题合集(含答案)
⑧ APP客户端安全检测指南(安卓+IOS)

结语

给小伙伴们的意见是想清楚,自学网络安全没有捷径,相比而言系统的网络安全是最节省成本的方式,因为能够帮你节省大量的时间和精力成本。给自学的小伙伴们的意见是坚持住,既然已经走到这条路上,虽然前途看似困难重重,只要咬牙坚持,最终会收到你想要的效果

  • 20
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值