| ▲ | gwerbin 4 hours ago | |||||||
Call me crazy but does AI not seem like the root cause here? At the beginning of the post they say that the AI agent found a file with what they thought was a narrowly scoped API token, and they very clearly state that they never would have given an AI full access if they realized it had the ability to do stuff like this with that token. So while the AI did something significantly worse than anything a hapless junior engineer might be expected to do, it sounds like the same thing could've resulted from an unsophisticated security breach or accidental source code leak. Is AI a part of the chain of events? Absolutely. Is it the sole root cause? Seems like no. | ||||||||
| ▲ | oskarkk 3 hours ago | parent | next [-] | |||||||
> what they thought was a narrowly scoped API token, and they very clearly state that they never would have given an AI full access if they realized it had the ability to do stuff like this with that token It sounds like the token the author created just didn't have any scope, it had full permissions. From the post: > Tokens are not scoped by operation, by environment, or by resource at the permission level. There is no role-based access control for the Railway API — every token is effectively root. The Railway community has been asking for scoped tokens for years. It hasn't shipped. So it wasn't "a narrowly scoped API token", it was a full access token, and I suspect the author didn't have any reason to think it was some special specific purpose token, he just didn't think about what the token can do. What he's describing is his intent of creating the token (how he wanted to use it), not some property of the token. Author said in an X post[0] that it was an "API token", not a "project token", which allows "account level actions"[1], with a scope of "All your resources and workspaces" or "Single workspace"[2], with no possibility of specifying granular permissions. Account token "can perform any API action you're authorized to do across all your resources and workspaces". Workspace token "has access to all the workspace's resources". [0] https://x.com/lifeof_jer/status/2047733995186847912 [1] https://docs.railway.com/cli#tokens [2] https://docs.railway.com/integrations/api#choosing-a-token-t... | ||||||||
| ||||||||
| ▲ | pierrekin 4 hours ago | parent | prev [-] | |||||||
Anecdote: As a hapless junior engineer I once did something extremely similar. I ran a declarative coding tool on a resource that I thought would be a PATCH but ended up being a PUT and it resulted in a very similar outcome to the one in this post. | ||||||||