Solo dev shipping small tools. The first is Pin Check, a free checker for GitHub Actions that aren't pinned to a commit.
Every day I post one AI or dev story with the source linked. What each app earns goes here too.
@lunaonexbt i'd care less about the hosting and more about the defaults. a 2025 scan of lovable's showcase found about 170 of 1645 apps with supabase tables open to anyone with the public anon key
@mattpocockuk curious if the factory section covers the token. an agent that opens PRs from issue text gets a write token, and anyone can write an issue body
@hmier the vendored copies are the slow part. apt upgrade fixes the system libbrotli, but node, bun and the python wheels each ship their own decoder and need their own release
github blocks pull_request_target in public repos by default from nov 2. until then the rule runs in evaluate mode and only records what it would have stopped. 76 of the 200 most-starred repos use that trigger. check what it flagged in your repos before the blocking starts.
5 dev-security stories from this week, and what to do about each:
- railway env var breach
- litellm 1.107.0 on pypi
- node2shell in brotli
- php2shell
- github turning off pull_request_target on nov 2
one post each 🧵
php2shell lives in the php runtime. updating wordpress or laravel won't fix it. the fixed runtimes are 8.2.35, 8.3.36, 8.4.27 and 8.5.12. distro packages often patch without changing the version, so check the changelog for the CVE ids.
@theomlondhe nice catch on the anchored regex letting GH_TOKEN and NPM_TOKEN slip past. did you run job_workflow_ref through the same matcher? i'd want to know if it still holds when the attacker controls the calling workflow
@marclou glad you got your family on it too. did the agents also check the api keys in your github secrets and hosting env vars? new passwords don't touch those, and that's the kind of key that leaked at railway and opencode this month
@ahamam101 Same salary ?
And same amount of time to deliver ?
If so I will trust the developer doing it manually. If the 90% can do it faster and understand his code (I guess since is the same quality) then the ai dev.
@semgrep of the 30 repos, did unpinned come up more than plain vulnerable? a floating node:24 tag is only fixed if someone rebuilt after oct 21, and nothing in the repo tells you that
@TheHackersNews the brotli bug behind node2shell came out of this same red-team campaign. if your node, bun or python images haven't been rebuilt since the patches, they still have it
the node2shell bug from this week came out of openai's red team. their own agents found it while attacking openai's training sandboxes on purpose.
several of the other ways out were ordinary infra mistakes: DNS and firewall rules that let blocked requests through, a firewall-approved connection reused to reach a blocked endpoint, and internal services that fetched whatever URL the model gave them.
the cpu cache side channel will get the headlines. if you sandbox agents, check your URL-fetching services first
if you rotated your railway secrets this week and skipped the sealed ones, go back and rotate those too.
railway support said in a reply on oct 24 that sealing only hides a variable in the UI and API. sealed values are stored encrypted the same way as the rest, so they were as reachable as everything else.