ChatGPT Desktop forwards your SSH agent to remote machines
76 points by DenGorbachev 6 hours ago | 17 comments
The agent running on a remote machine can authenticate using your local SSH credentials.

That means it can push to your private repos on GitHub, for example.

Proof: https://github.com/openai/codex/pull/28131#discussion_r3410013180


recsv-heredoc 4 hours ago
It's amazing how often product decisions head this way for the purposes of 'removing friction'.

In security, friction is a GOOD thing. You want to have some ceremony to do things. It's pretty much inevitable that people will give up control for convenience.

Look at Artifacts for example.

reply
arghwhat 3 hours ago
Which is in turn why for convenience, security is a bad thing, making people who do not think about threat models in their sleep opt out.

Problem is striking the right balance, and auto-forwarding your agent to foreign machines is not the right balance. At least not without being able to filter and approve individual signing requests.

reply
nullsanity 2 hours ago
[dead]
reply
littlecranky67 5 hours ago
I'd suggest to use ssh keys inside the secure enclave on macOS that require your fingerprint for every new session [0]. That way agents cannot initiate anything, and you will always be aware when a new ssh connection is being made.

[0]: https://gist.github.com/arianvp/5f59f1783e3eaf1a2d4cd8e952bb...

reply
bradfa 4 hours ago
Or in a Yubikey and set the touch-required mechanism (light in the key will blink when it needs a touch to continue the auth).
reply
itissid 4 hours ago
I've been using secretive on the mac for exactly this.
reply
lucasoshiro 2 hours ago
Secretive is amazing! I know that it's not its purpose, but it would be great if it could store more than ssh keys, like providing a safe place for my .envs
reply
vulture916 25 minutes ago
I know it's not open-source, but this is how I use 1Password with FIFO .envs. I'm unsure if 1P stores its SSH in the enclave, but it works the same way - whenever SSH key is accessed, it prompts for TouchID or password.

Besides the open source, any reason why I should use secretive over 1P?

- someone trying to be better about security no matter how annoyed.

reply
yfontana 22 minutes ago
I don't understand what the linked pull request is supposed to prove, considering it was closed and not merged.
reply
eosis 2 hours ago
Things are awful for this at the moment. [Was the same for docker desktop at some point.](https://rupertrutledge.com/posts/docker-sbx-s-ssh-security-i...)

Same for [devpod](https://devpod.sh/) for sshing to devcontainers. They are particularly annoying because they just dump it into your config. Use an include statement to your own file for goodness sake.

It was often not ideal in the old world. Now agents are doing everything in those boxes, it is kind of mad.

I have my own utilities now for managing these sockets and files now to deal with this stuff.

reply
m000 4 hours ago
At this point, should cases like this even be news? Isn't that a fundamental security design issue? Local agent security guardrails appear to always be built around blacklists, which will always be unreliable and leaky. It is left as an exercise to the user to properly sandbox them.

There may be some limited form of whitelisting, but often it is just a facade, as it is very coarse-grained. So, with tools with very broad capabilities (ssh, kubectl, gcloud, etc) you end up with the agent performing unwanted actions.

reply
VCFundedGenYer 29 minutes ago
Regular reminder to never download/install AI chatbot apps - they all work in a browser where they can be isolated.

Do not let these things loose on your computer.

reply
mrweasel 19 minutes ago
At work we have rather strict rules for how to run AI agents, and for good reasons apparently. The problem is that once these rules are in place and enforced, using an agent is just more hassle that I feel it's worth. The agents work in complete isolation in a VM with access to pretty much nothing. Some colleagues are making good use of them, but just looking at the policies and tooling we have put in place makes me give up in advance.
reply
simoncion 2 minutes ago
This sucks, a lot, but you've gotta never run these tools as your ordinary daily-driver account. These tools are rather unpredictable and -because of the nature of the incredibly reckless development methodology- it's nearly impossible to understand every behavioral change in new versions of the ones that are largely or entirely vibecoded. [0]

As others have said, it looks like the primary way the Major LLM Manufacturers have chosen to control these things is with a combination of great big blacklists and voluminous pleading, begging, and scolding. Most of us know the problems both with enumerating badness and with attempting to appeal to something that's incapable of care, sympathy, or shame.

[0] For another example of this principle, go read the recent Jepsen report on ParticleDB.

reply
throwa356262 24 minutes ago
Doesn't matter how many 0-days chatgpt can find in the linux kernel when it also pulls things like this.

Whoever told you AI has solved security was hallucinating.

reply
Betelbuddy 4 hours ago
They might have solved coding but they did not solve common sense.
reply
m000 4 hours ago
I think the agent "eagerness" tuning leaves much to be desired. They are very zealous when performing random tasks, resorting to all kinds of dodgy actions just to get it done. Then you ask them to help you with the security of your own repo, the one you've been adding code to day after day for months, and they go full Gandalf on you: "Thou shall not pass!"
reply
spwa4 4 hours ago
Of course it does. That's what the codex <> chat merge is actually doing.

But codex <> chat merge is what they're giving as the "real reason" for what actually is raising prices (a LOT, I might add) for all the subscriptions. Nobody wants it (certainly not applied globally to everything like it is), but they're still going to do it. I even know someone who works at OpenAI and there's apparently a few people trying to fight it at least internally.

Given Sam Altman's speech about how he wants OpenAI pricing to work, I don't think this can be stopped. Btw: that is that you type something into ChatGPT and instead of subscription or per-token cost or anything like that, as soon as you type something in, anything, the way he sees it, ChatGPT would give you a cost for that specific answer and you'd agree or not.

I just feel like this guy is an even worse example of not seeing the viewpoint of a normal (you know non-millionaire) person than even Google's leadership. Can I just say "I think Google is going to win from Altman", you know, despite OpenAI having the far superior technology. Because if there's one guy in the whole world that can destroy the advantages of OpenAI's engineering accomplishments for everyone else, it's this guy ...

reply
anatolii1309 3 hours ago
[flagged]
reply
pierremangin 4 hours ago
[dead]
reply