brainax

应用安全

“Vibe coding”课程第 18 课,共 26 课。免费,有动画和小测验。

错误 1:密钥写在代码里

AI 写的代码能跑,但不一定安全。本课例子:你给同年级同学做了一个 AI 作业助手。图里是常见错误:红叉,旁边是带对勾的正确做法。错误 1:付费 AI API 的密钥放在前端或公开仓库里。机器人一直在扫描 GitHub,很快就能找到密钥。密钥泄露了?马上去服务后台作废它,再生成一个新的。

错误 2 和 3:门没关

错误 2:数据库没有访问规则,比如数据库那课讲的 RLS。这样任何人都能下载所有同学的数据。错误 3:管理后台(管理网站的页面)只是靠不显示按钮来“藏”。可 /admin 这个地址照样能手动输入。“这人真是管理员吗?”的检查必须在服务器上、每次请求都做,而不是只在界面里。

错误 4:相信浏览器

错误 4:相信浏览器发来的东西。前端的一切都在用户自己的电脑上。用开发者工具(按 F12)他能改任何请求:价格、自己的 id、“管理员”身份。规则:服务器自己检查请求是谁发的、有没有权限,价格和积分也由服务器自己算。图里拍板的是服务器,不是浏览器。

错误 5:不设上限

错误 5:不设上限。每问一次 AI 助手都要花你的钱,而一个机器人一晚上能问几千次。限流(rate limit):规定每个用户每分钟最多发多少请求,超出的回复“请稍等”。举例:每个学生每分钟 20 个问题绰绰有余。如果 AI 服务后台支持,再设一个花费上限。

错误 6:有漏洞的依赖库

错误 6:依赖有漏洞。依赖就是 npm install 下载的别人写的库(图里第二行)。旧版本里会被发现漏洞,也就是能被攻击的缺口,所以要及时更新。尽量用知名的包。陷阱:AI 有时会编出一个不存在的包名,而攻击者会抢注这种名字并放进恶意代码。遇到陌生的包?先确认它真实存在而且常用。

个人数据和安全检查

个人数据:任何能认出一个人的信息,比如姓名、邮箱、电话。只收应用离了就不能用的那部分:作业助手有邮箱就够了。写一份简短的隐私政策:收集什么、为什么收集。上线前让智能体“按这份清单做一次安全检查”。但它说“都没问题”,你也要对着图亲自再过一遍。

自测一下

  1. AI API 密钥被传到了公开仓库。第一步做什么?
    正确答案: 在后台作废密钥,再生成新的. Git 会记住历史,机器人可能早已复制了密钥。只有作废才能让旧密钥失效。
  2. 价格是浏览器请求里带过来的,能信吗?
    正确答案: 不能,价格要由服务器自己算. 前端跑在用户电脑上,他能改任何请求。https 保护的是传输路上,不保证发送者老实。
  3. AI 助手为什么需要限流?
    正确答案: 防止机器人发出成千上万次付费请求. 每次请求 AI 都要花钱。限流能防止某个用户或机器人把你的预算烧光。

← 后台任务和定时任务 AI 智能体地图 →