‹ BackHN Continuity

Thread

Run Qwen 3.8 Flash Next (125B) on consumer hardware (RTX 4090) at 100T/s

741 points · 330 comments · snehesht

  1. deadbunny · · focus · HN ↗
    &gt; Set up Strata on this PC for me: <a href="https:&#x2F;&#x2F;github.com&#x2F;Niko1221&#x2F;Strata" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;Niko1221&#x2F;Strata - follow docs&#x2F;AI_SETUP.md in that repository.

    And I thought piping to bash was bad

    1. snehesht · · focus · HN ↗
      Yeah, I was surprised at first then had to dig through setup.py and setup.sh files to figure out.
    2. gchamonlive · · focus · HN ↗
      Piping to bash is definitely worse because there is no plan mode in bash. Agents also normally don&#x27;t execute anything transparently, at worst you&#x27;ll see it doing something weird in the logs.
    3. Skunkleton · · focus · HN ↗
      I&#x27;ve never understood the security argument people are making when they complain about `curl foo | bash`. I get that these scripts sometimes mess up your bashrc or whatever, but from a security perspective I see no issue. You are already installing software from the same domain. If they were going to do something nasty, they could do it with any of the software you are using from them. It doesn&#x27;t have to be the setup script.
      1. spiorf · · focus · HN ↗
        People with less experience normalize that behaviour and when the domain is not trusted the habit let their guard down. See all the clickfix attacks.
      2. sspiff · · focus · HN ↗
        The setup script often runs privileged (by calling sudo) and that&#x27;s not unexpected when installing new software.

        When I install something, and it asks for my root password later, I will be much more likely to think &quot;hold up, this ain&#x27;t right&quot;.

        1. jeremyjh · · focus · HN ↗
          Can you give me a popular example that requires sudo? I don&#x27;t think that is very common at all.
          1. serf · · focus · HN ↗
            every single bash replacement for one.

            oh my zsh is a specific example.

            chsh requires sudo on most installs.

        2. minitech · · focus · HN ↗

            cat &gt;&gt; ~&#x2F;.bashrc &lt;&lt;&#x27;EOF&#x27;
            sudo() {
              sudo install-drivers-without-your-permission
              command sudo &quot;$@&quot;
            }
            EOF
          
          (this is not an endorsement of curl | sh, just an indictment of the state of software)
          1. nagaiaida · · focus · HN ↗
            when people left their laptops unlocked, we used to wrap their sudo so that the output would be pre- and postfixed with ascii dolphins
      3. serf · · focus · HN ↗
        a script isn&#x27;t getting hashed to see whether or not it&#x27;s the one the website intended to serve you, for one.

        what use is hashing every piece of software that goes thru the distros package manager just to throw caution to the wind at the layer above it?

        w.r.t. &quot;it&#x27;s already from the same domain&quot; , well most bash&#x2F;z install scripts either invoke a package manager or they download and untar a package that has nothing to do with the host domain, anyway.

      4. layer8 · · focus · HN ↗
        I push binaries from untrusted sources through VirusTotal before running them. Piping a Bash script from curl bypasses that. Furthermore, such Bash scripts, when they aren’t self-contained, make security checks more difficult than a self-contained archive, installer, or binary, even when downloading the script without immediate execution.
        1. Iolaum · · focus · HN ↗
          Nothing is stopping anyone from pointing their agent to that script to review and audit it before running it.
          1. layer8 · · focus · HN ↗
            I don’t believe an agent can do that effectively without a sandbox to run the script in, if the script isn’t self-contained.

            And everyone running a research agent on every download can’t be the solution. It’s much more effective to crowdsource a security database based on hashes. But for that, the downloads need to be self-contained.

        2. parsimo2010 · · focus · HN ↗
          You could always curl the install script, and modify it to run the virus scan in between the build and install steps.
      5. thomastjeffery · · focus · HN ↗
        The real problem is that we just aren&#x27;t using package managers. We should be using package managers. Package managers are really really good.
        1. [deleted] · · focus · HN ↗

          [deleted]

      6. ffsm8 · · focus · HN ↗
        You can detect the use of curl|bash server side, hence it&#x27;s an essentially undetectable attack vector. People have shown poc attacks of that kind all the way back in the 2010s

        <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=17636032">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=17636032

        The original blog is no longer available though.

        But I&#x27;ve not had that stop me from doing that myself, I am more towards the &quot;I like easy&quot; then the &quot;I want to be secure&quot; crowd

        1. wsc981 · · focus · HN ↗
          There’s a snapshot on web archive:

          <a href="https:&#x2F;&#x2F;web.archive.org&#x2F;web&#x2F;20250109045029&#x2F;https:&#x2F;&#x2F;www.idontplaydarts.com&#x2F;2016&#x2F;04&#x2F;detecting-curl-pipe-bash-server-side&#x2F;" rel="nofollow">https:&#x2F;&#x2F;web.archive.org&#x2F;web&#x2F;20250109045029&#x2F;https:&#x2F;&#x2F;www.idont...

        2. throooooo · · focus · HN ↗
          How would you do that? Just rely on the user agent? I use curl quite a lot, but don&#x27;t pipe to a shell.
      7. minitech · · focus · HN ↗
        To compare it to just one other option: when you run `npx foo`, you know* that you’re getting the same public artifact that anyone else running it at the same time would get. (If you have a `min-release-age` configured, you also benefit from that.) If I wanted to distribute software like this, I’d include npm-shrinkwrap.json; then, with `npx foo@1.2.3`, you could be similarly confident in getting the same app every time.

        (I picked this option for ease of comparison, getting a couple of major security wins with very low effort; I don’t recommend `npx`ing stuff in an otherwise unprotected environment either.)

        * well, you can be somewhat more sure

        1. athrowaway3z · · focus · HN ↗
          So to be clear; the solution is then something like

          `curl <a href="https:&#x2F;&#x2F;raw.githubusercontent.com&#x2F;my&#x2F;domain&#x2F;setup.sh" rel="nofollow">https:&#x2F;&#x2F;raw.githubusercontent.com&#x2F;my&#x2F;domain&#x2F;setup.sh | sh`

          Note we dont even have a hash there - just a promise that a third party (github) has a log of whatever was hosted at that url.

          1. nagaiaida · · focus · HN ↗
            maybe then we&#x27;ll pin hashes instead of filenames, and oops now anybody can fork my&#x2F;domain and hand out a link that looks official with whatever contents they wish
        2. slowin · · focus · HN ↗
          While I don&#x27;t think piping curl into bash is the most secure, npm installing has proven time and time again to open yourself up to supply chain attacks. At least with curl you know that you&#x27;re getting the supply chain put together by the software author. With npm, every single library is a vector for attack every time you update.
          1. minitech · · focus · HN ↗
            You’d be getting the supply chain put together by the software author in either case. It’s common to do both badly, but if you care about doing it well, that’s easier with npm (e.g. shrinkwrap, as mentioned) and can be taken farther (the non-varying artifact thing).
            1. slowin · · focus · HN ↗
              Npm dependencies resolve at install time though, so some of the pinned versions may have changed ownership or otherwise been modified since the author pinned them. With the curl | bash solution you&#x27;re getting a singular supply chain packaged by the author at release time.
              1. cpuguy83 · · focus · HN ↗
                With curl|bash you are literally getting anything that happens to be in that script. These are frequently poorly constructed, so not check hashes or pin dependencies they install. Even security companies (see trivy supply chain attack) get these badly wrong.

                I&#x27;m not replying here to say one is better than than the other (npm has obviously had its share of problems) but rather to combat claims that curl|bash is somehow safer, it absolutely is not, in fact it&#x27;s all the bad stuff about npm without the pretense of being potentially safe.

      8. rlpb · · focus · HN ↗
        It&#x27;s `curl foo | sudo bash` that&#x27;s the bigger objection. Running software usually shouldn&#x27;t require root, and then the equivalence argument you make doesn&#x27;t hold.
      9. bee_rider · · focus · HN ↗
        The intended workflow is to download the install scripts, download the source code, read them both, and then start running things. That’s how Open Source is secured. Piping from bash to curl is just the most obvious warning flag.
        1. majorchord · · focus · HN ↗
          And practically zero people are actually using this &quot;intended workflow&quot; in the real world.
          1. bee_rider · · focus · HN ↗
            Yes, the status quo is quite bad, which is why it gets complained about a lot.
      10. IshKebab · · focus · HN ↗
        There is no argument. It&#x27;s just people&#x27;s reflex reactions.

        The technical excuses they come up with (e.g. that the server can detect it and send different content) are just post-hoc justifications for their instinct.

        Just ignore them.

    4. mrinterweb · · focus · HN ↗
      And yet people will let AI agents run autonomously on their machines. I feel like we&#x27;re reaching peak YOLO with security.
Open on Hacker News to reply ↗

Unofficial Hacker News client; not affiliated with Y Combinator.