freeBuf
主站

分类

云安全 AI安全 开发安全 终端安全 数据安全 Web安全 基础安全 企业安全 关基安全 移动安全 系统安全 其他安全

特色

热点 工具 漏洞 人物志 活动 安全招聘 攻防演练 政策法规

点我创作

试试在FreeBuf发布您的第一篇文章 让安全圈留下您的足迹
我知道了

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

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

FreeBuf+小程序

FreeBuf+小程序

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

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

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

内网中的渗透测试

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

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

登录框系统

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

互联网中的渗透测试

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

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

网上商城

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

两者有什么区别

目标群体

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

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

权限结构

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

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

内部系统权限结构

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

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

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

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

互联网系统权限结构

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

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

功能复杂度

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

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

即时客服通讯

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

进行高效的漏洞发现

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

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

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

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

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

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

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

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

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

# 漏洞 # 渗透测试 # web安全 # 漏洞挖掘 # 业务场景‘
本文为 独立观点,未经授权禁止转载。
如需授权、对文章有疑问或需删除稿件,请联系 FreeBuf 客服小蜜蜂(微信:freebee1024)
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者
文章目录