Nuclei DSL 夺舍记:虚拟机沙箱降维兼容 Nuclei DSL

文章讨论了Nuclei漏洞模板程序的DSL机制,并指出其限制。为了解决这些问题,作者介绍了Yaklang和Yakit,它们提供了更强大的安全基础设施和兼容性。通过YakVM的沙箱环境,可以实现对NucleiDSL的无痛兼容,并提高执行效率和安全性。文章还提到了与WebFuzzer的集成,强化了匹配和提取功能。

背景

Nuclei 是一个被广泛使用的漏洞模版程序,它可以发起一系列的请求,并从请求中获取请求的结果是否符合某些条件,也可以从这些请求中提取用户期望的数据。为了增强 Nuclei 的表现力,它在一些版本中新增了 DSL 机制,DSL 本身是一个非常优秀的工程实践,可以极大增强文本内容的计算能力和逻辑表现力;准确地说 Nuclei DSL 并不是图灵完备的 DSL,它仅仅是使用了表达式的计算和逻辑运算特性来达成它的运算目的。在这种情况下,Nuclei 通过 DSL 来实现逻辑表达其实还是相对非常直观的。

作为技术同学,我们对这种简单的代码其实非常容易理解,因为它的语法(github.com/Knetic/govaluate)习惯本质上和一些主流编程语言的表达式计算部分非常相似。

一些编写 POC 检测框架的同学也会去学习或使用它类似的库实现 DSL 的功能。

有趣的需求 

Nuclei 开源了大量的模版,这些模版我们先抛开质量保证不谈(🐶),其表达简单,轻便快速可快速修改,短时间内积累了大量的忠实拥趸。在人力有限的情况下,直接“拿来”确实可以节省很多时间和精力。但是想要“缝合”其实并不是一个简单的事情。

首先“缝合”本身的在自己运营资源不足的情况下,是无法让运营效果超过一个成熟社区的;不断的 patch 其实远不如直接“加入”;基于这种原因,最直接的“缝合”也并不会让技术变得服务于人,徒增 “X years ago” 的 github dead r

评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值