Urgent.News

What's breaking now, across thousands of outlets.

Tech

One Stolen Token Should Not Ship Your App: A Two-Person Release Gate in GitHub Actions

One Stolen Token Should Not Ship Your App An attacker got hold of one admin's access token. Within minutes they had pushed a workflow file into every repository in the organisation, each one tailored to that repo, each one written to read the repo's secrets and send them out. We contained it. Tokens revoked, secrets rotated, signatures enforced. I've written about that part separately. This post…

A stolen access token was used by an attacker to push harmful code into every repository of the organization, compromising sensitive secrets. The incident led to the creation of a two-person release gate in GitHub Actions, which ensures that a merge is not the same as a release. This gate requires a merge request from one person and approval from a different, named person before the app can be released to users.

The design includes three workflows: Request, Approve, and Publish. The Request workflow builds nothing and merely writes a JSON file into a release-requests/ folder on a new branch, then opens a pull request into a dedicated release-gate branch. The Approve workflow checks certain conditions before approving the release, and the Publish workflow is the only one that interacts with signing keys and store credentials.

The request must be authored by the bot to prevent self-approval, and the hard-coded approver list ensures that only authorized individuals can release the app. Four bugs were discovered through testing, including issues with finding the reusable workflow, permissions, file selection, and handling failed publishes. These measures make it difficult for attackers to exploit the system and ensure that code is properly reviewed and approved before being released to the public.

Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.

Read the original at dev.to →

More in Tech

How to Add ZizkaDB to OpenClaw: A Tamper-Evident Audit Trail for Every Agent Turn

If you run agents on OpenClaw, you already have logs. What you probably do not have is a record that answers three questions after something goes wrong: what did the agent receive, which tool call…

  • ZizkaDB provides tamper-evident audit trail for each agent turn
  • Implement with OpenClaw gateway, ZizkaDB server, Node.js 24.16+
  • Verify plugin loaded via inspect command after restart

Windows VPN setup: from the right download to a stable connection

A stable Windows VPN setup starts with the correct download. Check whether your provider supplies its own application or a key for a general-purpose client, then verify that the client supports…

  • Choose custom VPN client or provider's key for Windows compatibility
  • Read project page and release notes before installation
  • Maintain structured setup process, avoid simultaneous changes

14 free dev tools that run entirely in your browser — no signup, no upload

Every online code editor wants an account before you run line one. For a quick test — check a regex, format some JSON, try a Python snippet — that's backwards.

  • 14 free tools run entirely in browser without signup
  • HTML/CSS/JS Playground offers instant live preview
  • JSON and Python code validation and testing available

iPhone + Linux = pain. So I built Rollcopy 🦀📸

The pain 😩 If you use an iPhone and a Linux laptop, you know this one. You plug the phone in. Ubuntu shows a folder called DCIM .

  • iPhone photo organization is a pain on Linux, lacking dates and albums
  • Rollcopy app simplifies iPhone to Linux photo transfer with HEIC to JPG, MOV to MP4 conversion
  • Features include file browsing by year/month/album, duplicate prevention, and privacy-focused design

More from Friday 13 November →