Remix.run Logo
AI-Generated GitHub Copilot "Autofix" Allowed Compromise of Snowflake's Jira(wiz.io)
50 points by galnagli an hour ago | 20 comments
sippeangelo an hour ago | parent | next [-]

The title is actually "Wiz Red Agent Finds Its Way Into Snowflake’s Internal Jira Due to an AI-Generated GitHub Copilot Autofix"

galnagli 21 minutes ago | parent [-]

Too long for hackernews :(

mjr00 18 minutes ago | parent | prev | next [-]

It's interesting to look at what was being attempted when the vulnerability was introduced[0]

> Workflows like jira_close.yml use deprecated atlassian JIRA actions and have a dependency on the gh-actions repo. This is not ideal and unecessarily complex. PR updates jira_close workflow to use direct API calls via curl. It preserves custom fields used too.

I won't speak to this projects' management and how they prioritize things, but from my own experience, pre-AI, this type of change would have been firmly in the "this is a minor annoyance, put it in the Tech Debt Backlog alongside the 50000 other tickets" and never actually done. The cost of a human investing the time understanding how to fix the problem, doing code changes, testing them, and deploying them is just way too high for what actual value this change brings, which is close to nothing.

Now with AI, it's as simple as firing up an agent and telling them to make a change; as much effort as writing that backlog Jira ticket in the first place.

Similar to the problem open source is having with low-value PRs, companies are going to have to start realizing that code is not free to review or maintain, even when it's generated for ~free, in their internal processes. Just because an agent can fix a minor tech debt annoyance with a few lines of instructions doesn't mean it should.

[0] https://github.com/snowflakedb/snowflake-connector-net/pull/...

procone 14 minutes ago | parent | prev | next [-]

YAML is a nightmare fuel spec.

In its quest to make markup "human readable", it has created countless footguns.

I honestly prefer XML at this point.

fmbb 6 minutes ago | parent [-]

It’s find for actions and workflows as long as you do no interpolation and logic.

Better move as much of that as possible into your own scripts. And your scripts can be portable between forges, and even run locally!

NewJazz a few seconds ago | parent [-]

[delayed]

teraflop 19 minutes ago | parent | prev | next [-]

> The workflow had an if: condition that appeared protective:

> if: (github.event_name == 'issues' && github.event.pull_request.user.login != 'whitesource-for-github-com[bot]')

> However, on issues events, github.event.pull_request is always null.

This is extra dumb because even if you thought this condition was correctly testing the user's identity, it shouldn't have "appeared protective" upon even a moment's thought. If it worked correctly, it would obviously just exclude one bot user while allowing all other users, so it wouldn't provide any protection at all.

But more likely, this condition was never intended to be "protective" at all, and it's only being described that way because the writeup is LLM slop.

TheRealPomax 8 minutes ago | parent | prev | next [-]

No, Snowflake allowing autofixes compromised their Jira. If you tell someone to shoot you in the foot, and they shoot you in the foot, you shot yourself in the foot, just with more steps. If someone else finds the memo that says you've set up foot shooting as a service, and then they trigger that service, you still shot yourself in the foot.

chrisjj 33 minutes ago | parent | prev | next [-]

> a single quote in the title breaks out of echo '...' and allows arbitrary command execution.

Quote injection still alive and well in 2026. Gawd.

forestry an hour ago | parent | prev | next [-]

Peer review of changes is still important.

Rumudiez 35 minutes ago | parent | next [-]

Multi-model cross-review is important

acedTrex 28 minutes ago | parent [-]

It's not actually, thats just shoving more shit into the shit pipeline.

Humans need to review this stuff yall there's no way around that, apparently to some, very inconvenient reality.

devin 23 minutes ago | parent [-]

It’s clear that they want this to be true so bad that they’re just not going to do it, and will spend a ton of money on quality gates and mitigation strategies instead of just reading some code.

Twirrim 44 minutes ago | parent | prev [-]

You can't rely on people spotting the significance of such changes

eithed 33 minutes ago | parent | next [-]

Tests would have caught it = https://github.com/rhysd/actionlint injection check

thejosh 7 minutes ago | parent [-]

also been a huge fan of zizmor (https://github.com/zizmorcore/zizmor) lately, basically: "am I going to footgun myself?"

dv_dt 28 minutes ago | parent | prev | next [-]

I have been talking to people who want to autoreview and approve "minor" AI prs. For security especially, I think if the models weren't enough to prevent the issues, they aren't enough to judge what is minor.

fn-mote 38 minutes ago | parent | prev [-]

^^

Absolutely.

Nothing in the PR jumps out as a red flag. Unless you know how the internals work, I suppose.

chrisjj 32 minutes ago | parent [-]

> Nothing in the PR jumps out as a red flag.

Made by AI?

antiloper 4 minutes ago | parent | prev [-]

Someone forgot to add "make no mistakes!" when triggering autofix /s