返回首页
最新
我在云计算/平台工程领域工作了十年。有一件事一直让我感到沮丧:每个备份工具要么依赖脆弱的内核模块进行变更块跟踪,要么在数据变化1%时仍然进行全盘扫描。
因此,我们开发了XReplicator。它使用eBPF跟踪点在块设备层跟踪脏扇区——不需要内核模块,不需要虚拟机监控器API,也不需要云特定的钩子。代理程序在虚拟机内部运行,适用于任何平台。
内核开发者称我使用eBPF进行磁盘数据复制是疯狂的。但数据说明了一切:
- 完全备份:约17分钟
- 在1.4%变化后增量备份:约2分钟
- 在0.4%变化后增量备份:约56秒
- 扫描的数据量比完全备份少71倍
- 存储节省65-72%(LZ4 + 块级去重)
每个内核版本无需编译内核模块,无需重启,通过eBPF验证器实现沙箱执行。从链中的任何点恢复文件、分区或完整磁盘。
诚实的警告:eBPF路径仅适用于Linux内核5.10及以上版本。对于旧版Linux和Windows,我们退回到基于全盘扫描的增量备份——速度较慢,但可以正常工作。
XReplicator源于XMigrate,这是我们开源项目,旨在使虚拟机工作负载在不同云之间可移植。该产品是闭源的,但有一个免费的社区版本。
https://xmigrate.cloud
https://github.com/xmigrate/xreplicator/releases
欢迎深入讨论eBPF的实现——请随时提问。
我一直在寻找扩大写作反馈的方法。最近发现了这个网站:https://teachquill.com<p>想知道其他人是如何处理这个问题的——使用工具还是手动反馈?
嗨,HN,
我在过去一年里一直在构建Spectator——一个专为渗透测试人员、红队成员和安全研究人员设计的脚本语言。
为什么要再创建一种语言?
大多数安全工作都是将Bash、Python和各种随机工具混合在一起。Spectator统一了这一切:一种语言,内置安全模块、原生GUI框架和包管理器——所有功能都编译成一个单独的二进制文件。
它的不同之处在于:
- 高级语法——类似Python的语法,支持f-strings、闭包和goroutines(生成)。侦查脚本只需5行代码。
- 内置黑客模块——PortScan、SubdomainEnum、SQLiTest、PayloadGen、CORS/SSRF、HTTP模糊测试、加密、编码。无需pip安装。
- 原生GUI框架(#Import Spec.GUI)——无需Electron的桌面工具。输入框、表格、标签、输出。支持Windows(WebView2)、Linux(WebKitGTK)和macOS(WKWebView)。
- Space包管理器——像coffee(侦查)和ghost(OSINT)这样的库经过SHA-256验证,能够阻止供应链攻击。
- 任务引擎——渗透测试工作流程,支持HTML报告生成。
- 交叉编译——spectator build script.str到app.exe用于Windows = 独立的二进制文件。
示例——GUI端口扫描器(完整工具):
```plaintext
spectator
#Import Spec.GUI
open.window({"title": "端口扫描器", "bg": "#070b14", "accent": "#00d4aa"})
GUI.input("target", "输入目标...")
GUI.button("扫描", "run_scan")
GUI.progress("bar")
GUI.output("out", {"height": 380})
GUI.on("run_scan", func() {
target = GUI.get("target")
GUI.print("out", "正在扫描 " + target)
ports = [21, 22, 23, 80, 443, 3306, 8080]
each p : ports {
if hasPort(target, p) {
GUI.print("out", "开放端口 " + str(p))
}
}
})
end()
```
当前状态:
- v2.0.0——在Windows、Linux和macOS上稳定的CLI/TUI
- Windows上的GUI完全功能正常;Linux/macOS上的GUI也能工作(WebKit与WebView2的差异)
- 大约177个内置函数,使用Go编写
- Space注册中心已上线,任何人都可以发布
我希望能得到以下反馈:
- 语法是否直观?(字符串连接——虽然不寻常,但我喜欢)
- GUI方法——原生桌面与基于网页的?
- 包管理器的安全性——SHA-256验证是否足够?
- 哪些模块会让你真正使用这个工具?
我知道安全工具领域竞争激烈,但仍然有空间为这个领域构建一种专用语言,而不是适配现有语言。
GitHub: [https://github.com/CzaxStudio/Spectator](https://github.com/CzaxStudio/Spectator)
文档: [https://github.com/CzaxStudio/SpectatorDocs/](https://github.com/CzaxStudio/SpectatorDocs/)
感谢任何想法、批评或奇思妙想。
大家好,我们是 Jon 和 Kristiane,我们正在构建 Orloj(<a href="https://orloj.dev" rel="nofollow">https://orloj.dev</a>),这是一个开源(Apache 2.0)多智能体 AI 系统的编排运行时。您可以在声明性 YAML 清单中定义智能体、工具、策略和工作流,而 Orloj 负责调度、执行、治理和可靠性。
我们之所以构建这个,是因为目前在生产环境中运行 AI 智能体的方式,和在 Kubernetes 出现之前运行容器的方式非常相似:临时脚本、缺乏治理、没有可观察性,也没有标准的方法来管理智能体队列的生命周期。我们与之交谈的每个人都在编写相同的混乱代码来将智能体连接在一起,而没有人能给出“哪个智能体调用了哪个工具,这样做是正确的吗?”的好答案。
Orloj 处理智能体的方式,就像基础设施即代码处理云资源一样。您编写一个清单,声明智能体的模型、工具、权限和执行限制。您可以将智能体组合成有向图——管道、层级或群体循环。
我们最兴奋的部分是治理。AgentPolicy、AgentRole 和 ToolPermission 在执行过程中实时评估,在每个智能体的回合和工具调用之前。与可能被模型忽略的提示指令不同,这些政策是运行时的门控。未经授权的操作会以结构化错误和完整的审计跟踪失败。您可以为每次运行设置令牌预算,白名单模型,阻止特定工具,并将政策范围限制到单个智能体系统。
为了确保可靠性,我们构建了基于租约的任务所有权(因此崩溃的工作者不会留下孤立任务)、带抖动的指数重试上限、幂等重放和死信处理。调度器支持 cron 触发器和基于 webhook 的任务创建。
架构采用服务器/工作者分离。orlojd 托管 API、资源存储(开发时为内存,生产时为 Postgres)和任务调度器。orlojworker 实例负责声明和执行任务,通过网关(OpenAI、Anthropic、Ollama 等)路由模型请求,并在可配置的隔离环境中运行工具——直接、沙盒、容器或 WASM。对于本地开发,您可以通过 orlojd --embedded-worker --storage-backend=memory 在单个进程中运行所有内容。
工具隔离对我们来说非常重要。一个网络搜索工具可能不需要沙盒,但代码执行工具应该在没有网络、只读文件系统和内存限制的容器中运行。您可以根据风险级别为每个工具配置这些设置,运行时会强制执行。
我们还添加了原生 MCP 支持。您注册一个 MCP 服务器(stdio 或 HTTP),Orloj 会自动发现其工具,并使其成为应用治理的一流资源。因此,您可以连接像 GitHub MCP 服务器这样的东西,同时对智能体可以执行的操作进行政策执行。
我们提供了三个入门蓝图(管道、层级、群体循环)。
文档:<a href="https://docs.orloj.dev" rel="nofollow">https://docs.orloj.dev</a>
我们还在构建适用于治理至关重要的操作工作流的入门模板。路线图上的首要任务:1. 事件响应分流,2. 合规证据收集器,3. CVE 调查管道,4. 秘密轮换审计员。我们心中有 20 个模板,欢迎社区贡献。
我们是一个小团队,目前是 v0.1.0,因此还有很多内容在路线图上——托管云、合规打包等。但完整的运行时今天已经开源,我们非常希望听到您对我们迄今为止构建的内容的反馈。您会用这个做什么?还有什么缺失的?