freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

不同业务场景下的漏洞趋向分析
2023-01-13 00:47:46
所属地 新疆

本文主要站在渗透测试和漏洞挖掘的角度,分析不同业务场景下的漏洞易发生点。

渗透测试人员需求的核心技能在大体上是相同的,对于测试不同的系统,不过是用同一把弓打不同的靶。在冰点雪地里,多是些静态的、伪装的靶;在风暴沙尘中多是些移动的、模糊的靶。本文想说明的不是如何打静态靶和如何打动态靶。而是,因为有雪,所以要戴墨镜打靶;因为有风,所以要计算偏移打靶。利用不同场景下渗透测试或者漏洞挖掘的趋向性,以更高效的完成一次测试,是本次讨论的意义。

内网中的渗透测试

内网环境中的系统有一个很大的特点,就是登录框。

在进行内网资产发现的时候,大部分系统直接访问后都只展现一个登录框,没有其他功能,想要操作只能登录进系统。这类系统主要是给员工使用的,方便推进企业内部业务。像常见的如xxx监测平台,其主要功能就是“查”;xxx营销系统,其主要功能也不过是穿了衣服的增删改查。再复杂点的,可能会涉及到权限分配,文件流转之类的,总体上功能相对简单。

登录框系统

“登录框系统” 就是这里要讨论的内网环境下的测试主体。

互联网中的渗透测试

对互联网系统进行渗透测试,是更加纯粹的黑盒测试,更符合渗透测试广知的定义,即通过模拟黑客的攻击,来评估计算机系统的安全。

对于一个开放的网站来说,它的作用不止是实现某种单一的目的。譬如,某集团内部有一员工信息管理系统,那么它的目的就是管理员工信息;而在互联网上,如存在一个商城系统,它所涉及的功能就不是简单的卖东西。一个网上商城不仅需要能卖东西,还要能吸引用户。互联网环境中的网站要吸引用户,就不可避免的在登录之前,就需要展示大量信息,完成大量交互,好引起过路人的兴趣。此时,即便不进行登录,也能操作很多功能;登录之后,暴露面又会继续增加,常见的以个人信息“增删改查”为基础,进而从功能点上发现更多漏洞。但是,一个网站不只有用户,还需要管理员。管理员再延伸出更多权限更大的功能,随着暴露面的增加漏洞风险也在增加。

网上商城

不能说互联网中就没有 “登录框系统”,这里的互联网系统更偏向于对外业务系统,侧重点在给用户使用,而不是员工。

两者有什么区别

目标群体

对于内部系统,其主要作用对象是企业内部的员工。企业不需要向员工们宣传这个系统,当员工需要完成某项工作时,直接分配账号告知地址使用即可。

对于互联网系统,其主要作用对象是网上的用户。目标群体不同就需要多一种属性应对,即需要向网上的用户宣传这个系统,简单理解就是打广告。倘若只有一个登录框,如何吸引用户使用?于是,这类系统就不得不增加功能或者放开一部份功能,用作展示和体验进行引流。此时,系统的权限结构就发生了改变。

权限结构

企业内部系统功能实现的目的是为了满足企业需求,通过推进企业建设创造价值。

在权限构成上,大多数只存在两种情况:有权限或无权限;即有权限的都能登录系统使用系统功能,无权限的都不能登录系统不能使用系统功能;

内部系统权限结构

我认为这类系统在登录之后,每个人都是用户,没有普通用户和管理员用户一说,而是在权限上进行了区分。譬如,A用户拥有录入信息、修改信息权限;B用户拥有增加账号、删除账号权限。此时,B能操作的权限,看似很“大”,符合广义认知中的管理员权限,但是并不能说B就是管理员,A就是普通用户,两者只是权限不同, 负责了不同的业务功能而已。

这一点在互联网系统中就大不相同。

互联网系统功能实现的目的是为了满足用户需求,通过利用用户需求创造价值。

在权限构成上,就显得复杂的多。游客,可以操作公用的功能,不需要账号也能操作。用户,可以操作账号独有的功能,比如加入购物车,付款等;管理员,可以操作管理员独有的功能,比如管理整个商城的运行情况。

互联网系统权限结构

粗略一看,好像和内部系统没有什么区别,只是多了一部分可在未登录状态下的可操作功能罢了。实际上,这里的管理员之所以被称为管理员,关键在于互联网系统的管理端往往独立于用户系统。所以不能同内部系统一样单纯的在纵向用权限高低来对账户区分。他的组合是,用户系统+内部系统的形式,管理端对应的就是内部系统,当然这个系统可能是开放的也可能是搭建在内部的。

这种用户系统+内部系统的形式,即使从字面上看,也应当比单个内部系统涉及的功能更加复杂,事实也是如此。

功能复杂度

功能越复杂意味着存在漏洞的概率越大。

互联网系统的功能往往比内部系统要复杂的多,除了最基本的增删改查数据,还要可能涉及用户间的交互、实时通讯、分享共享等;

即时客服通讯

随着功能复杂度的提升,常规的检查手段或许已经捉襟见肘,想发现复杂功能的漏洞就不再是发送几个单引号,修改几次请求信息这么简单。需要测试人员拥有更丰富的经验,并且对复杂功能的逻辑运行较为了解,才能在数百次重放与观察中发现丁点蛛丝马迹。

进行高效的漏洞发现

前文所言,内部系统和互联网系统存在三个主要区别:

  • 目标群体不同,决定了业务深度不同;

  • 权限结构不同,决定了系统复杂度不同;

  • 功能复杂度不同,决定了风险程度不同;

经过以上分析,可以得到如下结论:

对于内部系统,更应该注意系统内外的权限突破和系统内用户间的权限使用问题。

如,弱口令,权限绕过,越权,未授权访问等等;

对于互联网系统,更应该注意业务功能上的风险,以及多权限子系统联动的情况。

如,0元购买、无限积分、用户间的交互、子系统间的交互等等;

# 漏洞 # 渗透测试 # web安全 # 漏洞挖掘 # 业务场景‘
本文为 独立观点,未经允许不得转载,授权请联系FreeBuf客服小蜜蜂,微信:freebee2022
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者
文章目录