0 n-decoy
对AI代理和扫描器攻击的api进行欺骗。零依赖关系。
真正的防御将攻击者拒之门外。 0n-decoy 添加图层 浪费他们的时间,告诉你他们来了:
| 它是做什么的 | |
|---|---|
| 蜂蜜的路径 | /secure-keys, /api/vault/export, /.env, /.git/config, /wp-login.php, /api/internal/… (加上 robotsLures() 用于robots.txt,以及您自己的私人文件 extraHoney) -没有真正的客户要求这些。命中标记将地址标记为24小时。 |
| 金丝雀的令牌 | 看起来和你真正的代币一模一样。认可 没有数据库:令牌携带只有你的秘密才能产生的HMAC标签。把它们放在任何地方(文档、CRM笔记、回购);任何使用都是一个关键的警报,它从哪里泄露。 |
| 假的世界 | 可信的JSON和配置文件,充满了金丝雀凭证和“内部笔记”,可以引导自动代理找到更多的蜂蜜路径。 |
| 限定 | 标记的地址得到缓慢的答复。蛮力-很多 不同的 坏的代币-得到诱饵世界。永久重试的陈旧令牌则不会。 |
它永远不会将虚假数据提供给带有 有效的 凭据,永远不会改变真实用户收到的信息,也永远不会被黑客攻击。
import { createDecoy, middleware } from '0n-decoy';
const decoy = createDecoy({
secret: process.env.DECOY_SECRET, // keep it OUT of your database
host: 'api.example.com',
onEvent: (e) => alertMe(e), // { kind, severity, ip, path, ... }
});
app.use(middleware(decoy, { checkToken: async (t) => !!(await lookUp(t)) }));
const { token } = decoy.mint('planted in the Q3 board doc'); // a canary to plant
guarded: (path) => boolean 将标记地址的虚假世界限制在分发数据的路径上,因此对于共享地址的人来说,登录页面保持真实。
个人链接和永久禁令(1.4)。 通过 beaconBase (可选 hopUrl(一个离线页面,如b谷歌Apps Script web应用程序)。然后,每个诱饵都带有该访问者的独特链接。下面是 任何 地址将该地址与访问者绑定,两者都被禁止。禁令也适用于金丝雀使用,私人陷阱命中,或高陷阱得分。 neverBan(ip) 保护您信任的地址,例如最近使用有效令牌的地址。
带上你自己的商店(添加) banned/ban/remember/recall 用于多实例部署(get(ip), bump(ip, { weight, flagMinutes, distinct })); memoryStore() 包括在内。
为之构建并运行 0 n3.