当前位置: 首页 > news >正文

用IAST工具强化“越权检测”能力,提升系统安全性

什么是越权漏洞

越权漏洞是一种常见的逻辑安全漏洞。越权漏洞指的是攻击者利用系统中的漏洞,获得超过其正常权限的访问权限,执行未授权操作。

越权漏洞主要分为两种类型:水平越权(横向越权)和垂直越权(纵向越权)。水平越权是指用户进行同级别的越权访问、删除、修改数据。例如,在查看用户信息页面时,通过修改URL中的参数,攻击者可能能够查看其他用户的信息。垂直越权则是由于后台应用没有做足够的权限控制,导致攻击者可以进行更高级别的越权访问,或控制其他用户拥有的数据。

越权漏洞危害

(1)隐私泄露

越权漏洞的存在导致敏感数据泄露,如用户个人信息、交易记录、企业机密等,用户容易受到身份盗窃、欺诈等。

(2)系统稳定性受损

攻击者可能利用越权漏洞对系统进行不当操作,如删除重要文件、篡改数据库内容或执行恶意代码,导致系统崩溃、服务中断、数据丢失或系统资源耗尽。

(3)企业经济损失

越权漏洞引起的数据泄露和系统稳定性受损可能导致客户信任丧失,影响企业业务运营。同时企业修复越权漏洞和恢复受损系统的成本也将非常高昂。

(4)国际利益危害

对于涉及国家安全、基础设施或关键信息系统的漏洞,可能被攻击者利用进行网络间谍活动、破坏关键设施或窃取敏感信息。

常用的越权检测方式有哪些?

为了防止越权漏洞的发生,企业通常会采用以下几种方式进行越权漏洞检测:

检测方式

描述

代码

审计

通过对软件源代码进行静态分析来发现潜在漏洞的方法。检查代码中是否存在未经鉴权的函数调用或权限错误的代码逻辑。

渗透

测试

模拟攻击行为对系统的授权验证机制进行测试。可以采用黑盒测试和白盒测试相结合的方式。黑盒测试可以模拟攻击者的行为,对系统进行渗透测试,以发现系统对越权访问的容忍度。白盒测试则通过监控软件的执行流程,分析是否存在越权访问的迹象。

审计

日志

分析

分析审计日志发现用户和程序的异常访问行为及越权访问的痕迹。

通过以上几种方式虽然可以检测越权漏洞,但是需要较高的专业技能,也需要消耗大量的时间成本。那有没有一种越权检测方式可以同时降低越权检测的专业性和时间成本,提升安全检测的效率呢?

IAST工具—自动化检测越权风险

开源网安凭借成熟的IAST产品—VulHunter灰盒安全测试工具​​​​​​​,结合自研的DAST引擎,可以为企业提供强大的自动化越权检测能力,提升越权检测效率。

VulHunter越权检测利用IAST技术自动收集应用API接口和各个请求执行信息上送至越权检测系统,实现自动化越权检测。具体检测原理如下:

1、功能测试人员触发业务请求报文,Java agent通过插桩技术获取对应报文请求信息、执行上下文和应用的响应内容发送给IAST越权检测系统。

2、IAST越权检测系统对Java agent上送的信息根据API接口进行报文编排。

3、IAST越权检测系统将待检测的业务请求报文进行编排后,自动将请求中的凭证分别替换成同等权限或低权限用户的凭证,然后进行重放该请求。

4、IAST越权检测系统获取Java agent上报检测请求执行上下文和应用系统的响应报文。

5、越权验证引擎根据执行的上下文和响应内容进行越权漏洞判断。

图:越权检测原理

越权检测的优势

VulHunter越权检测相对于传统的越权检测方法具有以下优势:

(1)检测全面,资产可视化颗粒度高

全面感知和管理应用程序API资产,可以实现资产可视化管理;可以对资产进行分类、标签、评分等操作,方便安全人员对资产进行优先级排序和风险评估;支持对加密请求和分布式微服务请求进行识别和收集,通过对加解密函数和微服务节点的插桩,获取明文的API和数据信息,提高API检测覆盖率。

结合功能测试的业务请求收集报文,可避免安全人员认知片面缺陷,而忽略一些边缘场景或者隐藏功能的API。此外VulHunter还实现了请求跨服务全链路跟踪,可以清晰看到每个请求来源、目的、参数、响应等信息,最大程度保障了安全测试的全面性。

(2)自动化程度高

通过收集和梳理应用的HTTP请求流,重新编排应用请求,按照时间先后顺序构建用户业务请求线,模拟用户正常操作流程,实现自动化越权漏洞检测。

利用插桩技术对一些web框架的会话函数进行插桩获取上下文信息,进行登录请求识别、会话凭证信息提取,确认登录登出请求接口和会话参数,实现自动化登录配置信息确认和提取,减少人力成本。

通过采集权限框架的配置信息,获取应用现有权限清单,自动化获取不同角色用户账号,实现自动化权限测试。

(3)准确率高

通过对应用程序运行时的函数调用序列进行收集,实现请求行为动作捕获,准确判断每个请求的功能和影响,避免请求误判或者漏判。

通过对应用程序执行过程中经过的关键函数进行触发感知,实现请求行为审计,准确判断每个请求权限和风险,最大程度降低请求误报或者漏报。

在基于传统响应信息重放比对模型基础上,提供多维度比对信息的可视化,不仅对比了响应信息是否存在相似性,还对比了响应信息的内容、格式、长度、状态码等信息,提高检测准确性和效率。

越权检测的价值

(1)提高越权风险检测效率

VulHunter越权检测可以无缝融入现有流程,加之被动插桩和越权服务自动重放请求的优势,可实现自动化检测越权风险,提高越权检测效率,减少人工干预,让安全团队能够更快速地识别和响应潜在越权威胁。此外,自动化检测还降低了人为错误的可能性,提高了检测准确性和可靠性

(2)提升系统安全性

及时发现并识别系统中的越权风险,防止未经授权的访问和数据泄露,有效阻止潜在安全威胁,保护企业核心资产和信息安全,保障业务安全,维护企业声誉和客户信任度

(3)优化企业资源分配

通过全面的API资产感知和管理,实现资产可视化,企业能更高效地分类、标签和评分其资产,优化资源配置和使用,将有限的资源集中在最需要加强的安全领域,提高安全投资效益

推荐阅读

IAST面面观 | 将IAST工具引入DevSecOps,让开发安全提速

IAST灰盒检测技术挖掘Web应用安全漏洞

相关文章:

用IAST工具强化“越权检测”能力,提升系统安全性

什么是越权漏洞 越权漏洞是一种常见的逻辑安全漏洞。越权漏洞指的是攻击者利用系统中的漏洞,获得超过其正常权限的访问权限,执行未授权操作。 越权漏洞主要分为两种类型:水平越权(横向越权)和垂直越权(纵…...

VirtualStudio配置QT开发环境

环境 VirtualStudio2022Qt5.12.10 安装msvc工具链(这一步不是必须的) 打开virtual studio,打开Virtual Studio Installer界面选择要安装的msvc版本,点击安装 安装VirtualStudio扩展 在线安装 打开virtual Studio,…...

Nature发文介绍使用ChatGPT帮助学术写作的三种方式

文章链接:https://www.nature.com/articles/d41586-024-01042-3 一、介绍 这篇文章是由Dritjon Gruda撰写的,讨论了生成性人工智能(AI)在学术写作、编辑和同行评审中的三种应用方式。Gruda认为,尽管学术界对聊天机器…...

【网络安全的神秘世界】Kali 自带 Burp Suite 使用指南:字体与CA证书设置详解等

🌝博客主页:泥菩萨 💖专栏:Linux探索之旅 | 网络安全的神秘世界 | 专接本 | 每天学会一个渗透测试工具 Kali 自带 Burp Suite 使用指南目录 Burp Suite的打开方式设置Burp Suite软件的字体大小查看Burp Suite 默认代理在火狐浏览器…...

【Go】爬虫数据解密_使用Go语言实现TripleDES加密和解密

是你多么温馨的目光 教我坚毅望着前路 叮嘱我跌倒不应放弃 没法解释怎可报尽亲恩 爱意宽大是无限 请准我说声真的爱你 🎵 Beyond《真的爱你》 引言 Triple Data Encryption Standard (TripleDES 或 3DES) 是一种对称加密算法,它通…...

【HarmonyOS NEXT】鸿蒙 如何在包含web组件的页面 让默认焦点有效

页面包含web组件Button组件等,把页面的默认焦点放到Button组件上,不起效果。 因为web组件默认会在组件加载完成后获取焦点; 可以在web的网页加载完成时onPageEnd回调中,将设置默认获焦的组件通过focusControl.requestFocus方法主…...

mysql常用参数配置详解my.cnf my.ini

1.关注生产中高频常用参数 # 数据库时区 log_timestamps = system # 刷盘策略 0,1,2 innodb_flush_log_at_trx_commit # 定义了 InnoDB 用于写日志数据的缓冲区大小。当事务发生时,日志首先被写入这个缓冲区,然后再被刷新(flush)到磁盘上的重做日志文件(redo log file…...

GlusterFS企业分布式存储

GlusterFS 分布式文件系统代表-nfs常见分布式存储Gluster存储基础梳理GlusterFS 适合大文件还是小文件存储? 应用场景术语Trusted Storage PoolBrickVolumes Glusterfs整体工作流程-数据访问流程GlusterFS客户端访问流程 GlusterFS常用命令部署 GlusterFS 群集准备环…...

SSH生成SSH密钥(公钥和私钥)

在设置SSH服务时,生成SSH密钥(公钥和私钥)是一个常见的任务。这些密钥用于安全地进行身份验证,无需输入密码。以下是如何生成SSH密钥的步骤: 1. 生成SSH密钥对 首先,您需要在客户端机器上生成一个SSH密钥…...

阶段性总结:如何快速上手一个新的平台或者技术

作为研发一枚,为了实现客户的各种需求,为了避免重复造轮子,通常需要快速调查到哪个轮子(比如各种平台,或者开发包等)好用,然后快速熟悉和上手。在接触到一个新的平台或者技术的时候,…...

kettle从入门到精通 第七十一课 ETL之kettle 再谈http post,轻松掌握body中传递json参数

场景: kettle中http post步骤如何发送http请求且传递body参数? 解决方案: http post步骤中直接设置Request entity field字段即可。 1、手边没有现成的post接口,索性用python搭建一个简单的接口,关键代码如下&#…...

第十二章:会话控制

会话控制 文章目录 会话控制一、介绍二、cookie2.1 cookie 是什么2.2 cookie 的特点2.3 cookie 的运行流程2.4 浏览器操作 cookie2.5 cookie 的代码操作(1)设置 cookie(2)读取 cookie(3)删除 cookie 三、se…...

【LeetCode滑动窗口算法】长度最小的子数组 难度:中等

我们先看一下题目描述&#xff1a; 解法一&#xff1a;暴力枚举 时间复杂度&#xff1a;o(n^3) class Solution { public:int minSubArrayLen(int target, vector<int>& nums){int i 0, j 0;vector<int> v;for (;i < nums.size();i){int sum nums[i];fo…...

MySQL 用户权限管理:授权、撤销、密码更新和用户删除(图文解析)

目录 前言1. 授予权限2. 撤销权限3. 查询权限4. Demo 前言 公司内部的数据库权限一般针对不同人员有不同的权限分配&#xff0c;而不都统一给一个root权限 1. 授予权限 授予用户权限的基本命令是GRANT 可以授予的权限种类很多&#xff0c;涵盖从数据库和表级别到列和存储过…...

Day39

Day39 JSP JSP底层 全称为Java Server Pages&#xff0c;JSP实际上就是一个servelet JSP:HTML页面Java代码&#xff0c;本质&#xff1a;servlet。 public class login_jsp{//JSP的9大内置对象private JSPWriter out;//当前JSP输出流对象private HttpServletRequest request;…...

Nginx之HTTP模块详解

Nginx是模块化的代码架构&#xff0c;其代码由核心代码与功能模块代码构成。Nginx的主要功能模块是HTTP功能模块&#xff0c;HTTP功能模块在HTTP核心功能的基础上为Nginx对HTTP请求的处理流程提供了扩展功能&#xff0c;这些扩展功能可以让用户很方便地应对访问控制、数据处理、…...

JCR一区 | Matlab实现GAF-PCNN、GASF-CNN、GADF-CNN的多特征输入数据分类预测/故障诊断

JJCR一区 | Matlab实现GAF-PCNN、GASF-CNN、GADF-CNN的多特征输入数据分类预测/故障诊断 目录 JJCR一区 | Matlab实现GAF-PCNN、GASF-CNN、GADF-CNN的多特征输入数据分类预测/故障诊断分类效果格拉姆矩阵图GAF-PCNNGASF-CNNGADF-CNN 基本介绍程序设计参考资料 分类效果 格拉姆…...

最新Prompt预设词分享,DALL-E3文生图+文档分析

使用指南 直接复制使用 可以前往已经添加好Prompt预设的AI系统测试使用&#xff08;可自定义添加使用&#xff09; 支持GPTs SparkAi SparkAi创作系统是基于ChatGPT进行开发的Ai智能问答系统和Midjourney绘画系统&#xff0c;支持OpenAI-GPT全模型国内AI全模型。支持GPT-4o…...

基于SpringBoot+Vue会所产后护理系统设计和实现

基于SpringBootVue会所产后护理系统设计和实现 &#x1f345; 作者主页 网顺技术团队 &#x1f345; 欢迎点赞 &#x1f44d; 收藏 ⭐留言 &#x1f4dd; &#x1f345; 文末获取源码联系方式 &#x1f4dd; &#x1f345; 查看下方微信号获取联系方式 承接各种定制系统 &#…...

Linux中的EINTR和EAGAIN错误码

Linux中的EINTR和EAGAIN错误码 在Linux系统中&#xff0c;进行系统调用时经常会遇到各种错误码。其中&#xff0c;EINTR&#xff08;Interrupted system call&#xff09;和EAGAIN&#xff08;Resource temporarily unavailable&#xff09;是两个较为常见的错误码&#xff0c…...

(LeetCode 每日一题) 3442. 奇偶频次间的最大差值 I (哈希、字符串)

题目&#xff1a;3442. 奇偶频次间的最大差值 I 思路 &#xff1a;哈希&#xff0c;时间复杂度0(n)。 用哈希表来记录每个字符串中字符的分布情况&#xff0c;哈希表这里用数组即可实现。 C版本&#xff1a; class Solution { public:int maxDifference(string s) {int a[26]…...

day52 ResNet18 CBAM

在深度学习的旅程中&#xff0c;我们不断探索如何提升模型的性能。今天&#xff0c;我将分享我在 ResNet18 模型中插入 CBAM&#xff08;Convolutional Block Attention Module&#xff09;模块&#xff0c;并采用分阶段微调策略的实践过程。通过这个过程&#xff0c;我不仅提升…...

Java 8 Stream API 入门到实践详解

一、告别 for 循环&#xff01; 传统痛点&#xff1a; Java 8 之前&#xff0c;集合操作离不开冗长的 for 循环和匿名类。例如&#xff0c;过滤列表中的偶数&#xff1a; List<Integer> list Arrays.asList(1, 2, 3, 4, 5); List<Integer> evens new ArrayList…...

pam_env.so模块配置解析

在PAM&#xff08;Pluggable Authentication Modules&#xff09;配置中&#xff0c; /etc/pam.d/su 文件相关配置含义如下&#xff1a; 配置解析 auth required pam_env.so1. 字段分解 字段值说明模块类型auth认证类模块&#xff0c;负责验证用户身份&am…...

IT供电系统绝缘监测及故障定位解决方案

随着新能源的快速发展&#xff0c;光伏电站、储能系统及充电设备已广泛应用于现代能源网络。在光伏领域&#xff0c;IT供电系统凭借其持续供电性好、安全性高等优势成为光伏首选&#xff0c;但在长期运行中&#xff0c;例如老化、潮湿、隐裂、机械损伤等问题会影响光伏板绝缘层…...

LeetCode - 199. 二叉树的右视图

题目 199. 二叉树的右视图 - 力扣&#xff08;LeetCode&#xff09; 思路 右视图是指从树的右侧看&#xff0c;对于每一层&#xff0c;只能看到该层最右边的节点。实现思路是&#xff1a; 使用深度优先搜索(DFS)按照"根-右-左"的顺序遍历树记录每个节点的深度对于…...

浪潮交换机配置track检测实现高速公路收费网络主备切换NQA

浪潮交换机track配置 项目背景高速网络拓扑网络情况分析通信线路收费网络路由 收费汇聚交换机相应配置收费汇聚track配置 项目背景 在实施省内一条高速公路时遇到的需求&#xff0c;本次涉及的主要是收费汇聚交换机的配置&#xff0c;浪潮网络设备在高速项目很少&#xff0c;通…...

【Redis】笔记|第8节|大厂高并发缓存架构实战与优化

缓存架构 代码结构 代码详情 功能点&#xff1a; 多级缓存&#xff0c;先查本地缓存&#xff0c;再查Redis&#xff0c;最后才查数据库热点数据重建逻辑使用分布式锁&#xff0c;二次查询更新缓存采用读写锁提升性能采用Redis的发布订阅机制通知所有实例更新本地缓存适用读多…...

CRMEB 中 PHP 短信扩展开发:涵盖一号通、阿里云、腾讯云、创蓝

目前已有一号通短信、阿里云短信、腾讯云短信扩展 扩展入口文件 文件目录 crmeb\services\sms\Sms.php 默认驱动类型为&#xff1a;一号通 namespace crmeb\services\sms;use crmeb\basic\BaseManager; use crmeb\services\AccessTokenServeService; use crmeb\services\sms\…...

C# 表达式和运算符(求值顺序)

求值顺序 表达式可以由许多嵌套的子表达式构成。子表达式的求值顺序可以使表达式的最终值发生 变化。 例如&#xff0c;已知表达式3*52&#xff0c;依照子表达式的求值顺序&#xff0c;有两种可能的结果&#xff0c;如图9-3所示。 如果乘法先执行&#xff0c;结果是17。如果5…...