更新日志
注意:本次升级涉及较大配置文件变动。推荐在备份好原配置文件后删除旧文件,并根据新的 example 配置文件重新编写配置。如果未进行变更,系统会将配置文件进行备份,使用默认配置进行扫描。
修复问题
- 修复 Ctrl-C 无法中断扫描的问题:
- 修复了在扫描过程中按 Ctrl-C 无法中断操作的问题,提升用户体验。
优化改进
-
优化 debug 输出内容:
- 改进了调试信息的输出格式,使信息更加明确和美观,便于调试和排查问题。
-
提高扫描性能,降低内存占用:
- 修复 go html 库的 maxbuf 配置未导出导致的可能存在的内存溢出问题。
- 为响应数据的图标和标题增加了缓存机制,提升处理效率。
- 增加 HTML 解析的最大长度限制,防止解析过长数据导致的问题。
- 修复上游正则库中的垃圾回收(GC)问题,提升系统稳定性。
- 优化插件执行效率,使扫描过程更为高效。
- 优化缓存机制,减少内存使用量。
新增功能
-
新增 example 配置文件,减少非常用配置变更带来的冲突问题:
- 新版本 xray 2.0 系列工具会创建一个 example 文件,不再创建默认配置文件。用户可以复制 example 文件并去掉 example 后缀,然后修改其中内容。
-
YAML 插件变化:
- 新增
print
函数:方便在调试场景下打印信息。 - 新增
uuid
函数:支持生成随机的 UUID。 - 新增
format
函数:支持格式化字符串,可以通过指定对齐字符、前缀和步进参数来调整字符串的显示样式。 - 新增
bload
函数:支持将字符串数据按照特定编码规则转换为字节序列。 - 新增
gzip
函数:支持对字符串或字节序列数据进行 GZIP 压缩。 - 新增
decToHex
函数:支持将十进制转换为十六进制。 - 在 YAML 插件中,定义变量时,下划线开头的变量将不会输出:
- 这样在输出时,JSON 中不会包含某些不希望输出的变量值。
- 增强 YAML 插件的鲁棒性,支持在函数中填写不同数据类型。所有只能填写字符串或字节的数据项,两者都可以填写,不再报错。
- 支持函数调用和方法调用两种方式,即
func(v1,v2)
和v1.func(v2)
均可,不再报错。 - 修复
icon
函数,使其行为逻辑与getIconContent
函数保持一致。 - udp/tcp的request支持获取addrType类型的参数
- 新增
-
支持在未配置的情况下调用 dnslog.cn 进行漏洞检测:
- 新增对 dnslog.cn 的支持,即使未进行相关配置也能使用该服务进行漏洞检测。
其他改进
-
修复缓存和不合理的超时配置导致的扫描结果不稳定问题:
- 改进缓存机制和超时配置,解决因配置不当导致的扫描结果不稳定问题。
-
为 group 命令添加 path 约定:
- 为
group
命令添加路径约定,以便使用group
文件的相对路径。在group
中使用{{path}}
将用group
文件本身的路径替换该内容。
- 为
-
新特性:多目标输入支持多个 -t 参数:
- 取消多目标输入时使用逗号分隔的方式,改为支持以多个
-t
输入多个目标,因为 URL 中可能存在逗号,避免冲突。
- 取消多目标输入时使用逗号分隔的方式,改为支持以多个