跳到主要内容

48 篇博文 含有标签「代码审计」

IRify / SSA / SyntaxFlow 静态代码分析与代码审计实战

查看所有标签

性能优化:JavaScript SSA 前端解析方案的替代探索

· 阅读需 14 分钟
Yak Project
网络安全垂直语言团队

YAK 的 SSA 构建系统旨在打造通用的 SSA 后端框架,先前采用 Antlr4 作为通用前端,将多种语言统一转换为 AST,再译为 SSA IR,以驱动静态审计逻辑。但随着拓展,测试 JavaScript 生成 SSA IR 时,Antlr4 在解析某些语言的特定语法结构时存在效率低下的问题。

为提升 JavaScript 静态分析效率,引入微软 TypeScript-Go 项目中的 Go 实现 parser 替代 Antlr 前端,显著优化性能。本文聚焦于基于 TypeScript-Go AST 构建 JavaScript SSA 表达形式,探讨面对表达式语句、解构赋值、控制流等复杂结构时的通用 SSA 生成策略,并分享过程中踩的坑与实战经验,为多语言静态审计中应用 SSA IR 提供启发与参考。

代码审计:SyntaxFlow 完整攻击链路分析实战

· 阅读需 10 分钟
Yak Project
网络安全垂直语言团队

今天我们将通过一个实际案例,展示 SyntaxFlow 如何帮助我们快速定位并验证某 shop 中的一个后台 RCE 漏洞。

某 shop 是一款流行的 PHP 开源电商系统,本文分析的后台账号为:

· 路径:/index.php/Admin/Index

· 账号密码:admin/admin@123

本文将带你体验如何使用 SyntaxFlow 这一强大的静态代码分析工具,精准定位某 shop 中的命令注入漏洞,从漏洞原理到实际利用,一步步拆解整个攻击链路。

代码审计:使用 SyntaxFlow 挖掘 CVE 漏洞

· 阅读需 8 分钟
Yak Project
网络安全垂直语言团队

在代码审计产品从yakit分离出来作为单独产品的这一段时间中,除了底层ssa bug的修复和syntaxflow规则编写之外,我还利用irify做了一些新尝试,比如:

·对某些CVE进行复现,并且进行指定框架/某些漏洞的查缺补漏。

·进行未知的漏洞挖掘,并且进行CVE漏洞提交。

在开始读取文章之前,你可以对代码审计是弱基础,基于irify工具进行漏洞挖掘,会对代码审计流程进行优化,简化审计流程。希望读者也可以通过irify的助力去进行深入的代码审计。

代码审计:基于 SyntaxFlow 的 SCA 依赖成分分析规则

· 阅读需 7 分钟
Yak Project
网络安全垂直语言团队

软件成分分析(SCA)是一种用来识别分析某一个软件中所使用的组件与第三方库的来源、版本、许可证信息的技术。这些组件和库可能来源于开源社区、商业供应商或是企业自行开发,其存在很多潜在的安全合规问题。

SyntaxFlow 能够解析依赖包的版本信息,同时也允许用户编写规则来分析这些版本信息。通过对依赖版本的检测,可以有效识别项目中存在已知漏洞的依赖包,从而提升代码的安全性和稳定性。