
tirreno v0.10.1
开源安全框架,用于实时事件跟踪、威胁检测和风险评分。通过规则引擎和审计跟踪监控用户行为,检测欺诈、机器人攻击和账户劫持。
tirreno
tirreno 是一个安全框架。
tirreno [tir.ˈrɛ.no] 帮助您理解、监控并保护产品免受威胁、欺诈和滥用。传统的网络安全侧重于基础设施和网络边界,而大多数安全漏洞实际上是通过受损账户和应用逻辑绕过防火墙、SIEM、WAF等防御手段发生的。tirreno 在威胁真正发生的地方检测威胁:您的产品内部。
tirreno 是一款手写、依赖少、"低技术"的 PHP/PostgreSQL 应用。经过简单的五分钟安装后,您可以通过 API 调用注入事件,并立即访问实时威胁仪表盘。
核心组件
- SDK 与 API 通过 SDK 将 tirreno 集成到任何产品中。 只需几行代码即可发送带有完整上下文的事件。
- 内置仪表盘 从单一界面监控和理解产品的 安全事件。几分钟内即可投入使用。
- 单一用户视图 分析特定用户的行为模式、风险评分、 关联身份和活动时间线。
- 规则引擎 使用预设规则自动计算风险评分, 或创建针对您的产品定制的规则。
- 审核队列 自动暂停有风险事件的账户, 或通过阈值设置将其标记为手动审核。
- 字段审计追踪 跟踪重要字段的修改, 包括变更内容和时间,以简化审计和合规工作。
预设规则
Account takeover Credential stuffing Content spam Account registration Fraud prevention Insider threat
Bot detection Dormant account Multi-accounting Promo abuse API protection High-risk regions
适用场景
- 自托管、内部及遗留应用:嵌入安全层, 通过审计追踪扩展安全性,保护用户账户 免遭接管,检测网络威胁并监控内部威胁。
- SaaS 和数字平台:防止跨租户数据泄露、 在线欺诈、权限提升、数据外泄和业务 逻辑滥用。
- 电子商务和在线市场:检测支付欺诈、账户 滥用、虚假评论、促销代码利用、库存操控, 并防范凭证填充和卡片测试攻击。
- 关键任务应用:敏感应用保护, 甚至适用于气隙部署。
- 工业控制系统(ICS)和指挥控制(C2):保护 运营技术、指挥系统和关键基础设施 平台免受未经授权的访问和恶意指令。
- 非人类身份(NHIs):监控服务账户、API 密钥、 机器人行为,并检测受损的机器身份。
- API 优先应用:防范滥用、速率限制 绕过、爬取和未经授权的访问。
在线演示
查看在线演示,请访问 play.tirreno.com (用户名 admin / 密码 tirreno)。
系统要求
- PHP:8.0 至 8.3 版本
- PostgreSQL:12 或更高版本
- PHP 扩展:
PDO_PGSQL、cURL - HTTP Web 服务器:
Apache,需启用mod_rewrite和mod_headers - 操作系统:推荐使用类 Unix 系统
- 最低硬件要求:
- PostgreSQL:512 MB 内存(推荐 4 GB)
- 应用:128 MB 内存(推荐 1 GB)
- 存储:每 100 万事件约需 3 GB PostgreSQL 存储空间
基于 Docker 的安装
要在 Docker 容器中运行 tirreno,可使用以下命令:
curl -sL tirreno.com/t.yml | docker compose -f - up -d
然后继续 快速开始 的第 4 步。
快速开始安装
- 下载 tirreno 的最新版本(ZIP 文件)。
- 将 tirreno-master.zip 文件解压到您希望在 Web 服务器上安装的位置。
- 在浏览器中访问
http://localhost:8585/install/index.php启动安装过程。 - 成功安装后,删除
install/目录及其所有内容。 - 在浏览器中访问
http://localhost:8585/signup/创建管理员账户。 - 对于 cron 任务设置,使用
crontab -e命令或编辑/var/spool/cron/your-web-server文件,插入以下调度表达式(每 10 分钟执行一次):
*/10 * * * * /usr/bin/php /absolute/path/to/tirreno/index.php /cron
使用 Heroku(可选)
点击此处启动 Heroku 部署。
通过 Composer 和 Packagist(可选)
tirreno 已发布在 Packagist 上,可通过 Composer 安装:
composer create-project tirreno/tirreno
或将其引入现有项目:
composer require tirreno/tirreno
SDK
自定义页面示例
tirreno 接收通用原语(用户/实体、IP、设备、会话、事件),并通过可组合的机制暴露它们:规则引擎、tirreno('queries') 构建器以及基于文件的 assets/pages/ 扩展系统——操作员可通过该系统表达任何风险模型。以下示例展示了基于该扩展系统构建的自定义页面。
LLM 机器人
风险用户
文档
查看用户指南了解如何使用 tirreno,开发者文档自定义集成,管理员文档了解安装、维护和更新。
关于
tirreno 是一个免费的开源安全框架。适用于任何产品的事件追踪、威胁检测和风险评分。
该项目始于 2021 年的专有系统,并于 2024 年 12 月以 AGPL 协议开源。
tirreno 的背后是一群才华横溢的工程师和专业人士,拥有超过十年的网络防御经验。我们通过苦行(ascétique)代码和开放技术的热爱,解决真实用户的挑战。tirreno 不受风险投资驱动。我们的灵感来自于有组织网络犯罪分子带来的日常威胁,这驱使我们重新构想安全在现代应用中应有的位置。
为什么叫 tirreno?
第勒尼安人(Tyrrhenian)可能早在公元前 800 年就生活在托斯卡纳和瑞士东部。"Tyrrhenian" 一词后来更常与伊特拉斯坎人(Etruscans)关联,第勒尼安海由此得名,并沿用至今。
根据历史资料,第勒尼安人是第一个使用号角预警即将到来的威胁的民族,这一做法随后被希腊和罗马军队采纳。
在设计徽标时,我们进行了自己的历史研究,并将 'tirreno' 的记载追溯到 15 世纪印刷版的《武加大译本》(拉丁语圣经)。我们保持小写,忠于原版——严格按书行事。tirreno 字标位于地平线之后,隐喻威胁态势无尽的演变周期以及我们超越它的承诺。
链接
报告安全问题
如果您发现了 tirreno 的安全相关问题,请发送邮件至 [email protected]。在 GitHub 上提交会将漏洞公之于众,使其易于被利用。我们会在问题解决后公开披露该安全漏洞。
收到报告后,tirreno 将采取以下步骤:
- 确认已收到报告并正在处理。
- 尝试重现问题并确认漏洞。
- 发布所有受影响包的新版本。
- 在发行说明中显著公布该问题。
- 如有要求,对报告人致谢。
许可证
本程序是自由软件:您可以依据自由软件基金会发布的 GNU Affero 通用公共许可证(AGPL)第三版对其进行再分发和/或修改。
名称 "tirreno" 是 tirreno technologies sàrl 的注册商标,tirreno technologies sàrl 特此拒绝根据 GNU Affero 通用公共许可证第三版第 7(e) 条授予 "tirreno" 的商标许可,除非与 tirreno technologies sàrl 另行达成协议。
本程序分发时希望它有用,但不提供任何担保;甚至没有默示的适销性或特定用途适用性担保。详情请参阅 GNU Affero 通用公共许可证。
您应已随本程序收到一份 GNU Affero 通用公共许可证副本。如果没有,请参阅 GNU Affero 通用公共许可证 v3。
作者
tirreno 版权所有 (C) 2026 tirreno technologies sàrl, 瑞士沃州。(许可证 AGPLv3)
't'