🥺: the best sudo replacement
xeiaso.net
xeiaso.net
that's a null byte, even if the spec says it's not the string terminator.
i just think it's worth referring to things by using words that more precise semantics if possible
And what meaning is that? That link doesn't refer to an authority on the meaning of the nul byte.
And no, I don't have anything better to propose at the moment. Unicode is a mess, but currently without realistic alternatives.
Still I would like to live long enough to see that we finally manage to create some proper text format without all kinds of crazy gotchas and deficiencies.
Are you suggesting that a better version of Unicode does not allow combining characters? [1]
Some languages have an explosive amount of characters if you regard each possible modifier in combination with each base character, some of which aren't practically used. By allowing the composition of modifiers and base letters, all the historically used ones are available, and all the odd ones are technically expressible.
I'm not sure how you encode all the world's languages, live and dead ones, without a few gotchas and deficiencies.
What would an always-normalized Unicode look like, if not either having really, really many characters, or having a non-trivial syntax?
[1]: https://www.unicode.org/versions/Unicode15.0.0/ch03.pdf#G306...
So either you are suggesting to disallow non-normalised Unicode with the current definition, or something different altogether. I can't imagine what that alternative looks like.
(Also, I'm a Unicode fanboy. Sorry for the intensity.)
The point would be to have only one canonical binary representation. A representation that is also free of all kinds of "compromises" which are only there for legacy reasons…
Additionally the whole madness should be resolved that Unicode mixes content, representation, and layout (especially as it fails miserably at all of them).
Than there are the problems that Unicode is actually incapable of representing all kinds of scripts. (Just think for example about stuff written top-to-bottom, and not LTR / RTL). Some "unimportant" things like Math can't be represented in Unicode also…
And I won't even talk about the issue that the committee was taken over by some political movement, namely the woke fraction.
I think it's actually a kind of joke that we still didn't mange to invent some sane text format for computers. Unicode doesn't cut it.
But frankly I admit that we won't get anywhere — as even Unicode is full of madness it works "good enough" by now through even more layers of madness on top, so we won't get rid of it ever again. That ship sailed I fear. Still I can't stop banging my head when I hear about things like issues with normalization, something that shouldn't exist in the first place in a sane world.
If I pasted my password it failed, but if I auto-filled from bitwarden it succeeded. Took me weeks to figure out why...
Eventually I convinced leadership to invest in basic security after conservative but still embarrassingly high 6-to-7-figure estimates of annual loss expectancy that only took a measly 5 figures a year to eliminate 75% of the risk, but the company only went around to it a long while after I left the place.
I don't know what makes a manager turn off snooze on open PRs for fixing blatant holes.
But if you've got that skill, it can take you far!
I used the password reset to change it. This time I used a pretty short password I could type (to rule out a weird copy-paste bug or something). Logged in, went to the change password option and THAT page informed me there was a character limit.
They reveal that the back-end service probably doesn't hash the passwords, which is a good time to GTFO.
This way you can have strong input validation server side but also allow almost arbitrary inputs client side.
PS: you likely could also salt the client side hashing and use bcrypt, but bcrypt has a quite short maximum length and I am not sure if it would provide significantly better security here.
This i what happens with the 4 digits of a CC PIN and the 3 attempts before the card switches into PUK mode.
It's like they're deliberately trying to reduce the pool of valid inputs.
So I reduce the length, significantly, sometimes to 8 characters.
The people who make rules in security in some areas are complete idiots.
It took me several password reset attempts to realise what was going on, as my literally just set and password manager-saved password didn't work.
I think in BA's case the password input also had a character limit on it, which is ultimately how I realised what was happening, even though there was no info anywhere that such a limit existed.
That is, it accepted the address on the website, but then it got screwed in the delivery.
I'm still in awe.
The shipping backend might run on a mainframe, almost if not fully unchanged from 40-50 years ago and blissfully unaware of anything but the mainframe quivalent of your standard ASCII.
You can see large stores run all their inventory and such on mainframes. If you ever look over someone's shoulder. My insurance also does but it looks like they don't because it has a nice standard Windows look on the 'inside' of the window. Looked at the title bar and yep, it's just a 3270 terminal emulator that renders fields as nice standard windows input fields that follow whatever theme your computer is set to instead of your telltale black background "DOS" look.
[0]: https://www.avanderlee.com/swift/race-condition-vs-data-race...
(aoeu)id(htns)
# Toggle "doas" at the start.
toggle-doas() {
[[ "${BUFFER:0:4}" = "doas" ]] &&
{CURSOR+=-5; BUFFER="${BUFFER:5}";} ||
{BUFFER="doas $BUFFER"; CURSOR+=5;}
}
zle -N toggle-doas toggle-doas && bindkey '^s' toggle-doas
Even less typing!OpenBSD has maintained exceptionally good taste when it comes to change. When they rip out and replace a "classic" utility, they invariably make a modern classic: openssh, pf, doas
When others rip out a system and replace wholesale, they often just do the hard work to secure the existing thing: Wayland vs. Xenocara
I don't know that there's any objective way to know ahead of time whether replacement or repair is the right approach. But the fact that such a relatively small project such as OpenBSD has managed such outsized positive impact across the open source landscape speaks volumes to their intuitions here.
This is one place when windows can be much better, as users can't catch ctrl+alt+del, so you can always press that before logging in.
But I think there are some scenarios where it serves a practical security purpose as well:
- You're in an office, went away to grab a coffee and left the screen unlocked (bad!). Without sudo, a malicious person could indeed quickly install a backdoor or keylogger and take over your system.
- you're executing a third-party script on your user account. Without a password prompt, that script could trivially escalate its privileges by embedding sudo commands. With a password prompt, you'll hopefully stop and ask yourself why the script is asking for your password.
Basically, you actually cannot assuming that every running on a user account is really authorised by that user. So asking for the password is an attempt to reaffirm that it's really the user who gave that command.
> If an attacker is already in the system, it can install key logger and whatnot without the root password.
Yes, but that would require the attacker to, well, run sudo...
It's also kind of the wrong tool for the job anyways. I'd love to see tools that are more built to purpose for what you are _actually doing with the servers_ instead of giving people a REPL and telling them to go nuts.
On the other hand, if you knew what I'd need to do with the servers, I probably wouldn't need to do it. It's really hard to investigate problems without tools. Nobody is going to make a graph for how much cpu poorly configured docker/datadog are wasting rereading the same 1GB of json logs once or twice a minute, because nobody thought it would be meaningful, but watching top in one window, and running lsof at the right time to see what's being read, and whatever performance tools are hanging out to confirm.
It never works because of the lack of precog, ticket walls, escalation over policy requiring reviews, and other bureaucracy.
What they end up replacing ssh with (teleport or aws ssm are the two I've been forced to use) are slow, spotty, crash frequently, and who knows what vulnerabilities they have.
If all these companies trying to get rid of sshd want to slap their own daemon on to replace it, why not keep sshd and simply have a deamon that manages the keys and not throw out the entire tool chain?
The most fun thing with teleport and aws-ssm: to use it you had to bring up a web page to authenticate. There goes any hope of automation at scale. Because in a world where you're supposed to treat servers like cattle, let's impose (and I mean impose) a regime that forces you to access them one at a time manually, especially in critical situations.
SSH certificates are a thing.
For enterprise the certificates are a far better option. Or s full blown IDP of course.
In what sense? If you're distributing public keys to hundreds of servers, go nuts. Put them in git repos and clone them.
If you're distributing private keys to hundreds of clients, why do you ever need to do this? Assuming you do (and I'm just missing something), then I see your point but if you ensure they're encrypted with the user's pass phrase and you have a procedure for ensuring their permissions are set to 0x600, what's the problem?
[1] https://github.com/jschauma/sshscan/blob/master/src/autopw
For them ssh certificates are much better because you can simply revoke them, and new certs don't have to be added to each server.
At home I still use keys though, but as an enterprise admin I see the issues. Even at home it's kinda annoying having to add a new yubikey to 20 servers.
And most enterprises already have a completely functional and secured PKI, usually with the whole HSM deal and everything. It's plug and play and works with your existing infra.
Can't "jump host" solve this?
(Not an admin, so please excuse if the question is stupid).
Most of my servers are not always on, some are in the cloud and some are virtual.
The ones that run 24/7 are NUCs which have excellent idle energy usage. The bigger ones are HP microservers but like I said those just run when I need them (there's about 100 TB of archive storage in them).
And then I have some raspberries to run my home Assistant and some other stuff. All in All I have about 10 real 'servers', 5 running 24/7, the rest are remote or virtual (one of the NUCs is an ESXi). Plenty of resources for a decent home lab.
With the recent increase in electricity prices I did move one of the microservers from 24/7 to on-demand.
Damn, I'm double+ that a month with turning everything off at the plug each night and during the day when not on. Just one of the benefits of living in post-brexit UK, with a lame useless gov... Anyway nevermind. Always wanted to do the home assistant thing with one of my rpi, but can't afford it just now.
I don't have any "Discover" installed as it's not needed for anything. There's aptitude…
Regarding Discord: Discord is a virus. I try to avoid it. (And since you can't register without getting naked and showing the virus your telephone number it's not difficult to avoid ;-)).
It's almost impossible to register an anonymous account there. Even if you find a throw-away SMS number that works to register (which is hard enough) a few hours later they will block that account again and require a fresh number to unlock. I've given up even trying to register there; but plan to fill out some GDPR complains soon. Thanks for reminding me to do so…
Of course, like UAC, an app could just make its own prompt that looks like the real deal and steal the password, but that seems to be an unsolved problem on every platform.
That's one of the reasons why "lock screens" are a lie under X.
But that's one of the problems Wayland solves. It has a much better security story.
Also some people use password-less sudo, so...
I’m in love with this because it’s so silly. I’ve always wondered what would happen if you gave a company an unpronounceable name and it took off.
My guess is that the community would name it and that would be that. But I’m fascinated to witness that process happen.
I really hope Sado takes off. ;)
Doesn't it? https://unicode.org/emoji/charts-11.0/full-emoji-list.html#1...
Was one of the 2020 words of the year by some random group of people! https://www.nippon.com/en/japan-topics/c03823/amp/#
The wechat shortcode for their similar face is 可怜.
As far as I know, it is not used for begging (and therefore couldn't be called 求); the one time it was used to me, it seemed to express something more like "ouch!".
Δ
・・・・・・・・・
!!!
†‡†
⣎⡇ꉺლ༽இ•̛)ྀ◞_༎ຶ_༽ৣৢ؞ৢ؞ؖ_ꉺლ https://www.discogs.com/artist/6400214-%EA%89%BA%E1%83%9A%E0...
As long as it's an actual company taking money/paying for services, you'll have to register it, so it will have a pronounceable name.
Reminds me of "Love symbol" formerly know as "Prince". The symbol is great, but you'll have to register as an artist to get the money, you'll be signing contracts, etc., so whatever clever symbol you find, at some point a standard writable name will be settled on.
Or "woosh", as I believe the kids say these days.
/s
But on the wider internet everyone assumes you’re stupid. So the “/s” becomes a safety measure.
Also read once that it’s an accessibility thing. But I’m not sure if that’s true.
I don't see how it's an accessibility issue, except to help out those with a deficient sense of humour.
so, I guess announcing your sarcasm makes sense in an international accessibility sense, particularly when some of the normal cues are not present (tone of voice, facial expression, eyes rolling)
Communicating across cultures is always bound to lead to the occasional misunderstanding, even more so over text. When writing something "dry" such as documentation it's probably a good idea to keep that in mind, but making jokes worse just so that a few more people can perhaps maybe possibly understand it is where I draw the line.
https://manpages.debian.org/stretch/chiark-really/really.8.e...
sudo’s notion of some people being able to do some things but not others just doesn’t seem very relevant these days, and never really sat nicely with me in my multi user Unix host days either. I was much more in favor of giving people multiple system accounts and letting the system auth (ssh) handle who can do what.
Now of course we all have umpteen complete hosts each, and the security boundaries are at the virtualisation layer. Passwordless sudo all ‘round!
> Using this program requires you to be able to type an emoji. Most attack code is of such poor quality that they are unable to run commands named with emoji.
What makes you think you met it?
That means you didn't meet it[1].
[1]That balance you were talking about. You missed it. If too few people understand your content, it's not the people that's the problem. As someone attempting to present an argument, the onus is on the presenter to make the argument readable, not on the reader to squint until it gets readable.
IOW, if you can't be bothered to write your message well, why did you expect other people to be bothered to read it at all?
And it looks to me like lots of people understood.
If you've done any research into quality malware, exploits and the like (both domestic and foreign), the quality and often elegant solutions they come up with will not be somehow kneecapped by an emoji. It also only needs to support inputting one emoji in the event that someone uses this out in the field; not hard to do in shellcode.
This is where I believe security-through-obscurity is underrated. As long as you're small enough that targeted attacks aren't part of your threat model, merely being unique affords a great deal of safety. Your wierdo jerry-rigged authentication system may not be particularly robust, but it's more likely than any mainstream product to repel an automated attack.
However I do agree, at least against automated attacks; there will be a bit more security. Though if you are doing anything serious that draws attention, at that point obscurity is all but putting off the enevitable failure if you are ever targetted.
Therefore the command is basically just asking very nicely, hoping to get one's way
edit. source: dude just trust me
But I bet if you said "pwease emoji" or "bottom emoji", much of the same group would probably get it.
Though maybe "pwease" would this and the fingers.
Yeah, I don’t think I’m going to be calling it that in the morning standups.
I'm on the spectrum, and I can't tell 99% of these things apart. Looks like a sad face to me. no different then the 500 other sad face emoji's I find. I'll stick with =(
Edit: ok apparently this is indeed the placeholder for missing emoji in Firefox for Android at least.
If it's any consolation, I don't think anyone could infer that from the emoji itself. The meaning is like a subculture's slang.
I don't use emojis, so I only know the very basic ones (which I consider to be obfuscated emoticons).
It is pretty obvious that it is a face doing the sad puppy eyes, like the one a young niece might do after I refuse to buy her some ice cream. I didn't even know it's meant to be underground, impenetrable slang.
Anyway, this is one reason why I prefer images and anigifs for expressing emotion in chats.
Someone linked this above, which has the various versions: https://emojipedia.org/pleading-face/
The Twitter version of it is what I'm seeing from this blog (Firefox on Ubuntu), which to me does look a lot more like "exasperated eyeroll" than "puppy-dog-eyes pleading".
If it's any consolation, I'm not, and I don't know exactly what a lot of the face-emojis are supposed to be expressing unless I see a text representation of them or otherwise have them explained.
I don’t know if that’ll help you (or anyone), and I have other problems with meatspace facial expressions (partial face blindness, probably partly attributable to finding eye contact uncomfortable; although weirdly enough trying to “get” emojis has helped on both these fronts to some small extent). So … idk if this will help but I took all this time typing it so here we are.
This depends a lot on emoji font. Apple's 3D-ish, highly colorful, rasterized emoji are very difficult to discern at small sizes, for example, unless you already know what they are.
More stylized emoji fonts, like EmojiOne or emoji that are drawn basically the same way as text glyphs, like in Symbola, are way, way easier to read, especially at small sizes.
If you're on an Apple device, though, you're close to fucked, since the operating system just ignores your font choices when it comes to emoji. The best you can do is carefully hack the actual files for the Apple Color Emoji font on macOS, which requires you to disable SIP and will cause lots of app crashes if you do it wrong. But if you're using an OS that has some respect for you and your choices, try a different emoji font!
Until I read that comment I was having real trouble figuring out WTF it had to do with running commands. I thought it might be some practical joke tool that automatically modifies your commands such that they'll make you sad when they run.
Don’t get why we have to bust out all the cringe internet lingo to describe something that you see in that venerable “real world”.
[EDIT] I mean I see it once someone points it out, but that'd have been lucky to make my top-5 guesses otherwise.
No idea what that's supposed to mean
I remember a few years back, there was a problem where Apple implemented "GRINNING FACE" in such a way that Apple users interpreted it as a sarcasm indicator, but most others would look just like a standard smiling face, leading to quite a number of awkward exchanges when non-Apple users would read things such as "Yes, let's burn it all down :)" instead of "Yes, let's burn it all down :|"
Disregarding the "browser" column (could be anything, it's what your browser renders the text as), only the Twitter font has the "looking up" variant that you think is normal. I'd rather say the straight-ahead look is the norm for most font designers when interpreting the "FACE WITH PLEADING EYES" description of the character.
https://github.com/twitter/twemoji/blob/v14.0.1/assets/72x72...
To me at 2–3 mm it looked more like sleep deprived baggy eyelids (or maybe candy corn eyes, but what does that mean?). I read the whole post thinking the program was named after exhaustion, not pleading.
I just polled the room and most guesses were that it’s sadness/sorrow.
$ apt-get install vim
E: Could not open lock file /var/lib/dpkg/lock - open (13: Permission denied)
E: Unable to lock the administration directory (/var/lib/dpkg/), are you root?
$ fuck
sudo apt-get install vim
[sudo] password for nvbn:
Reading package lists... DoneThey wrote it in 1980 for unix; what exactly would you like them to have used?
> (as far as I can tell) have no intention of rewriting it in Rust
Since it will be less than a paragraph before you start ranting about how "obscure targets that nobody uses won't be able to leech off of the rest of the ecosystem by holding back any chance to let us have a modicum of nice things", I trust you, who would surely never be a "leech", have written an actual replacement or submitted patches to start improving the situation? Or perhaps are funding such efforts?
That is obviously not a replacement; either we take the serious approach of "sudo allows only authorized users to run things as root" and yours doesn't control access, or we take the nonserious approach of "sudo has so many bugs that it just gives people access" in which case we hardly need to bother rewriting it.
sudo is for people who need root access. if you need anything less then create a custom group and assign the relevant specific rights there.
The amount of times I’ve seen:
wget random_script.sh && chmod +x random_script.sh
sudo ./random_script.shThe hard part is solving the coordination problem among millions of humans to just pick one and standardize on it. All that work is eliminated in an instant if you just convince the sudo maintainers to bless and ship one.
Pascal
https://web.archive.org/web/20200614183924/http://www.grokla...
So yes, actually, that might have been possible, and if so it probably would have been better than C.
https://en.wikipedia.org/wiki/Setuid
Sudo exists as an elaborate ACL scheme implemented in user-space which takes advantage of the setuid+root permission scheme implemented in the Unix kernel to allow granularly granting root access to non-root users.
But any program can be setuid and/or setgid to any user/group and it will then run as that effective user/group by any user with permission to execute that program.
There are handful of programs that are setuid root because they need to do things like open raw sockets that non-root users can't do, ping being the canonical example. Finding buffer overflows in these programs has been a source of privilege escalation security bugs.
But also we’ve largely given up on Unix users as a security barrier in many places, instead using things like VMs as the interface between different tenants in hosting providers and clouds and such. The age of untrusted shell accounts shared Unix servers is ending, if not over already. Passwordless sudo on a cloud VM is probably the norm now.
1. any program can call fopen(2) and fwrite(2), and yet cat(1) exists. Unix plumbing is mostly there for cases where you're linking programs together in ways those programs didn't expect.
2. Privilege separation. You don't want big, complex programs running as root. You want big, complex programs running as your user, speaking to tiny little well-hardened programs running as root over a pipe, where the tiny-little program can only do one thing.
For example, you might have seen the pattern of piping things into `sudo tee [file owned by root]` in order to be able to write to a file that's owned by root. This fits both of the above considerations: moving the privilege into "tee" rather than having whatever command is generating the text, exposes less of a vulnerability surface; and also, it's `sudo tee` rather than tee(1) itself performing elevation, because tee(1) itself was written a decade or two before this pattern emerged, and so has no idea it could be used this way.
That’s a pretty wild conjecture.
Well played.
1. Although, if I remember correctly, URLs are not supposed to have characters outside of ASCII 33–126 in them (and some of those within the range are also disallowed), although as the link to my poem shows, those restrictions aren’t always enforced.
https://en.wikipedia.org/wiki/Internationalized_domain_name
https://en.wikipedia.org/wiki/Country_code_top-level_domain#...
Pretty soon you'll be able to do this instead:
https://www. 宝石の十字架 .jp/poetry/invisiblecitylit
(https://www.xn--u9j516hprf6h574cs4w.jp/poetry/invisiblecityl...)
Is that... good? ¯\_(ツ)_/¯
However, they are IRI, not URI, and IRI support is sparse because of its dubious broader value.
The space of IRI implementations is quite sparse, mostly limited to browsers (and often rather spotty within the browsers as well). So a page hyperlink or paste into a browser bar will turn it into a URI behind the scenes, but it is unlikely another program or script will handle them.
In fact, I believe WHATWG defines that hyperlinks are URI, not IRI - so the generated HTML in this case by HN is not valid.
IRI are of dubious value - they exist in a space where users are expected to understand and evaluate the legitimacy of an identifier by sight. That said, this is about the best we have for web domains, so (for example) I think all major browsers do render internationalized domain names in their address bar.
The build-around was having to fiddle with a bunch of core system stuff (super descriptive on my part) with lots of overloading system packages and just... no thanks.
I did it once; never doing it again because then you have to deal with having a non-standard system from then on. Switched to `kitty` and have no problems with emojis.
tl;dr: If you are designing a CLI tool, please refrain from emojis.
It all comes across as very "bah humbug", "get off my lawn", "I hate fun". I'm not going to say I wish the whole internet looked like this site or that other site but I do enjoy something different than the same look everywhere and I like seeing people try new/different things.
Mara: the student that knows a fair bit but isn't afraid to call the teacher out on their shit, also used for most parentheticals
Cadey: the teacher that learns from student questions, also a bit of a self-insert to de-emphasize certain parentheticals
Numa: the shitposter that really does mean well, but communicates in shitposts, memes, and similar
Aoi: the idealist that has difficulty accepting the state of the world as it is
With these I create tension between the characters to help illustrate the point. Aoi was added for this article and helps to ground the satire in a sense of reality by being disgusted by this tool.
This is, of course, how the original Socratic dialogues are written, too! There are characters with distinctive personalities and points of view who (re)appear in multiple dialogues.
Maybe a lot of STEM folks here have never read Plato or other/later philosophical dialogues, or they never got a sense for how they can be useful. Maybe how it's interleaved with the main body of text is confusing for people as well?
Either way, I think the main idea of the format is good. Maybe some small formatting tweaks or a link at the top like 'how to read this document' would help get new readers to grok the format.
Very readable, still fits with the theme, and helps clarify the genre. :)
I have no problem at all with the presentation of this article. As always your characters make the article really gripping to read imo, like taking part in a good conversation.
But I did not like the way you handled the topic as much this time. I know that it is supposed to be confrontational and a bit in the face. That is the joke. Being nonchalant about is kinda fun, but when that is part of what actually is quite hard criticism of someone else's work it starts to sound very arrogant. But I don't know.
Anyway, looking forward to your next article :)
Where else should one try out "weird" (non-mainstream) concepts and see what sticks?
I don't understand your harsh dismissal of the author based on the design of a personal website, to be honest.
> <Cadey> I don't know about the code quality standards of the sudo project, but overall I don't see them doing any concerted effort to try to migrate away from C (or to reduce the complexity of sudo) and there are frequent security vulnerabilities that result in attackers getting root access anyways. I really wish the industry as a whole would take languages like Rust a bit more seriously and start actually moving towards programs being safer to use because security vulnerabilities in core infrastructure result in emergency patches. It was disappointing to see an attempt at using Rust in an important Python library torpedoed by users of obscure architectures not supporting Rust. Maybe the solution there is to use WebAssembly as a compile target instead of making everything be native code. I wouldn't wish hppa's reverse stack growth on anyone trying to write a compiler though.
Which was edited from this:
> <Cadey> God I wish they did. They wrote the program in C, (as far as I can tell) have no intention of rewriting it in Rust, and it's had many viable attacks over the years that allowed attackers to gain root privileges and worse. It's also debatable if the entire concept of privilege separation as implemented in Linux and UNIX was a bad idea to begin with but we're stuck with it because of an endless ball of legacy programs controlled by egotistical open source people that refuse to change because then obscure targets that nobody uses won't be able to leech off of the rest of the ecosystem by holding back any chance to let us have a modicum of nice things.
I don't care about their website design (it's better than a number of "serious" websites I've visited) and I don't care about their characters, especially since it's a literally ancient way to explore philosophical issues and being a furry is morally better than being a pederast, as the Ancient Greeks were.
Personally I'm used to it and I think security is more important than indefinite hardware support. Installing the same software on newer hardware is fine.
I have been encountering it now and then - mostly on Nix/NixOS topics (by the way, thank you very much for some very useful articles!), and while I don't have any issues with the format, those characters were a kind of small and a little bit weird (not in a bad way, just... unusual) mystery, making me wonder "who are those, what's the story/going on here besides the obvious dialogue format?". Not much, of course, just a minor casual curiosity, but made me look into the footer/about section if there was anything in there.
Just saying. And thanks again!
https://gist.github.com/lrvick/b0f4b744ab277582b1f9c50e0eb87...
Having a password or a key or any other nonsense to run sudo is security theater.
If you do not want all applications to have real root access, use Qubes to isolate applications into VMs, or at the very least have your daily driver user not have root access and have a separate admin user.
Wrong. He is called ピエン (Pien). Please call him Pien.
If the post is a joke it's not a good one. Sudo has issue, sure. But this tool is even worse! You could just start working as root user the whole time, like many people do (or did) under Windows, but we all should know where this will end.
The developer didn't do anybody a favor creating this. He will be imho directly responsible for any harm done by this tool.
People should really think upfront about the consequences of their stupid jokes.
People are dying these days form "changeless" on TikTok that are often also just stupid jokes put online by even more stupid people without any sense of responsibility. I see parallels here to be honest.
Sadly, the writing style interpersed with the cartoon dialogues is so insufferable and distracting that I learned absolutely nothing. My ADHD didn't help either.
Browser address bars will typically convert and render URI as IRI, because they need to convey the domain name to the user (because we don't have a better way to handle reputation on the web).
testing --><---
This doesn't carry the risk of tainting the new session with the context of the initiating shell (pwd, env, ...) and doesn't only feel like a full login, but actually provides everything that's part of a login session (systemd and DBus user-sessions, shared session context with other shells of the same user, etc).
But that only works if theres a password on root, which is generally seen as ill advised. But was how every distro did it in the olden days before there was a sudo group.
sudo su -
Which also resets your environment and everything. $sudo apt-get install -y systemd-container
to get machinectl>Hello. Before commenting about the author, please read this page that explains >the >pronouns that you should be using. tl;dr: the author of this website is NOT >male. >Please do not use "he" or "him" when referring to the author.
How about
> Hi. I am nonbinary. > I prefer the following gender identity pronoun pairs >(xe/xer),(they/them),(she/her) >If you would like to know more here is a link.
(based on blog post and https://www.reddit.com/r/transprogrammer/comments/ox7aef/chr...)
I am autistic and all I want is an efficient way to address this issue I dont care about the politics. Just give me a universal, drama free, efficient way of addressing you and I will do so.
We should just make that a HTML Meta tag <gender identity pronoun pairs> or microschema
Given that there are over 72 different genders now listed here: (https://www.medicinenet.com/what_are_the_72_other_genders/ar...)
Plus: There is no fixed number of gender identities. They occur on a spectrum, which really means that the possibilities are infinite. https://www.medicalnewstoday.com/articles/types-of-gender-id...
HTML will need ways to convey such information in an orderly and efficient manner.
Or we could just reduce infinite to 1 One pronoun pair to bind then all. . Hu? (For HuMAN) (so only Hu)
In some languages you address people in different a different manner depending on age. and some based on age and perceived status. (and in most some variant if married or not).
All of that can be removed.
Age,Married Status and so on is not required knowledge. Gender identify is also not required knowledge.
Hu / Hua ?
It only shows up for people that visit via Hacker News with ads disabled. If you don't want to give me ad impressions, then when you visit it gives you a nudge to be civil when commenting on the article.
Is there anything I can do to change it so that it's better?
If you don't want to see that message, please disable your ad blocker.
I did the math for last year and somehow my blog actually made a small profit! It's nowhere near enough to make me want to quit my dayjob, but it's at least enough that the excess can pay for all my video game purchases. I need to finish that article detailing the blog's finances for 2022.
> It's also debatable if the entire concept of privilege separation as implemented in Linux and UNIX was a bad idea to begin with but we're stuck with it because of an endless ball of legacy programs controlled by egotistical open source people that refuse to change […]
Not a very charitable way to describe volunteers who don’t want to learn the flavor-of-the-month language to reimplement their old projects. Maybe if there were some folks who knew rust and were interested in doing this kind of work it would get done.
> God I wish they did. They wrote the program in C, (as far as I can tell) have no intention of rewriting it in Rust, and it's had many viable attacks over the years that allowed attackers to gain root privileges and worse. It's also debatable if the entire concept of privilege separation as implemented in Linux and UNIX was a bad idea to begin with but we're stuck with it because of an endless ball of legacy programs controlled by egotistical open source people that refuse to change because then obscure targets that nobody uses won't be able to leech off of the rest of the ecosystem by holding back any chance to let us have a modicum of nice things.
So, I guess fair enough. I will expand it slightly to say: it is an uncharitable way of describing volunteers who don’t feel like learning a new language and reimplementing their old projects while also overturning a huge ecosystem of software.
> The part about being annoyed that sudo is still written in C is coming from a sense of exasperation that there's still more predictable memory safety bugs involved with sudo because it's still written in C.
I am a lot more serious in my other posts (such as this one: https://xeiaso.net/blog/2022-media or this one: https://xeiaso.net/blog/hlang-nguh), but sometimes I have to write satirical things otherwise people won't get the point.
Believe what you want though.
The common reason our most senior engineers tell me isn't even that it's too late to switch, it's that "C++ is perfectly fine as long as you use it right" and "it doesn't matter what the outside world uses" and "performance."
Here is the new version (same links):
> <Cadey> I don't know about the code quality standards of the sudo project, but overall I don't see them doing any concerted effort to try to migrate away from C and there are frequent security vulnerabilities that result in attackers getting root access anyways. I really wish the industry as a whole would take languages like Rust a bit more seriously and start actually moving towards programs being safer to use because security vulnerabilities in core infrastructure result in emergency patches. It was disappointing to see an attempt at using Rust in an important Python library torpedoed by users of obscure architectures not supporting Rust. Maybe the solution there is to use WebAssembly as a compile target instead of making everything be native code. I wouldn't wish hppa's reverse stack growth on anyone trying to write a compiler though.
Also the overall article was quite interesting and I think the template is really accessible and fun to read. If I knew there would be a bunch of ancillary complaining this thread, I probably would have kept quiet!
I wonder if there would be a way to lose the 'value' of a downvote if the account in question predominantly downvotes a specific opinion too much (a form of abuse i think). The assumption being that, "ok, you downvoted three posts, that were all very incendiary; though the other 40+ you've downvoted were all that way, statically the chance that those posts are all offensive is unlikely."
Would be interesting to see; I don't hate Rust, but I don't appreciate the zealous nature of most of their advocates, and for me personally, there's nothing fun about writing in Rust. It's also a bit too bloated for my tastes, i would never want to run it in lowlevel personally. Yet most of the time I stay away from threads talking about Rust, because i just get sent to the bottom fairly quickly, on most sites that encourage discussion.
The chilling effect is as you describe, that I often feel discouraged from contributing my knowledge, experience or opinions because of the blatant manipulation of conversations by Rusticles and the apparently contentedness by dang for that to be the defining angle of discussion here.
HN should have tags. Every article gets tagged by users with high karma counts, by some sort of ranked consensus (maybe a rust tag, python tag, database tag, politics tag, etc) and users could just list tags they want muted in their settings.
Instead, I’ll be told about the HN guidelines and some minutia in this comment that is somehow worse than a thousand idiots hijacking literally every conversation about a particular topic.
As they say, not my monkey, not my circus…
You mention the "chilling effect" that does exist, and you aren't the only one, I've seen a lot of comments like yours not just on this site, but on pretty much any site that sees any advocacy for the Rust they promote.
I think there might be some value in filtering through something like a GreaseMonkey extension; which I've been debating for a good while if i should just make. Simply allow to remove listings from the HN page that inlude 'blacklisted' domains and filter key words. Such as "rust" in the title would see a removal.
But yeah, I think there is a place for Rust, just not where we see it for the most part, and i am increasingly bothered by the issues it presents for the Linux community (which was disregarded by the article posted hilariously enough, they can't even show respect for the communities they cause issues for, a core inidicator of narccistic behavior).
I do judge language communities based on the code reviewers at work. Python and Java people are chill, C++ people are obsessive, and Golang people are obsessed with not using C++. N/A for Rust or NodeJS.
My preference is C for personal projects; I like the freedom.
C# because I work with .NET a lot; some might say too much, i get weary of it sometimes. Python is kind of goofy, but it's useful and easy enough to use that I don't mind it's presence in my work.
I will never work with Java professionally ever again if I can help it; I don't like the JVM; working with Android was the final killing blow, i hate mobile dev. simply because they often have me work with ART and i just can't do it with any real enjoyment. Golang is odd, and I have yet to find any real use for it.
The Rust community is pretty unsettling in their dedication, and they seem to actively lie if you question it's usefulness in a specific situation, so i'm weary of their advice. NodeJS is useful, but truly awful to maintain after the fact. It's also quite nonsensical; I would still spend the extra time just using php or python (with flask), Node is also far too bloated and the bottlenecks seem to make my life only more difficult anytime I try to make something even remotely performant without just throwing load-balancers onto every node website I've ever worked on... not worth it.
NIM is by far my favorite; I don't know why, but I love it, it's the language i would build if I had the time. And... C++ has way too many options to do one thing that it confuses most solutions when I've ran into problems, it's just too much.
Something I've learned over the years is that the choice of tool, before you even start on a project, must be taken seriously; if you mess that up, you will be paying for it for potentially years to come.
I’d love to see for example a site that treats them as endorcements or something. The logic could be something like: keep track of the graph of who upvotes what. When you upvote somebody, you reinforce the link between the two of you. Then, when showing posts, rather than just using the raw scores, measure the weight of the edges connecting two users or something like that.
Also have a button that, if you see a post you don’t like, shows you the edges connecting you to it so you can re-evaluate them and cut some.
Or something like that. I’m sure this is open to abuse. But the idea would be that you aren’t just generating like a gamified “high score” for comments, but trying to build a collection of people that you find or are likely to find interesting. It might even help reduce abuse of the voting system, in that people playing “let’s all upvote each other” games will just become an isolated clique, maybe?
I also made my own social network for links where "liking" something = reposting it, and you only see stuff posted/reposted from people you directly follow. There's no globally popular stuff. Not comparable to HN, though.
I think that this would not fix the issue entirely, but it deserves some thought. It's a unique way of looking at the problems.
Of course this becomes less effective when the community itself gets large, so it won't scale as easily.
> Maybe if there were some folks who knew rust and were interested in doing this kind of work
In this specific example, "this kind of work" would involve porting Rust to 5+ obsolete CPU architectures. Not exactly rewarding work.
HN is plain-text-obsessive by design but occasional exceptions make life interesting.
plain-text-obsessive
^^^^^^(actually, i thoroughly approve of quibbling.)
"Plain text" is a technical term, which generally means raw unicode (or some other character encoding) without additional markup. Emojis are unicode, and can exist in plain text files.
"Text" does not necessarily mean unicode, nor any type of character encoding. The books on my bookshelf are filled with text. If any of those books contain emoji, I would consider the emoji to be an illustration, not text.
(This is a silly discussion but also the sort of thing I have fun thinking about.)
: the best sudo replacement
Also I wonder if you have a secret dashboard full of buttons to control this website, and now there's a "Enable emojis for 10 seconds" button, next to "Subtract 1 karma to anyone with a custom topcolor" and "Promote a random Lisp post to the front page"
Let's keep it a secret between you, I and dang's emoji stripping code.
So far, there's very little browser support.
https://developer.mozilla.org/en-US/docs/Web/CSS/font-varian...
That's awesome. Those are so easy to read and I love how they play nice with users' font coloring choices.
E.g., the emoji of the article: "" but I suspect there won't be anything between the quotes.
(An exception was made for the title, in this case; dang mentions that in a comment in the comments here.)
Yes, this is what I meant.
LC_ALL=C
It's important and NECESSARY to be inclusive, and as long as nginx can still provide the UTF-8 characters I don't care; but there is no way I can allow anything other then US ASCII to be on the terminal.
Thankfully it got fixed at some point.