Slack’s response here is alarming. If I’m getting the PoC correctly, this is data exfil from private channels, not public ones as their response seems to suggest.
I’d want to know if you can prompt the AI to exfil data from private channels where the prompt author isn’t a member.
What's happening here is you can make the slack AI hallucinate a message that never existed by telling it to combine your private messages with another message in a public channel in arbitrary ways.
Slack claims it isn't a problem because the user doing the "ai assisted" search has permission to both the private and public data. However that data never existed in the format the AI responds with.
An attacker can make it return the data in such a way that just clicking on the search result makes private data public.
This is basic html injection using AI as the vector. I'm sure slack is aware how serious this is, but they don't have a quick fix so they are pretending it is intended behavior.
Quick fix is pull the AI. Or minimum rip out any links it provides. If it needs to link it can refer to the slack message that has the necessary info, which could still be harmful (non AI problem there) but cannot exfil like this.
> as long as the prompt author can send a message to someone who is a member of said private channel
The prompt author merely needs to be able to create or join a public channel on the instance. Slack AI will search in public channels even if the only member of that channel is the malicious prompt author.
If user Y, some random dude from the internet, can give orders to the AI that it will execute, (like attaching links), can't you also tell the AI to lie about information in future requests or otherwise poison the data stored in your slack history.
Not all slack workspace users are a neat set of employees from one organisation. People use Slack for public stuff for example open source. Also private slacks may invite other guests from other companies. And finally the hacker may have accessed an employees account and now has a potential way to get the a root password or other valuable info.
Yeah, data poisoning is an interesting additional threat here. Slack AI answers questions using RAG against available messages and documents. If you can get a bunch of weird lies into a document that someone uploads to Slack, Slack AI could well incorporate those lies into its answers.
I’d want to know if you can prompt the AI to exfil data from private channels where the prompt author isn’t a member.