show-logs() { journalctl -u "$1" }
show-logs nginx
(Not that I think journalctl -u even needs an alias tbh but if you want it you can have it)844 karma · joined October 27, 2023
show-logs() { journalctl -u "$1" }
show-logs nginx
(Not that I think journalctl -u even needs an alias tbh but if you want it you can have it)Can you elaborate how do you even break this?
Adding a systemd unit cannot really break much on systemd itself. Unless you’re messing with internal systemd stuff, I am not sure what is even there to break.
Why would it need to store plaintext locally?
I would argue that today most people do not understand that and actually trust LLM output more on face value.
Unless maybe you mean people = software engineers who at least dabble in some AI research/learnings on the side
The signal forums that guy linked are from a Discourse instance/forum. Discourse is a platform to build forums.
Lmfaoooo
I’m assuming you have actually never ran a linux on your desktop. Lmaooooo.
Yeah sure init runs as root, and maybe you have background services that run as some other user.
BUT YOUR ACTUAL DESKTOP SESSION RUNS AS ONE USER. THIS INCLUDES YOUR BROWSER, YOUR PASSWORD MANAGER AND ALL YOUR OTHER SHIT!
https://paste.centos.org/view/f8e5ec76
so multi-user much secure
You know being a know-it-all only really works if you know what you are talking about.
Feel free to dig into the code of gnome-session if you don’t believe me.
Firefox, the desktop environment, your password manager and even `sudo` are traditionally all running as your own user.
This is not true in Android whatsoever.
Being multi-seat or not has little security implications - most traditional Linux systems can handle multi-seat but they’re still limited in security by running everything as a single user
And no nearly all 100% of Linux systems do not run proper multi-user configurations because none of the most popular distributions ship like that. Not in the context of desktop usage anyway.
Servers do use multi-user configuration but that’s not what we’re talking about here
Applications have different user IDs and different SELinux contexts.
Android security is tight
I gotta aim and peck some bullshit or open up some app with a QR code instead. Give me T9
…
> 60% enrichment is not considered weapons-grade enrichment.
So which is it?
1. They already have enriched uranium and can just make a bomb now
2. They don’t have weapons-grade enriched uranium (and now probably cannot enrich it)
Literally 0 here, have you really?
Like I literally do not know anyone who is even using Linux to begin with but also people do have “root” in their Windows and MacOS systems. I do not see anyone destroying their computers at random.
Also to steal someone’s information you don’t need root access or any administrative access - if you already tricked the user into running your code then you can steal their passwords or whatever, all of that is user-level data.
If I find time I could throw a spec file + ci/cd workflow to get you going that way too
So literally no downside to putting a backdoor and lying about it
If the post was about rust and it was using unsafe code and casting function pointers then everyone would quickly jump to try and correct it all the same
Making changes like this claiming it will result in faster code or more smaller code without any test or comparison before vs after seems to be not the best way of engineering something
I think this is why the thread has seen a lot of push back overall
Maybe the claims are true or maybe they are not - we cannot really say based on the article (though I’m guessing not really)
I also believe there are platforms where a function pointer and a data pointer are not the same but idk about such esoteric platforms first hand (seems Itanium had that: https://stackoverflow.com/questions/36645660/why-cant-i-cast...)
Though my point was only that this code will not compile as is with whatever clang Apple ships*
I am not really sure how to get it to compile tbqh
Some further research ( https://www.kdab.com/how-to-cast-a-function-pointer-to-a-voi...) suggest it should be done like so:
> auto fptr = &f; void a = reinterpret_cast<void &>(fptr);
edit: I tried with GCC 15 and that compiled successfully
Also I copy pasted the code from the post and I got this:
test.cpp:70:14: error: assigning to 'void ' from 'func0Ptr' (aka 'void ()(void *)') converts between void pointer and function pointer 70 | res.fn = (func0Ptr)fn;
I haven’t used windows in a long time but back in the day I remember installing SumatraPDF to my Pentium 3 system running windows XP and that shit rocked
It will likely have less packages than the other established ones though
So in that sense dnf/apt/zypper/pacman are all “C” package managers (not sure I agree with the OP but I think this is what they meant)
I’ve tried as you said and I’ve found that this is not a good assumption to make
glibc doesn’t support static linking so this is not working in the general case
it’s not, you need to start thinking about .PHONY targets and other stuff quite quickly
Because yeah if your program provides “invoking the shell as a feature” then it sure as fuck needs to invoke the shell. I was just replying to this far-fetched example.
By the way, I think it is still better to do this than calling system because if I read “run([bash” I know the developer meant to do this explicitly. If I read “system()” then I’m probably gonna assume they were just lazy and probably didn’t even know about the extra shell being invoked. (I also said this in my previous comment, please read before replying)
This doesn’t give the attacker any access that they wouldn’t have.
Also you can just clobber the “PATH” variable if it is so inclined.
> system() on the other hand is guaranteed to run the operating system’s command intepreter
Yeah that just it is means less predictable.
Please show me python programs which support the pattern shown by the parent post and which actually work when running under powershell. (Or Oil shell or any other non-POSIX shell)
Aside: `/bin/sh` is guaranteed to exist by POSIX
OEMs are not going to release the driver source code. They simply will not, at best they do random code dumps of whatever kernel version they were using at the time.
This is still true today and even Google tried to make it better with Project Treble. If Google cannot fix this even after all these years with total market dominance then literally Mozilla couldn’t do a single thing about it
If the web client would have existed back then it might have helped
Like they have their own custom clustering software where you would probably use k8s if you were to rebuild things today
Repeat this over a million different tools, etc
This article is interesting if you want to take a peek behind the curtain: https://www.allthingsdistributed.com/2014/11/apollo-amazon-d...
But that’s the same as saying you technically need SQL injection so that `psql -c 'command'` can work
> you cannot simulate all of this with command vector
Uhh, yes we can just call a shell:
subprocess.run(["bash", "-c", data_handler])
As a bonus this way we get control of which shell is being used and I find it is more explicit so I prefer itWith the assumption that:
1. The person knows to do this weird thing 2. They do it consistently every time 3. They never forget
Also not sure how to use those solutions for the popen() example you provided.
The correct way is:
subprocess.run([
"gzip",
"-c",
"—-to-stdout",
user_input
], stdout=open("foo.gz"))
And now I don’t have to worry about any of these weird things