11 comments

  • athrowaway3z 2 hours ago
    > A1 — Memory Exhaustion (~383MB):

    I'm actually somewhat surprised at the clumsiness here.

    I'm a complete amateur that had DeepSeek build a PHP2Shell exploit, and once the stealmybitcoin site went up and set an upload limit, i had DeepSeek try to shrink/amplify it.

    DeepSeek couldn't find anything but a 2x reduction, but reading the report of how it was done - https://github.com/KillaBoi/StealMyBitcoin-PoC - I was somewhat surprised it didn't find it, and equally horrified at PHP allowing such a memory bomb of creating nested objects by parsing `f[0][x][x]...` from random requests.

    Point being; these aren't amateurs but i kind of expect most well funded pros to have found this method to avoid sending massive filenames and session progress data.

    • rootsudo 1 hour ago
      Interesting, my deepseek session did find it.
  • xxmarkuski 2 hours ago
    Dream is btw founded and led by Sebastian Kurz, who was head of the Austrian government. He had to step down because of a corruption scandal.
    • Topfi 2 hours ago
      For our US friends, as context, this is akin to Rudy Giuliani being a cybersecurity expert. Partly, because it simply never was Sebastian Kurzs area of expertise, mainly because the referenced corruption scandal centered around the use of Whatsapp to facilitate said corruption, so, you know...
      • m3rc 1 hour ago
        Well it's more like Rudy Giuliani starting a bitcoin company regardless of his expertise in any one particular area right, which basically has happened a couple times now: https://www.ai-cio.com/news/former-associates-rudy-giuliani-...
        • toomuchtodo 1 hour ago
          The NY politician to grifter pipeline is interesting (Giuliani, Adams, Cuomo).
      • rotis 52 minutes ago
        He has already IT experience then. Surely he learned something out of it. Securely using apps. Discretely handling deals, etc.

        Anyway from their webpage: > We work directly with heads of state, ministries, national cyber authorities, and the senior officials responsible for executing national strategy.

        So I presume he has and provides contacts. Just the usual one hand washes the other. Nothing nefarious I'm sure.

    • cookiengineer 2 hours ago
      One of the three co-founders also founded NSO Group, and was developing the Pegasus malware.

      Just for context, that is the type of evil we're talking about here.

      A German comedian made an episode about it [1]

      [1] https://youtube.com/watch?v=_PF23EdGNcE

  • colemannugent 1 hour ago
    Reading this I'm almost certain the firewall vendor is Palo Alto Networks. They included a PAN-OS setting verbatim and the SELinux config matches my experience.
    • theMMaI 50 minutes ago
      Further indication is that PHP 7.4.33 and PHP 8.30.0 are mentioned which are an exact match for PAN-OS 11.1/11.2 and 12.1/12.2 respectively
      • elevation 33 minutes ago
        Why does a world-class firewall stack need PHP? I'm sure PAN-OS has some neat DPI features, but I would love to see firewalls that are implemented in FPGA, where the tasking was compiled down to gates to be performed deterministically, much like the low port count network switches we have today.
    • clbrmbr 23 minutes ago
      public markets point to FORTINET
  • tensegrist 3 hours ago
    • Vaushite 3 hours ago
      Extremely wrong. I'm not sure how "RCE on every PHP server, from anywhere on the internet, no other requirements" could possibly be underblown by anyone. Exploiting the PHP request parser bypasses basically all security checks and it doesn't matter how secure your code is because the exploitable component runs before your code and can't be disabled.

      I am very curious to hear why you thought it was overblown.

      There was also that other guy who posted "steal my bitcoin" on a vulnerable PHP server with the private keys to prove it was overblown, and got his bitcoin stolen within a day.

      • jerf 2 hours ago
        "There was also that other guy who posted "steal my bitcoin" on a vulnerable PHP server with the private keys to prove it was overblown, and got his bitcoin stolen within a day."

        19 hours: https://stealmybitcoin.com/

        Part of the confusion is that the initial PR for the release made it sound like there was a ready-to-go exploit that was just push button, get shell on any PHP server in the world. That turned out not to be the case, as evidenced by the fact that the number was 19 hours and not 19 minutes.

        But the fact that it was 19 hours and not "never" also does provide a data point that everything that was vulnerable really was vulnerable, it just may not have been quite as vulnerable as it was initially presented. Still plenty vulnerable, of course.

        My point here being that the initial 24 hours were very confusing and I think it's worth remembering that and giving people grace for it. Even now, I've heard rumors of an exploit that does work on all boxes without making changes for a specific target but I'm not actually sure whether that exists or not. (Any further info welcome.)

        • NitpickLawyer 2 hours ago
          It's not 19hours. The server was originally configured with no running php. Once they added a php file, the server got pwned in 2 hours.
          • jerf 40 minutes ago
            Interesting. I did not know that. (Obviously.)
            • kylestanfield 8 minutes ago
              In online communities right now there’s a lot of demand for evidence of LLM capabilities being overblown. It’s unfortunate that even if the steal my bitcoin creator apologizes for spreading misinformation due to incompetence, the truth won’t be spread as widely.
        • cowlevel 2 hours ago
          Shutting down half the internet was the right move. If it took someone 19 hours to exploit a site, you'd better have shut it down before 19 hours and not after.

          I don't see what was confusing about the initial 24 hours. GP was correct, the description of the bug made it clear it was a very high risk.

        • beepbooptheory 1 hour ago
          Also, unless I am reading this wrong, it does not seem like what actually got the bitcoin was a 2shell-like exploit? Seems like memory corruption leading to printing out the flag through just http requests? How would you use this outside of a CTF context?

          https://github.com/KillaBoi/StealMyBitcoin-PoC

          • cowlevel 1 hour ago
            2shell is catchy shorthand for "do anything". log4shell (originator of the name?) didn't directly give you a shell either, it ran some Java code. You could have a shell if you wanted to.
      • jstanley 3 hours ago
        > I'm not sure how "RCE on every PHP server, from anywhere on the internet, no other requirements" could possibly be underblown by anyone

        It could be overblown if it's not true. The amount of time it took for anyone to claim the Bitcoin from the supposedly-vulnerable PHP site convinced a lot of people that the vulnerability was not as bad as claimed.

        • tkz1312 2 hours ago
          wasn't it setup in an unexploitable configuration (not actually serving a php page IIRC?) for most of the time, and then got popped within like 2 hours once fixed?
          • lifeisloving 2 hours ago
            The point is, under normal configurations when you're serving the PHP server correctly with table-stakes best practices the server is not exploitable

            This was not a scary vuln at all.

            • devin 1 minute ago
              I had a similar take, but I was wrong.
            • literalAardvark 13 minutes ago
              Under normal configurations the server is highly exploitable.

              It's a horrible vuln and I don't understand what's with all the flat infosec society coming out of the woodwork.

              The challenge server had vibe coded infra that made it hard or impossible to hack, but it was a configuration that can't be used in production and no one uses ( it was deployed as a PHP static content server instead of a dynamic site generator )

            • Urd- 1 hour ago
              Normal configuration of a PHP server is to not run any PHP code and serve a static html file?
              • lifeisloving 44 minutes ago
                Where is all the evidence of exploits if most of the webs PHP servers were vulnerable?

                This is a seperate chained exploit itself, seemingly executed by a nation stae. There are thousands of exploits infiltrating web servers around the world daily, and they arent php2shell.

                You only care about this because it falls into a weird viral narrative about "AI saftey".

                • literalAardvark 7 minutes ago
                  There's nothing separate about this.

                  Chained just means they used php2shell to run a local privilege escalation.

            • cowlevel 2 hours ago
              Which best practices did you use to prevent exploitability?

              And would you stake your bitcoin on it?

      • 1718627440 3 hours ago
        > I am very curious to hear why you thought it was overblown.

        Not having made the claim (took down my website too), but because PHP is not connected directly to the network. While you cannot prevent PHP from being overtaken from inside the PHP program, you can prevent PHP being executed on malicious data by configuring the webserver. It's overblown in the sense that it would be even more serious if the same happened in the webserver itself.

        • cowlevel 2 hours ago
          Can you? Initial suggestions to block multipart content-types were a red herring.
          • 1718627440 1 hour ago
            In theory yes. In practice, I don't know, I hope my provider patched it properly.
            • cowlevel 1 hour ago
              What specific configuration would you recommend to block the vulnerability without actually patching it?
              • 1718627440 59 minutes ago
                None. Like I wrote "I don't know, I hope my provider patched it properly."
                • cowlevel 38 minutes ago
                  Then why did you say

                  > you can prevent PHP being executed on malicious data by configuring the webserver.

                  • 1718627440 8 minutes ago
                    You can do this. I don't know how, and I don't think it's a feasible use of my time, to find out how. It's obviously computable on a Turing machine, because they were able to patch PHP.
                  • jstanley 26 minutes ago
                    Configure your webserver to not execute PHP code.
      • jrflo 2 hours ago
        I think it goes back to the huge amount of anti-AI sentiment that's out there today. Any AI accomplishment gets undersold by haters, i.e. people maintaining that the Navier-Stokes solution was stolen, people saying that Lean proofs can't be relied on, exploits like PHP2Shell are esoteric and not usable in the real-world, etc. Those are just comments I recall reading off the top of my head but I could find sources if anyone wants. I think it's just a way for people to cope and fool themselves into thinking that this whole AI thing isn't a big deal and will just blow over.
      • lifeisloving 2 hours ago
        Its overblown in the sense that 70% of the internet was not in fact vulnerable, as widely reported. And not everyone is a hackor because they have access to llms. Go look at normie coverage from people like Linus tech tips and you'll see them saying how millions of servers were under attack by script kiddies with llms, amd how llms are so dangerous.

        The whole thing was basically a psyop, whether intential or not idk but Califs research was funded in part by OpenAI so there's that.

        • robby_w_g 2 hours ago
          I agree. There's nuance to it. I believe the CVE was overblown, and I also believe that it is a severe vulnerability that should be addressed ASAP. 2 things can be true at once.

          It was OpenAI's marketing that hyped up the vulnerability to the point that guys on my hockey team saw it in the news and were asking about it. There doesn't need to be mainstream articles about it, these kinds of vulnerabilities happen every year. Just patch and move on.

          • literalAardvark 9 minutes ago
            The CVE was not overblown. It's correctly marked as a 9.2.

            Random bloggers jumped on it and said dumb blogger things. That is all.

            This is one of the worst vulns ever and the security response from the people who actually secure things for a living was entirely warranted regardless of whether some blogger thought it was the AI apocalypse or not.

          • cowlevel 1 hour ago
            This was a vulnerability worse than Heartbleed. Did they hear about Heartbleed?
    • Topfi 2 hours ago
      Respect, hats off to reevaluate when presented with the info. Will fully admit, I myself lacked the ability to assess the true severity, mainly cause I try to stay away from PHP since my first encounter in sixth grade, so was going a bit back-and-forth due to what I was reading.

      Mainly saw the severity in the economic impact of having to quickly patch so much, but taking offline being the right choice given the risk, along with of course all the decades old, never patches, blogs being botnet targets someday in the future, akin to Wordpress being commonly used for Ransomware hosting for similar reasons. And of course hopefully learning something from the timeline and leak for future disclosures. Feel things need to generally change from the status quo, barely has changed since the 2015 Google/MSFT squabble...

    • rkozik1989 3 hours ago
      Yes, you were. These exploits are happening in processes like php-fpm before it actually executes any code for the web application, so its not like you need to find endpoint where a specific class is being invoked or anything like that.
    • aaomidi 2 hours ago
      I commend you to having corrected your thoughts this publicly fwiw.

      We need more of this.

  • codegeek 2 hours ago
    I am confused. Is this attack possible even after the PHP patches OR these servers just didn't patch ?
    • jdiff 2 hours ago
      > The affected devices run specific versions of a large vendor’s firewall software.

      And the vendor's firewall software runs an unpatched version.

  • npn 26 minutes ago
    > Claude Code had been installed

    I just do not understand. CC is not the sole harness in the world, why the attackers insist to use it.

  • bix6 1 hour ago
    It sounds like multiple things were misconfigured on these servers and they still have access?!?
  • tamimio 1 hour ago
    Firewalls are likely fortinet
    • kekub 57 minutes ago
      Nah, I guess it is Palo Alto. PHP and Appweb is their stack AFAIK. Forti does not use PHP, Juniper uses Appweb with PHP but on FreeBSD - but the article mentions SELinux.
  • jvandijk 2 hours ago
    Haha woopsie
  • paxy 1 hour ago
    Now let’s watch the goalposts shift in real time about how severe this vulnerability is.
    • ofjcihen 1 hour ago
      Most goalposts I’ve seen say “bad but clumsy”.

      Believe it or not in cybersecurity there are many considerations in how “bad” a vulnerability is.

  • lunargamma676 3 hours ago
    Same here, though what stuck with me is that a firewall's admin PHP page was reachable from the internet at all, keep that on a mgmt VLAN.
    • cowlevel 2 hours ago
      it probably starts with a correct and safe authorization check, but this vulnerability happens before any user code runs, so every PHP page is vulnerable.
      • bell-cot 1 hour ago
        True-ish? If your firewall's admin page is internet-accessible, you have no excuse for not doing "bolted to bedrock" lockdowns of your web server config and your PHP config. Either of which could have blocked exploitation of the PHP vuln.
        • cowlevel 1 hour ago
          What's the right level of lockdown? Starting a page with "if not authorized, return 403" would've seemed adequate before this.
          • bell-cot 28 minutes ago
            I'd suggest reading https://github.com/php/php-src/blob/master/php.ini-productio..., then doing a web search for "editing php.ini for maximum security".

            Maybe compare with https://github.com/php/php-src/blob/master/php.ini-developme..., too.

            Then similar for your web server (Apache, nginx, whatever).

            EDIT: About your "would've seemed adequate before this" - I dug up a copy of a PHP v5.2 php.ini file (2-ish decades ago). That file begins thus:

               ;;;;;;;;;;;
               ; WARNING ;
               ;;;;;;;;;;;
               ; This is the default settings file for new PHP installations.
               ; By default, PHP installs itself with a configuration suitable for
               ; development purposes, and *NOT* for production purposes.
               ; For several security-oriented considerations that should be taken
               ; before going online with your site, please consult php.ini-recommended
               ; and http://php.net/manual/en/security.php.