• 0 Posts
  • 66 Comments
Joined 10 months ago
cake
Cake day: September 9th, 2023

help-circle

  • Both things can be true at the same time. E.g. people sometimes are worked up thinking about some strawman they are discussing against in their head. So when I don’t virtue signal enough that I’m on their team or at least not against entirely against every single thing they stand for, those people sometimes take a very clear and to the point thing I say or ask and misconstrue it into meaning some horrific, morally objectionable thing.

    Like, when people say that burning kittens on BBQs is a huge problem that we need to band together against, and I reply that I doubt that this is a widespread enough or well enough organized phenomenon that banding together would be effective, they take it as me admitting that I’m pro kitten-burning.

    Sure, I failed to coddle them and front my opinion with how abhorrent those kitten burners are, but also nothing I said implied that in the slightest. I just thought that didn’t need mentioning, why say something so obvious?















  • I don’t think those are better or worse. My point isn’t about some ancient far too limiting standard, but about how easy it is to wreck everything by not knowing some obscure syntactical rule. My issue is about implicit conversion between strings and arrays, about silently swallowing errors and so on. And the only shell languages that I know aren’t idiotic are nushell and Powershell.

    That KDE theme that nuked some user’s home directory? Used a bash script. That time the bumblebee graphics card switching utility deleted /var? Bash script. Any time some build system broke because of a space in a path: bash/ZSH/… script.

    Why would anyone make an init system based on shell scripts these days?




  • You’re right, there’s more parts to it, especially social engineering. Maybe there’s other ways to hide a payload, but there aren’t many avenues. You have to hide the payload in a binary artefact, which are pretty suspicious when you don’t do it in a (well scrutinized) cryptography lib, or a compression lib.

    Then that payload has to be executed for some reason, which means you need a really good reason to embed it (e.g. something like widevine), or have to modify the build script.