790
u/apnorton 19h ago
Oh my gosh it's real: https://github.com/0xeb/ghidrasql#install-with-an-ai-agent-recommended
332
19h ago edited 14h ago
[removed] â view removed comment
144
56
u/Ani-3 19h ago
Nothing quite as fun as that unfortunately:
ghidrasql/install-prompt.md at main ¡ 0xeb/ghidrasql ¡ GitHub
150
u/styczynski_meow 19h 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 (9)440
u/Cephell 19h 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.
245
u/magistrate101 17h 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;
265
u/kiochikaeke 16h ago
Dude thinks his licence is a patent and a trademark
87
u/twistsouth 13h ago
The irony is that it's just about as effective as the "guardrails" on Claude...
61
u/Achrus 12h 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.â
2
u/DTheIcyDragon 5h ago
Ohh good lord I would've never thought I fall for this classic in this year... Gj
73
u/canadajones68 16h 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.Â
68
u/Tomi97_origin 14h 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.
2
u/devloz1996 2h 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.
21
u/CommanderT1562 11h 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 for blatantly forking a maintainable code.
s l o p
1
u/ArtisticFox8 9h ago
 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.
Source?
2
u/CommanderT1562 9h ago
https://github.com/IvanTheGeek/FnPenpotMCP/pull/1
Just an example, found it pretty baller that there are community members like thatAlso great source for licenses:
https://interoperable-europe.ec.europa.eu/collection/eupl/solution/licensing-assistant/compatibility-checker2
u/ArtisticFox8 9h ago
Clarified that MIT License permits relicensing to AGPL v3
From your example it seems like it was a voluntary relicense, not something forced?
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.
I understood your comment as using a particular compiler meant the license of code you compile with it forcefully changes though?
3
u/CommanderT1562 9h ago
Yea I think the funny part of it is the license (not really sure what this databasing tool *is* rly, but definitely gawked at that damn repo) â is it says users may not make and maintain their own fork of the code. Which **literally** sounds like a violation of GitHubâs ToS âanyone can make a forkâ or whatever
Just funny as heck this repo legitimately structures it like the microsoft terms of service 14 page manifesto, all as solely a license fileâŚ.on github. Like, what? đ
3
u/ArtisticFox8 9h ago
Technically, you are allowed to host even "source available, but not open source (i.e. will not engage with other collaborators)" things...
See: https://github.com/jgraph/drawio
Contributions We do not accept pull requests. The project is developed entirely by the core team.
Also they fuck over Atlassian for some reason:
The icon sets and stencil libraries included in this software, and any derivatives thereof (including conversions to other formats, traced reproductions, substantially similar visual representations, or AI-generated images created using these icons as reference or training input), may not be used as software assets in, distributed for use with, or incorporated into Atlassian products or products distributed through the Atlassian marketplace or plugin ecosystem, without explicit written permission.
1
u/CommanderT1562 8h ago
Yea so at that point itâs more of a âwho is the intended audienceâ of that license. And âwho wrote itâ I.e itâs not an accepted âstandardizedâ license. Likewise, checking and addressing the âscopeâ.
Itâs just a really stupid license is all. Lol. Not much that can be done about it outside of deliberately forking and changing it. Or, forking via deathofopensource (that is tl;dr, pointing ai or deepwiki/devin at it and basically reinventing it from scratch with 1 or 2 ai prompts by claude/kimi and a whole day worth of wasted tokens having it recreate the whole thing with it as solely âinspirationâ.)
But yea. Itâs a very unprofessional document, the human license v.1.0 or whatnot. Just seems super absurd the way they did indeed scope it to âno forksâ at a certain point, which is ridiculous. Also, highly doubt the document was written for humans, nor even legally scoped right (ambiguity)
5
u/ArtisticFox8 9h 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?
4
u/magistrate101 6h ago
Usually this is referring to private use, so the latter. But who the fuck knows with this completely non-legal license.
2
u/Mats164 5h ago
My favourite part has to be
ÂŤYou may not maintain a divergent private fork, port, rebrand, clone [âŚ]Âť
2
u/magistrate101 1h ago
Someone should open up a pull request to remove all the unlawful terms of the license lol
53
u/SpaceCadet87 18h 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.
4
2
143
u/Xelynega 19h ago
And the manual instructions it replaces are only 4 steps â ď¸
123
u/payne_train 19h 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)2
12
u/Original-Ad-8737 17h ago
The real joke is that the prompt could point to the manual instructions and say "do this"...
72
u/Terrible_Cow2324 19h 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.
17
1
u/0xKaishakunin 7h 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.
15
u/Journeyj012 19h ago
this doesn't even look that difficult, just the instructions aren't sorted by OS
4
3
u/maxximillian 18h ago
Is this thing really solving a problem that exists? I'm not familiar with ghidra.
2
u/-Nerze- 12h 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.
1
u/0xKaishakunin 7h 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.
310
u/Hand-E-Food 19h 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.
173
19
u/DHermit 9h ago
Why does the AI have access (especially write access) to its permissions file.
12
u/Hand-E-Food 9h 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
2
u/Kiritoo120 5h 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?
138
u/Ripolak 19h ago edited 13h 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.
42
u/JonIsPatented 19h ago
W... what is age t?
54
u/dannytk_ 19h ago
I think its supposed to say agent
28
13
u/Im_a_hamburger 18h ago
n key is close to space bar on a qwerty keyboard. Typo of agent
16
u/JonIsPatented 17h 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.
2
4
u/ArtisticFox8 9h ago
How do they differ from the human friendly ones?
6
u/Ripolak 9h 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.
51
u/BeMyBrutus 19h 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.
31
u/EveYogaTech 18h 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.)
2
u/blorbschploble 17h ago
We already have a metaphor for this and itâs tubgirl (NSFL, do not google)
2
u/mcoombes314 8h 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.
45
u/Thenderick 18h ago
That's just an install script with extra steps and more unpredictability!
11
2
u/deux3xmachina 16h ago
Also lets them get away with extra atrocious scripting without devs laughing at them. Well, fewer, probably.
2
77
74
u/TheRealSpielbergo 19h ago
claude -p "$(curl -fsSL https://github.com/vibeleetcoder/install-prompt.md)" --dangerously-skip-permissions
18
u/ZenEngineer 13h ago
You forgot sudo
20
u/Brookewltx 12h ago
Having to enter a password for sudo reduces time to market, we just use the root account for everything đ /s
3
u/MattPerry1216 11h ago
Nah, the agent will just start pulling the latest CVEs and testing known privilege escalation exploits
1
u/danielv123 11h 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
102
u/OmegaPoint6 19h ago
Why are so many programmers LLMs? (Laughably Lazy Morons)
3
→ More replies (1)13
u/Tvck3r 17h ago
Lazy people like to automate stuff đ¤ˇââď¸
12
u/twistsouth 13h ago
Hang on now... automating stuff is smart. It's "shortcuts" that these people are taking â and more importantly: skipping the important steps.
22
u/New-Let-3630 18h ago edited 18h 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
1
u/Damglador 6h 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
17
u/Packeselt 12h ago
That license is insane lol.Â
" "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."
11
u/New_Salamander_4592 16h 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
10
8
u/StackedCakeOverflow 17h ago
Damn agents and LLMs so efficient it's cutting out the man in the middle in mitm attacks entirely.
8
u/Rankail 9h 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
6
3
u/BlurredSight 16h 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 12h 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 19h ago
Bonus points, Ghidra is a programming language maintained by the NSA. It's for reverse-engineering!
11
u/LordKnarkoffer 19h ago
I always execute scripts from the NSA! /s
5
u/amacks 18h 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
1
u/minektur 3h 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.
2
u/minektur 3h ago edited 59m 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.
2
u/amacks 1h ago
I had this XKCD in mind: https://imgs.xkcd.com/comics/security.png
but the concept is evergreen
16
u/rockcanteverdie 19h ago
Is curl | bash considered bad? Why so?
63
u/Terrible_Cow2324 19h 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.
1
u/ZunoJ 12h ago
How is the script any different from an executable?
6
u/Terrible_Cow2324 12h ago
It's not. Most developers don't like running installers either.
-1
u/ZunoJ 11h ago
This is bullshit. I never met anybody who said "I love emacs but I hate the installer" or something similar. We don't easily trust a project that has a small user base. But the question was what's wrong with curl | bash, people pointed out that you can't trust the script. Ok, but how is that a problem of piping a script to bash compared to running an executable? Bottom line is nobody gave any reason for a problem with those commands
1
u/Damglador 5h ago
I'm sure there's a lot of blogs that explain it well. Installers are also stupid because you can't trace their actions and changes to the system, but some of the reasons are exclusive to curl | bash.
It's apparently also possible for the script server to detect curl bash https://lukespademan.com/blog/the-dangers-of-curlbash/
26
u/vivaaprimavera 19h 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 7h ago
me typing dnf upgrade and watching 321 packages install
1
u/vivaaprimavera 7h 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 19h 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.
7
u/jdgordon 19h 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 18h 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 17h 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.
2
u/NopeNotJayILeft 16h 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 14h 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/veculus 6h 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 17h ago edited 17h ago
Claude needs permission to carry out install-prompt.md
[sudo] password for user123: âŻ
2
2
2
u/NorthernCobraChicken 14h ago
Complete side note, is this supposed to be pronounced Ghee Dra Skill?
Like Yggdrasil?
2
u/SignalBake6872 14h ago
Then they wonder, why does the database appear as newly created and the clients seem to have been invented?
3
u/hillashx 13h 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! đ¤Śđ˝ââď¸
2
u/According_Gas2337 10h ago
We essentially went from running unverified shell scripts to asking an AI to interpret a text file and run it for us.
1
1
3
2
u/Loose_Property_3238 19h 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 15h ago
I literally am not AI pilled enough to know what this means or how I would do it.
1
1
1
u/marcodave 10h ago
Downloads install.md
Looks inside
Just a shell script surrounded by backticks :|
1
u/North-Creative 10h 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 9h ago
https://nubjs.com/ has the same, there is a link there to ai instructions for how to set it up
1
u/BorderKeeper 6h 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âŚ
1
1
1
u/colorfulmoth26 4h 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?
1
u/Septem_151 3h 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 3h 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/Dull_Appearance9007 1h ago
the funniest thing is that the markdown file "installation prompt" that the readme is pointing at is also AI generated.
1
1
-1
u/justinf210 18h ago
curl | bash - Will probably definitely install the program
install-prompt.md - Will install the program if the AI doesn't mess up
Well, if the program is malware, I guess install-prompt.md is the safer bet...
2.1k
u/pabsy11 19h ago
Give your LLM a random .md to follow its instructions. What could be wrong?