Archived link

The polyfill.js is a popular open source library to support older browsers. 100K+ sites embed it using the cdn.polyfill.io domain. Notable users are JSTOR, Intuit and World Economic Forum. However, in February this year, a Chinese company bought the domain and the Github account. Since then, this domain was caught injecting malware on mobile devices via any site that embeds cdn.polyfill.io. Any complaints were quickly removed (archive here) from the Github repository.

  • originalucifer@moist.catsweat.com
    link
    fedilink
    arrow-up
    207
    ·
    7 months ago

    nah. over 100k sites ignored dependency risks, even after the original owners warned them this exact thing would happen.

    the real story is 100k sites not being run appropriately.

    • vzq
      link
      fedilink
      English
      arrow-up
      128
      ·
      edit-2
      4 months ago

      deleted by creator

    • ShaunaTheDead@fedia.io
      link
      fedilink
      arrow-up
      51
      ·
      7 months ago

      One place I worked at recently was still using Node version 8. Running npm install would give me a mini heart attack… Like 400+ critical vulnerabilities, it was several thousand vulnerabilities all around.

      • unalivejoy@lemm.ee
        link
        fedilink
        English
        arrow-up
        6
        ·
        7 months ago

        If you’re on RHEL 8+, you can install the latest version of node with dnf.

        dnf install nodejs will likely install node 8 :(. Use dnf module install nodejs:20 to install the latest version.

    • Optional@lemmy.world
      link
      fedilink
      English
      arrow-up
      41
      ·
      7 months ago

      the real story is 100k sites not being run appropriately.

      Same as it ever was. Same as it ever was. Same as it ever was.

          • ScreaminOctopus@sh.itjust.works
            link
            fedilink
            English
            arrow-up
            4
            ·
            7 months ago

            Finding new ways webshits fuck up the most basic development principles boggles my mind. It’s like they intentionally stay ignorant.

            • nilloc@discuss.tchncs.de
              link
              fedilink
              English
              arrow-up
              1
              ·
              7 months ago

              We know, but we don’t have time to change. We have another site waiting to get slammed out as soon as the one we’re working on, which was underfunded with a ridiculous timeline goes live.

              There’s still a fair bit of “my nephew makes websites, it can’t be that [hard, expensive, time consuming], oh and by the way, e we need a way to edit every word and image on the site, that both our intern and barely literate CEO can understand, even though we’re literally never going to edit anything ever.”

        • nyan@lemmy.cafe
          link
          fedilink
          English
          arrow-up
          2
          ·
          7 months ago

          They’re widely variable. PyPI gets into about as much trouble as npm, but I haven’t heard of a successful attack on CPAN in years (although that may be because no one cares about Perl anymore).

      • Warl0k3@lemmy.world
        link
        fedilink
        English
        arrow-up
        64
        ·
        edit-2
        7 months ago

        I don’t think we have to choose. “Maintain your websites so you don’t get taken advantage of” and “Here’s an example of a major-world-power-affiliated group exploting that thing you didn’t do” are both pretty important stories.

      • themurphy@lemmy.ml
        link
        fedilink
        English
        arrow-up
        32
        ·
        7 months ago

        The malware thing still deserves a headline. They just argue it’s stupid so many even have to use the library to begin with.

        • KairuByte@lemmy.dbzer0.com
          link
          fedilink
          English
          arrow-up
          2
          ·
          7 months ago

          Have to use? No one has to use any library. It’s convenience, and in this case it’s literally so they don’t have to write code for older browser versions.

          The issue here isn’t that anyone has to use it, it’s the way it was used that is the problem. Directly linking to the current version of the code hosted by a third party instead of hosting a copy yourself.