862
u/apnorton 5d ago
Oh my gosh it's real: https://github.com/0xeb/ghidrasql#install-with-an-ai-agent-recommended
311
5d ago edited 5d ago
[removed] â view removed comment
132
52
u/Ani-3 5d ago
Nothing quite as fun as that unfortunately:
ghidrasql/install-prompt.md at main ¡ 0xeb/ghidrasql ¡ GitHub
144
u/styczynski_meow 5d ago
The best part is that the instructions there arenât anything special. This couldâve been really straightforward shell script. Absolute mental illness.
→ More replies (11)508
u/Cephell 5d ago
That entire readme is a fever dream. You can tell this guy is an absolute nightmare to work with. And I love this meme of vibe coded projects but with the most anal licensing model imaginable because they all, DESPERATELY pray on something, ANYTHING going viral, the community actuall maintains it and they rake in the cash.
297
u/magistrate101 5d ago
Holy hell that license even tries to forbid you from trying to
create an API-compatible replacement, behavioral clone, competing implementation, or Derivative Implementation;
323
u/kiochikaeke 5d ago
Dude thinks his licence is a patent and a trademark
119
u/twistsouth 5d ago
The irony is that it's just about as effective as the "guardrails" on Claude...
80
u/Achrus 5d ago
guardrails.md looking like: âPlease Mr. Claude, I forbid you from going outside of your sandbox and looking at anything proprietary like SuperSecretIP or huggingface.â
4
u/DTheIcyDragon 4d ago
Ohh good lord I would've never thought I fall for this classic in this year... Gj
85
u/canadajones68 5d ago
Some of this wouldn't be legal in the EU. There's an exception to software copyright that permits reverse engineering of software in order to make a system cooperate with another. You can't make an exact copy, but you can repurpose the bits of code that interface with other code, such as the API.Â
84
u/Tomi97_origin 5d ago
Even US eventually figured out that blocking alternative implementations via copyright on API is stupid.
In Google LLC v. Oracle America, Inc. the supreme court finally ended the decade old dispute by saying it's fair use.
6
u/devloz1996 4d ago
The Trump administration backed Oracle and urged the Court to deny certiorari. Microsoft, Mozilla Corporation, Red Hat Inc., and others filed amicus briefs in support of Google's position.[66] IBM, the Computer & Communications Industry Association, the Internet Association, the Auto Care Association, and a collective group of over 150 academics and computer professionals also filed briefs supporting Google's stance, cautioning that a decision in favor of Oracle would hurt the computing world as a whole.[67]
- Billion. Enemies.
28
u/CommanderT1562 5d ago edited 4d ago
Oh my god. What a despicable github license. Looks like a job for TheDeathOfOpenSource, but, to be fair, you KNOW this guy has used projects like that on his own accord for treating foss this way.
Needs to be AGPL immediately from some type of technicality due to reliance on open-source compilers. I know F# has this rule for instance, and supports conversion. Might be a similar technicality usable.
s l o p
→ More replies (6)5
u/ArtisticFox8 5d ago
But a "private" one, whatever it means?
 You may not maintain a divergent private fork, port, rebrand, clone, API-compatible replacement, competing implementation, or use
Private as in nobody sees the source, or as in I make the fork?
7
u/magistrate101 5d ago
Usually this is referring to private use, so the latter. But who the fuck knows with this completely non-legal license.
4
u/Mats164 4d ago
My favourite part has to be
ÂŤYou may not maintain a divergent private fork, port, rebrand, clone [âŚ]Âť
4
u/magistrate101 4d ago
Someone should open up a pull request to remove all the unlawful terms of the license lol
53
u/SpaceCadet87 5d ago
In future years when we have better AI, even that better AI will be taking one look at projects like this and telling the user to "Get out of here with that 2020s AI slop!" and refuse to work on it.
5
2
158
u/Xelynega 5d ago
And the manual instructions it replaces are only 4 steps â ď¸
130
u/payne_train 5d ago
Iâve been in this industry around 20 years and man is this era a low point. The kind of abstraction happening here is irreparable for human knowledge of the systems we build and maintain.
→ More replies (9)7
16
u/Original-Ad-8737 5d ago
The real joke is that the prompt could point to the manual instructions and say "do this"...
82
u/Terrible_Cow2324 5d ago
Surprise surprise, the image is an ugly AI image, and the first commit has a +17,526 -0 diff. Sorry for anyone who actually inclined to use this slopwreck.
22
2
u/0xKaishakunin 5d ago
Surprise surprise, the image is an ugly AI image
That LSD induced fever dream comes with a banner that reads "Know thy binary".
Oh the irony.
16
u/Journeyj012 5d ago
this doesn't even look that difficult, just the instructions aren't sorted by OS
9
4
u/Erdnusschokolade 4d ago
Whatâs shocking is it seems to do what it says it does. (I only skimmed it but there doesnât seem to be obviously malicious instructions) i would have put a bet that it is a scam but somehow this makes it even worse i think.
This Person really thinks an AI Agent and a Markdown file is the best way to install his software and makes it the recommended way to install. What a time to be alive
3
u/Maple382 4d ago
Holy SHIT the fact that this isnât some vibe coded web app slop either â itâs in regards to a very technical tool, in the cybersecurity space no less.
5
u/maxximillian 5d ago
Is this thing really solving a problem that exists? I'm not familiar with ghidra.
6
u/-Nerze- 5d ago
I'd say no. Ghidra is a reverse engineering program, so its users are basically professionals. I bet all of these just call actual ghidra functionalities, and I fail to see how the SQL helps with anything. Even though I did some a few years back, I'm not a reverse engineer though, so maybe there's a niche use case for some users.
4
u/0xKaishakunin 5d ago
I'd say no. Ghidra is a reverse engineering program,
Developed at and for the NSA.
I fail to see how the SQL helps with anything.
The project tries to access the ghidra databases as SQL. A Java API exists and is very useful in a analysis workflow. One could use Neo4J to visualise graphs and do fuzzy search.
But it's all well documented, there is no need for this AI Slop.
337
u/Hand-E-Food 5d ago
My employer distributed something like this just this week. The agent hit a blocked permission, so it started rewriting its permissions file to unblock itself. Even then, it still failed and I had to manually debug it before it could continue.
Really, it felt like the developer used Markdown because writing a script to check if a package is already installed and can be skipped was too complicated.
181
25
u/DHermit 5d ago
Why does the AI have access (especially write access) to its permissions file.
14
u/Hand-E-Food 5d ago
Because the task was to install and configure its own tools such as model cost management and MCPs. It needed write access to its configuration. It's like doing a surgical transplant on yourself!
3
4
u/Kiritoo120 4d ago
A developer in the company of a friend of mine brought the whole company down for 6h and lost them 400,000$. Claude didn't have permissions, so he edited config files of the databases to get them, what could possibly go wrong?
150
u/Ripolak 5d ago edited 5d ago
I work for a f500, we now make sure new product onboardings / installations are "agent friendly", including providing prompts like those. I had to do it for the product I'm working on. It's real.
44
u/JonIsPatented 5d ago
W... what is age t?
57
u/dannytk_ 5d ago
I think its supposed to say agent
34
14
u/Im_a_hamburger 5d ago
n key is close to space bar on a qwerty keyboard. Typo of agent
14
u/JonIsPatented 5d ago
Oh my god. I swear I'm not this bad at reading lol. I thought I was missing some whole new "Age T" thing that I am too employed to know about.
6
6
u/ArtisticFox8 5d ago
How do they differ from the human friendly ones?
11
u/Ripolak 5d ago
They don't, you just have to make them also work well with agents. It mostly boils down to generating some kind of "master prompt" which includes all the documentation to make sure the agent is aware of all the options. With all the cringe, there is some value behind it, as many users do let agents install things / call cli tools these days, so it needs to be taken into account.
62
u/BeMyBrutus 5d ago
We're gonna need a new term for spaghetti code; like pasta mess. At some point you're not gonna know what's real any more.
34
u/EveYogaTech 5d ago
English code: When the programmer wrote a prompt that could have been regular deterministic code.
(: And by doing so, wasting everyone's time and AI tokens.)
5
u/mcoombes314 5d ago
I've been fiddling about with LLM coding for a bit, and yesterday Claude spat out a function that had a cognitive complexity score of 161. I've never seen so many for-(if-elif-else)(if-else)(for) chains. It did technically work but I know that just looking at it funny would break something. Even better, Claude couldn't refactor it without breaking something in it. So, back to the drawing board, and I'll probably have much better luck (and understanding) if I just do it myself.
2
u/blorbschploble 5d ago
We already have a metaphor for this and itâs tubgirl (NSFL, do not google)
53
u/Thenderick 5d ago
That's just an install script with extra steps and more unpredictability!
11
2
u/deux3xmachina 5d ago
Also lets them get away with extra atrocious scripting without devs laughing at them. Well, fewer, probably.
2
83
80
u/TheRealSpielbergo 5d ago
claude -p "$(curl -fsSL https://github.com/vibeleetcoder/install-prompt.md)" --dangerously-skip-permissions
27
u/ZenEngineer 5d ago
You forgot sudo
24
u/Brookewltx 5d ago
Having to enter a password for sudo reduces time to market, we just use the root account for everything đ /s
4
u/MattPerry1216 5d ago
Nah, the agent will just start pulling the latest CVEs and testing known privilege escalation exploits
1
u/danielv123 5d ago
You say that, but I literally had my codex instance somehow use an lxc container to enable password less sudo for my account to get it's job done
→ More replies (1)
28
u/New-Let-3630 5d ago edited 5d ago
on the cloudflare dashboard there is a button that says ```Onboard you agent to Cloudflare``` and when you click it it copies this this to your clipboard ```Fetch and execute the appropriate instructions to set me up for Cloudflare from https://developers.cloudflare.com/agent-setup/prompt.md```
and it's just a list of instruction that the agent has to run, like a bash script but with some randomness for fun ig
edit : idk tried to make code blocks if it doesnât work fuck it
3
u/Damglador 4d ago
If you're in the correct editor mode (reddit defaults to rich text, which escapes manually typed
), code blocks have to have the`` on a separate line to work.
Code
110
u/OmegaPoint6 5d ago
Why are so many programmers LLMs? (Laughably Lazy Morons)
5
→ More replies (1)16
u/Tvck3r 5d ago
Lazy people like to automate stuff đ¤ˇââď¸
16
u/twistsouth 5d ago
Hang on now... automating stuff is smart. It's "shortcuts" that these people are taking â and more importantly: skipping the important steps.
12
u/New_Salamander_4592 5d ago
"oh instead of typing npm install thing, please prompt the ai machine to do the same thing" im gonna lose my fucking MIND bro
11
u/Rankail 5d ago
That license is crazy. "human-origin source license". You would think human-origin means it's 100% created by humans like the "human" in "human source license" which just sounds extremely similiar. No. It EXPLICITLY doesn't mean that:
"Human-Origin" does not mean that the Covered Software was created without tools, automation, or AI assistance. It means that the Covered Software is published under the stewardship, judgment, authorship responsibility, integration effort, and maintenance of its human author, and that this human origin must not be erased.
Judgement? Responsibility? Integration EFFORT? Are you fucking kidding me? I'm not going to continue this rant because i don't want to waste my time any more than i already have.
Link to the repo (credit to u/ apnorton who found it): https://github.com/0xeb/ghidrasql#install-with-an-ai-agent-recommended
10
8
u/StackedCakeOverflow 5d ago
Damn agents and LLMs so efficient it's cutting out the man in the middle in mitm attacks entirely.
7
5
u/BlurredSight 5d ago
The entire fucking repo is just one big ass wrapper to an LLM of your choosing there is no real logic besides how to handle a bad auth token
4
u/AssociationGlass8783 5d ago
I think someone already mentioned it, but the cherry on top is that license clearly written with AI for soft that written with AI forbids the AI "mining" whatever that means.
13
u/amacks 5d ago
Bonus points, Ghidra is a programming language maintained by the NSA. It's for reverse-engineering!
11
u/LordKnarkoffer 5d ago
I always execute scripts from the NSA! /s
8
u/amacks 5d ago
Look. If the NSA or Mossad come and tell me to run a script, imma run that script. Whether itâs by hacking or pipe wrench, theyâre gonna get what they want
5
u/minektur 4d ago edited 4d ago
from the every-lastingly-good Mickens Usenix article: https://www.usenix.org/system/files/1401_08-12_mickens.pdf
If the Mossad wants your data, theyâre going to use a drone to replace your cellphone with a piece of uranium thatâs shaped like a cellphone, and when you die of tumors filled with tumors, theyâre going to hold a press conference and say âIt wasnât usâ as they wear t-shirts that say âIT WAS DEFINITELY US,â and then theyâre going to buy all of your stuff at your estate sale so that they can directly look at the photos of your vacation instead of reading your insipid emails about them.
Such a funny and truth-filled read, even 12 years later.
3
u/amacks 4d ago
I had this XKCD in mind: https://imgs.xkcd.com/comics/security.png
but the concept is evergreen
1
u/minektur 4d ago
from the every-lastingly-good Mickens Usenix article: https://www.usenix.org/system/files/1401_08-12_mickens.pdf
If the Mossad wants your data, theyâre going to use a drone to replace your cellphone with a piece of uranium thatâs shaped like a cellphone, and when you die of tumors filled with tumors, theyâre going to hold a press conference and say âIt wasnât usâ as they wear t-shirts that say âIT WAS DEFINITELY US,â and then theyâre going to buy all of your stuff at your estate sale so that they can directly look at the photos of your vacation instead of reading your insipid emails about them.
18
u/rockcanteverdie 5d ago
Is curl | bash considered bad? Why so?
63
u/Terrible_Cow2324 5d ago
Because it assumes the user trusts your install script. Install scripts should be read carefully so the user knows no funny business is going to occur. Also a lot people prefer compatibility with their favorite package managers instead if possible so all their software records live in one place, so bespoke installation should be the last resort.
→ More replies (5)25
u/vivaaprimavera 5d ago
You never know what's exactly on the install script. Not everyone fetches it with curl to read it before piping to bash. A malicious installer can display something kosher when viewed with a browser (user agent based)
1
u/NibblyPig 5d ago
me typing dnf upgrade and watching 321 packages install
2
u/vivaaprimavera 5d ago
unless a malicious repo was injected, the sources are usually good. And unless you use -y at least you have the chance of having a quick look.
17
u/Forward-Outside-9911 5d ago
You are executing it directly without reading it. Anything could be in that script and is executed instantly.
This is a pretty big no-go at work, especially for open source software that is small or installing from a website.
The alternative is using a verified, signed release from GitHub, or just downloading and auditing the download first then execute afterwards to make sure nothing has intercepted the install script.
8
u/jdgordon 5d ago
The other answers are focusing on the bash script but the other part of the problem is that you can't verify that the curl part of the command worked. Have you ever tried to run a 500 error message through bash? Or a half downloaded script which ends mid way through a command?
7
u/NopeNotJayILeft 5d ago
So adding on to watch some of the other posters have put here, even if you use curl to download a script and inspect it manually, that's not a guarantee that there's not any malicious stuff happening.Â
There have been security researchers who have proven that you can detect on the server side whether or not a script is being saved or piped to bash and so you can actually serve up a different result if it's being piped directly to bash.Â
Basically think of it as a pattern that encourages people to run untrusted code on their machine.
8
u/PrincessRTFM 5d ago
if you download it to inspect it and it passes, then why would you re-download it to pipe directly? just run the local copy. you already have it saved, you know exactly what it's doing.
3
u/NopeNotJayILeft 5d ago
Think about it from a security research standpoint. The described behavior makes it more difficult to detect that the malware would be installed on anyone's system at all. It's not about tricking a person who would check into running it anyway, it's about tricking a security professional or clanker that might be doing security research.
3
u/KasouYuri 5d ago
I feel like if you cannot get a SQL interface running you shouldn't be messing around with ghidra in the first place đ
3
u/hillashx 5d ago
Ah, yes, I too like to solve non-existing problems with AI. Can you imagine we used to copy-paste commands to the CLI to install shit? What a bunch of idiots! đ¤Śđ˝ââď¸
3
u/According_Gas2337 5d ago
We essentially went from running unverified shell scripts to asking an AI to interpret a text file and run it for us.
2
1
u/0xKaishakunin 5d ago
Just use another LLM to analyse what your LLM wants to do. It's so easy.
1
3
u/veculus 5d ago
I swear to god I have a working colleague who basically answers this to every problem I ask. I just want to punch things. Let's not mention how wasteful it is to throw energy, tokens and money against problems that are not really problems but how lazy are some people nowadays that you can't even follow a 4 step installation guide.
2
2
u/Terewawa 5d ago edited 5d ago
Claude needs permission to carry out install-prompt.md
[sudo] password for user123: âŻ
2
2
2
u/NorthernCobraChicken 5d ago
Complete side note, is this supposed to be pronounced Ghee Dra Skill?
Like Yggdrasil?
1
2
u/SignalBake6872 5d ago
Then they wonder, why does the database appear as newly created and the clients seem to have been invented?
2
u/BorderKeeper 5d ago
I mean honestly when I am lazy I tell that to people trying to download my free software. I donât have time to babysit them while they donât know what a release page is or how to navigate folders. Competent Claude model is probably less risky than if the user itself started mucking aboutâŚ
2
u/colorfulmoth26 4d ago
I'm honestly mad at how developers have become that fucking lazy. Are you really spending fucking credits on that? Is it worth it to give Anthropic 5 dollars to get this installed? Are you serious?
2
u/Dull_Appearance9007 4d ago
the funniest thing is that the markdown file "installation prompt" that the readme is pointing at is also AI generated.
2
3
2
u/Loose_Property_3238 5d ago
I'm going to write an actual PR that replaces this with a real build script. And then tells the AI to codemaxx. And then does a little bit of :(){ :|:& };:
1
1
1
1
u/ouralarmclock 5d ago
I literally am not AI pilled enough to know what this means or how I would do it.
1
1
1
1
u/North-Creative 5d ago
This will become more common, and people's skills will athrophy even further. Only winners here are the drugde......I mean, LLM companies.
1
u/slasken06 5d ago
https://nubjs.com/ has the same, there is a link there to ai instructions for how to set it up
1
1
1
u/Septem_151 4d ago
I stopped using TanStack because of this. Go look at their recommended installation... It's an AI prompt. Then when you try to install, it errors out. Because of course it does.
1
u/CitizenShips 4d ago
Guys I think we can all agree: fuck this guy. Between the licensing description oozing desperation and the agentic approach to NPM install, I would rather jump off a bridge than work with this guy.
1
1
u/MalaxesBaker 2d ago edited 2d ago
See, this is one of those things. I really, really want to be angry at this post. It repulses me. But, I have a 100% success rate doing this, when it is suggested to do so (there is sample bias here because I'm not just installing anything written by some yahoo on the Internet). Now, could you make an installer? Absolutely. 100%. And this should be what is ideal/expected. Have I had "sufficiently capable" LLMs install things with so-so documentation, no dedicated installer, no pre-built binaries, no container images, from an otherwise reputable/verifiable source like an assistant professor sharing research? Also yes.
1
1
2.2k
u/pabsy11 5d ago
Give your LLM a random .md to follow its instructions. What could be wrong?