Follow Slashdot stories on Twitter

 



Forgot your password?
typodupeerror
Android Privacy Security The Internet

A Surge of Sites and Apps Are Exhausting Your CPU To Mine Cryptocurrency (arstechnica.com) 128

Dan Goodin, writing for ArsTechnica: The Internet is awash with covert crypto currency miners that bog down computers and even smartphones with computationally intensive math problems called by hacked or ethically questionable sites. The latest examples came on Monday with the revelation from antivirus provider Trend Micro that at least two Android apps with as many as 50,000 downloads from Google Play were recently caught putting crypto miners inside a hidden browser window. The miners caused phones running the apps to run JavaScript hosted on Coinhive.com, a site that harnesses the CPUs of millions of PCs to mine the Monero crypto currency. In turn, Coinhive gives participating sites a tiny cut of the relatively small proceeds. Google has since removed the apps, which were known as Recitiamo Santo Rosario Free and SafetyNet Wireless App. Last week, researchers from security firm Sucuri warned that at least 500 websites running the WordPress content management system alone had been hacked to run the Coinhive mining scripts. Sucuri said other Web platforms -- including Magento, Joomla, and Drupal -- are also being hacked in large numbers to run the Coinhive programming interface.
This discussion has been archived. No new comments can be posted.

A Surge of Sites and Apps Are Exhausting Your CPU To Mine Cryptocurrency

Comments Filter:
    • by Dutch Gun ( 899105 ) on Monday October 30, 2017 @07:08PM (#55460641)

      This is just indicative of the much larger issue of how incredibly dangerous it is to allow servers to inject and run arbitrary code from third parties on your client machines. Third party ad-networks already do this, and if they're benign, they'll only TRACK you. If they're not, they'll do this, or try to hack your machine, or just about anything else they want to with all the power Javascript gives them - crypto-currency mining included.

  • Again? (Score:5, Insightful)

    by 110010001000 ( 697113 ) on Monday October 30, 2017 @06:58PM (#55460609) Homepage Journal
    Slashdot keeps mentioning this. Are you considering adding this to the website? That would be cool!
    • And in an effort to speed up their computers the browser windows were closed. Companies across the globe reported a large increase in productivity in their workforce.

  • by ffkom ( 3519199 ) on Monday October 30, 2017 @06:58PM (#55460611)
    This might remind people how weird it is that they run software automatically downloaded from arbitrary foreign sources all the time on their personal computer.

    If people still knew how to write HTML, almost no web site would need to use any "JavaScript" or other "active content", with all the security issues this implies.
    • If people still knew how to write HTML, almost no web site would need to use any "JavaScript" or other "active content", with all the security issues this implies.

      I doubt enough browsers support the fancy animations that PHB's love so much: wiggly throbbing bouncy controls. They want the UI to behave like the breasts they get slapped for trying to touch.

      Eye-candy sells and the silly humans fall for it. Proverbial books continue to get judged by their covers. Good luck fixing human nature.

    • by tepples ( 727027 ) <tepples.gmail@com> on Monday October 30, 2017 @07:12PM (#55460673) Homepage Journal

      If people still knew how to write HTML, almost no web site would need to use any "JavaScript" or other "active content"

      How would, say, a web-based front-end to an IRC server work without script? It needs to know when messages have arrived in order to display them. The same is true of a multi-user whiteboard, which needs to know when another user has drawn a stroke. In addition, server-side image map doesn't support drag input, only click input.

      Or should those instead be native executables that a user can download, install, and use? If so, then because native executables are generally specific to one operating system, Murphy's law holds that such an application will inevitably be designed for an operating system other than the one your device regularly runs. And it's still "software [manually] downloaded from arbitrary foreign sources".

      Or should real-time interactive applications instead be written for the Java Virtual Machine or the .NET Common Language Runtime? Even though one such executable can run on multiple desktop operating systems, it still generally excludes iOS and Android, and it's stlil "software [manually] downloaded from arbitrary foreign sources".

      • by ffkom ( 3519199 )

        If people still knew how to write HTML, almost no web site would need to use any "JavaScript" or other "active content"

        How would, say, a web-based front-end to an IRC server work without script?

        There are plenty of native IRC clients available for basically every operating system. They waste less resources, and you can get them from sources that are probably much more trustworthy than some arbitrary web page.

        For example, if you need an IRC client for Android, you can get various, including source code, cryptographically signed by the repository maintainers, from https://f-droid.org/packages/#... [f-droid.org] for free.

        • by tepples ( 727027 )

          There are plenty of native IRC clients available for basically every operating system.

          For one thing, you generally need to be an administrator to install such a program, and if you're borrowing the use of a friend's or library's computer, you're likely to lack permission to permanently install software. In addition, the web-based IRC clones (such as Skype, Slack, and Discord) tend to integrate retrieval of older messages, images, attachments, and other things that the IRC protocol itself does not standardize.

          And which multi-user whiteboard protocol do the native multi-user whiteboard clients

        • https://f-droid.org/packages/#q=IRC

          You do know this link doesn't work if client-side script is turned off, correct? Without client-side script, the server cannot see the fragment identifier (the part after the #, in this case q=IRC), and the document behaves as if you had navigated to https://f-droid.org/packages/ itself.

          • by Pikoro ( 844299 )

            Not even remotely true so the parent post is spot on. That's a standard HTML tag called an anchor and can be linked directly to without any kind of scripting required.

            • by tepples ( 727027 )

              You are correct that the fragment identifier has two purposes: one to be read by JavaScript and the other as the "anchor" that you mention. But an anchor needs to exactly match the value of an element's the id attribute. When I retrieved the URL https://f-droid.org/packages/ [f-droid.org], the HTML document in the response did not contain an element whose id attribute has a value q=IRC.

              • by Pikoro ( 844299 )

                Then the page is wrong. Linking to an anchor that doesn't exist should put you at the top of the resulting page. Using JavaScript to "fix" something that isn't broken is stupid. JavaScript is NOT required in order to make that link work properly.

                Also, the element id attribute doesn't have to be set at all for an anchor to work. You set the name attribute on an anchor tag to work as the target for a link. This is all HTML 101.

                A <A NAME=serious>serious</A> crime is one which is associated

        • by Desty ( 2749557 )

          There are plenty of native IRC clients available for basically every operating system. They waste less resources, and you can get them from sources that are probably much more trustworthy than some arbitrary web page.

          Yes, and they also require the user to trust that the arbitrary code in their shiny native IRC client will be less harmful than the arbitrary *sandboxed* code, running in their web browser, with the ability to block known ad sites or restrict certain types of operation (like accessing the webcam or microphone, etc).

          The current model of running native programs is indeed more powerful, but far, far less safe than running stuff in your browser's controller JavaScript sandbox. That's not to say that a superi

      • What you're describing are fully featured web-hosted apps. Obviously, such things would need scripting to work.

        But why should I deign to allow a 3rd party ad to execute arbitrary script from an undisclosed and potentially malicious actor to run on my client machine, all without any oversight by the website I visit or permission from me?

        Surely there's a more intelligent middle-ground, rather than the free-for-all permissive model that simply hopes no one finds their way out of the sandbox, or figures out ho

        • by tepples ( 727027 )

          What you're describing are fully featured web-hosted apps.

          Many users of tech forums like Slashdot and SoylentNews have concluded that "fully featured web-hosted apps" ought never to have existed in the first place.

      • Use frames and meta refresh, done.

        • by tepples ( 727027 )

          The same is true of a multi-user whiteboard, which needs to know when another user has drawn a stroke. In addition, server-side image map doesn't support drag input, only click input.

          Use frames and meta refresh, done.

          That has three drawbacks:

          • Sending the entire image every time using "frames and meta refresh" is wasteful of bandwidth, particularly over satellite or cellular which tends to be fairly strictly metered.
          • Sending causes the screen to become blank for a moment between when the new document's HTML loads and when the current revision of the whiteboard image loads.
          • I don't see how combining image maps with meta refresh is going to let the user drag over an image to add a stroke to a multi-user whiteboard. The server
          • by Ash-Fox ( 726320 )

            Sending the entire image every time using "frames and meta refresh" is wasteful of bandwidth, particularly over satellite or cellular which tends to be fairly strictly metered.

            Sending causes the screen to become blank for a moment between when the new document's HTML loads and when the current revision of the whiteboard image loads.

            I was only thinking of using the meta refresh for the userlist. I thought it was obvious the chat frame would not terminate the HTTP connection (and include a meta refresh in cas

            • by tepples ( 727027 )

              I thought it was obvious the chat frame would not terminate the HTTP connection (and include a meta refresh in case it was terminated), just keep spending data as new messages come in.

              I wasn't aware that progressively loading an HTML document stlil worked. My experiments with trying to push chunked transfer encoding out of PHP, sending a flush() after each message, caused messages to appear to arrive at the browser in chunks of about a dozen messages at a time. It appeared as if some layer in the middle were heavily applying Nagle's algorithm, and I couldn't tell at the time whether it was HTTP compression, HTTPS encryption, or something else layered on top of it. And CDNs don't make it

              • by Ash-Fox ( 726320 )

                You make me feel dirty thinking about all the tricks and things I used to use. My initial post was more, "yeah, you can do it if you really want to".

                I wasn't aware that progressively loading an HTML document stlil worked.

                It does, my old chat stuff (built before web 2.0 is still functioning proper).

                My experiments with trying to push chunked transfer encoding out of PHP, sending a flush() after each message, caused messages to appear to arrive at the browser in chunks of about a dozen messages at a time.

                I cou

      • by DarkOx ( 621550 )

        This was done with cgi and meta tags with http-equiv="refresh" for years before browsers reliably supported JavaScript.

        I grant you not as a efficient, but people did it and it worked. Arguably it was much safer.

        • by tepples ( 727027 )

          This was done with cgi and meta tags with http-equiv="refresh" for years before browsers reliably supported JavaScript.

          Text chat was. A whiteboard wasn't.

      • If people still knew how to write HTML, almost no web site would need to use any "JavaScript" or other "active content", with all the security issues this implies.

        How would, say, a web-based front-end to an IRC server work without script?

        OMG PLS STAHP

        You are constantly (deliberately?) misinterpreting people's comments so that you can make some inane objection. "Almost no web site" is "a web-based front-end to an IRC server". Also, if you don't expect it to be a very good client, you can do it just with refreshes. Implement scrollback as a separate page from the display, put the display in an iframe and refresh it frequently. Done. So it's a terrible question anyway, and it wasn't worth asking ever.

        The basic objection here is that you should

        • by tepples ( 727027 )

          "Almost no web site" is "a web-based front-end to an IRC server".

          It may be "almost no web site" when counted as unique domains, but IRC clones such as Slack and Discord rack up the user hours a lot more quickly than the in-and-out visits to mostly textual sites that don't need script.

          Also, if you don't expect it to be a very good client, you can do it just with refreshes. Implement scrollback as a separate page from the display, put the display in an iframe and refresh it frequently. Done.

          This works for IRC, not a whiteboard.

          The basic objection here is that you should not need to run someone else's code on your computer just to view some static content.

          I understand that. My counter-objection is that a lot of popular content isn't static.

          I personally don't mind enabling scripts for a site that actually does some kind of whiz-bang interactive thing that I want to experience. I know what I'm getting into.

          I make this objection to people in order to know whether, when faced with an interactive web application, a particular user prefers to enable script (like you) or to do

      • How about not trying to cram any and all applications into a fucking browser? Not every problem is a nail, try to find a new tool, your hammer isn't going to cut it. Literally.

        • by tepples ( 727027 )

          What's the "new tool" for running a single application on Windows, macOS, GNU/Linux, iOS, and Android?

          • Show me ONE browser application that works well without any kind of readjustments on those systems and where adjusting it is less work than do a batch-compile for all of them.

            • by tepples ( 727027 )

              Publishing a native application for iOS requires a valid paid membership in the Apple Developer Program. Publishing a web application does not require a recurring payment to Apple. In fact, remote testing services allow some level of testing in Safari to be performed even without having to own a Mac, iPod touch, iPhone, or iPad.

      • by NearO ( 591410 )

        In my days we did this with a frameset. The big upper frame hat a meta refreshing chat buffer or nph. At the bottom was a second frame with the input bar. To the right you had a third frame, also meta refreshing, with the user list. Easy as pie. Just a bit laggy, but if you don't like it, use a proper IRC client.

        That aside, this is disingenuous. This kind of active application is not "most websites". Try browsing the web JS disabled. Loads of websites look completely broken for no good reason. They shouldn'

        • by tepples ( 727027 )

          Other replies to my comment describe how a web interface to text chat worked prior to AJAX. But how would that work with a whiteboard? As far as I can tell, someone without script can view a snapshot of a whiteboard every minute but can't add marks larger than a dot because an image map submits only on click, not on drag.

          • by NearO ( 591410 )

            As I said, obviously not everything is possible without JS, but that is not the point. The point is that JS is used without good reason on the majority of websites requiring it.

            That aside, you could draw lines and other shapes. It's not big deal, just really clumsy. The first click marks one corner of the shape to draw and puts a marker on the image, the second click sets the other corner and draws the shape. You can draw lines, boxes, whatever. You just won't see your shape until the second click.

    • Even here on Slashdot, not a week goes by that one of the Story URLs just displays a blank page or perhaps a Javascript warning (or simply a fragment of the mangled page content) because you absolutely, positively cannot view the page without it. This in turn is at best a sign of someone who is really crap at web design, mostly that they (or the editor they're using) don't comprehend CSS even slightly — but at least equally likely that they want to spy on you, use your computer to mine coins, or carry

    • If people still knew how to write HTML, almost no web site would need to use any "JavaScript" or other "active content", with all the security issues this implies.

      Did you just join us from 1996? Do you even know how the modern internet works?

  • How many cell phones would you need to commandeer, and for how long, in order to successfully mine a Bitcoin using JavaScript?

    It seems like trying to boil the ocean by stealing cigarette lighters...

    • by ffkom ( 3519199 )
      If stealing cigarette lighters could be automated, such that your effort to steal 500 millions of them is not higher than stealing 1, I would bet that some thieves would try this, if only for their personal entertainment.
    • Re: (Score:2, Informative)

      by Anonymous Coward

      How many cell phones would you need to commandeer, and for how long, in order to successfully mine a Bitcoin using JavaScript?

      Probably quite a few, which is the advantage of something like that. Pretty much the same as spam, on an individual basis it's probably not very lucrative or effective. But by the time you are getting a 1-2% rate on a vast number of things, it balances out.

      I'm utterly unsurprised people are harvesting CPU via javascript. And I'm utterly laughing because I whitelist javascript and

    • Millions, billions, does it matter?

      Same problem as with spam. One in a million clicks on the shit, but since the price to send is zero, if that millionth's idiot hands you 10 bucks, it's getting 10 bucks with zero effort.

  • by mugurel ( 1424497 ) on Monday October 30, 2017 @07:28PM (#55460753)
    Whether crypto-mining or not, some pages seem to use a disproportionate share of cpu time for the content they're delivering. Some form of cpu usage indicator per tab would be helpful, similar in vein to the speaker icon on tabs that produce sound.
    • by swb ( 14022 ) on Monday October 30, 2017 @09:02PM (#55461151)

      Even better would be adjustable settings for maximum individual CPU by a tab and maximum CPU allowable to all background tabs total, and some way to whitelist tabs so that sites I want to run full tilt in the background can. Somebody can write a plug in for more granular control if you want to go full Asperger's on the settings.

      I hate to say it, but it really is going to take Google just deciding to ration background tab CPU. Once they do that it will force web sites to either suck it up and not get real-time updates about the web page I'm not looking at or un-bloat their code.

      • by Trax3001BBS ( 2368736 ) on Monday October 30, 2017 @10:30PM (#55461461) Homepage Journal

        Even better would be adjustable settings for maximum individual CPU by a tab and maximum CPU allowable to all background tabs total, and some way to whitelist tabs so that sites I want to run full tilt in the background can. Somebody can write a plug in for more granular control if you want to go full Asperger's on the settings.

        My fans do this for me and I've notice a few websites that the fans start ramping up when visited. I then monitor the temps.

    • by antdude ( 79039 ) on Monday October 30, 2017 @10:24PM (#55461437) Homepage Journal

      Type "about:performance" in any recent Gecko web browsers (e.g., SeaMonkey and Firefox)'s URL form to show for a top type view. I would also like to see a tab version like its audio.

      • by sootman ( 158191 )

        lol. I went there and on the second or third poll it said "about:performance may currently be slowing down Firefox." :-/

        • by antdude ( 79039 )

          Yeah, I had those before. You must had a lot of stuff running at that time. Even uBlock Origin extension too! LinkedIn and other web sites are horrible! :(

    • No icon, just shade it a different color when it starts using the CPU intensively.
    • Fat chance. Remember how all the browsers riled against the status bar, saying people didn't need it?
    • Chrome [slashdot.org] reduces CPU usage of background tabs to 1% after 10 seconds..

  • and it's an i5-7500. Not only does it have plenty of headroom on processing but even if I'm running Burn in Test it doesn't get above 40 celcius on a CPU that could comfortably hit 70 for the next 20 years. The electricity cost is negligible too.

    I can't even get that worked up about this stuff on my cell phone. I don't generally browse on it for hours on end. Maybe if I used a tablet I'd care, but as it stands this is kind of a non-issue. What surprises me is the amount of white hot rage over it going a
    • Air conditioning (Score:4, Interesting)

      by tepples ( 727027 ) <tepples.gmail@com> on Monday October 30, 2017 @07:58PM (#55460885) Homepage Journal

      The electricity cost is negligible too.

      The price of electric power depends on where you live. And in a lot of places, people have to pay twice for electric power: once to run the computer and once to run the air conditioner that moves the heat generated by the computer to the outside.

      nevermind that [viewers] got their cut when they consumed the content on the site

      Why do people keep referring to viewing works created by others as "consuming" them? A work isn't "consumed", or used up, in the act of viewing it [gnu.org].

      • by Afty0r ( 263037 )
        > Why do people keep referring to viewing works created by others as "consuming" them? A work isn't "consumed", or used up, in the act of viewing it

        Probably because we speak English, and that's the colloquial and accepted term for using content.

        Language evolves, if you insist on living in the past, you only make yourself look stupid, not others.
        • by tepples ( 727027 )

          Probably because we speak English, and ["consuming" is] the colloquial and accepted term for using content.

          Before this "consuming" fad, the word was "viewing". What's wrong with "viewing"?

  • We live in some strange times, where thieves are trying to steal CPU cycles from our devices. Just wow, who would've ever thought this would ever be a thing?

    On another note, I think I might have stumbled across a site doing this and it's pretty annoying, browser goes very slow.

    • If this was a "real" currency, the mining would not be so effective. As more bitcoins were mined, the price of each would be proportionately reduced or there would be a corresponding inflation in prices. This is how things work when new gold is mined or new currency is loosed on the market (feds print more).

      Mining more will hurt the price to those who already have bitcoin. Since most of those users are in the darker side of the economy, with ties to criminal networks, this presents a solution to the probl

      • Mining more will hurt the price to those who already have bitcoin. Since most of those users are in the darker side of the economy, with ties to criminal networks, this presents a solution to the problem. Just have the mafia and drug lords hunt down these miners.

        While I definitely agree with you on this point, I don't believe Bitcoin itself is involved in this scheme. This scheme really wouldn't work too great for Bitcoin at this point, anyway. That ship sailed long ago, there's not a lot of Bitcoin left to 'mine.' To even have a chance of acquiring one of those remaining ones, I'm afraid even the power of millions of idle smartphones isn't going to help. You need a datacenter at this point. The mining-browser-hijack TFA referred to was Monero I believe.

        But wha

    • The idea is not really that new. CPU time has been worth money long before cryptocurrencies. I recall around the turn of the century, as projects like Seti@Home came up, there were also projects that would pay you for the CPU time. So the idea of stealing that commodity wasn't that far fetched, see Parasitic computing [wikipedia.org] for example. (Incidentally, I was just reading a book on networks/graphs by Barabasi, where this topic is also discussed.)
  • by CanadianMacFan ( 1900244 ) on Monday October 30, 2017 @07:51PM (#55460851)

    Does anyone remember the person that deleted the small JavaScript file and brought down so many big sites because they were loading it from his site instead of having a copy on their own site? I think it was to justify text. It was only a couple of lines.

    You need to find a function that is popular like that and is loaded from a central server. Once you have identified one then find a way to change it so that it gets the browsers to mine cryptocurrency. Probably don't want it to spike the CPU usage as it would give it away.

    • by Anonymous Coward on Monday October 30, 2017 @10:27PM (#55461451)

      > Does anyone remember the person that deleted the small JavaScript file and brought down so many big sites because they were loading it from his site instead of having a copy on their own site? I think it was to justify text. It was only a couple of lines.

      You're recalling the npm package called left-pad [theregister.co.uk] (alternate write-up here [qz.com]). The author was Azer Koçulu [github.com] (Slashdot might botch his Turkish surname, apologies for that).

      • Javascript is such a shitshow. How that crap language ever got used for more than aler() is beyond me.
  • by Anonymous Coward

    With all the garbage that most sites want to run on our CPU's to serve ads and do all sorts of tracking why is crypto currency mining any different? Every sinle page that you hit on the internet has TONS and TONS of javascript crap that wants to run. All of this nonsense wastes our CPU power for the benefit of the site we are using. Is it just the direct revenue that we are offended by all of a sudden? Tracking code profits them directly. Offloading tasks onto your machine that should be done on their

  • But honestly. I actually don't mind this model too much. Although I do believe that such apps and sites should try to be smart about it and attempt to back off if a borrowed CPU is being overloaded. While JavaScript doesn't have any easy ways to check CPU usage at the very least they could include a checkbox allowing for it to be disabled if users notice their computer slowing.
  • SETI galaxy gazing Search for Extraterrestrial Intelligence
    BITCOIN MINING navel-gazing search for Earthbound stupidity
    I remember when cryptography was fun and had a noble purpose

    Now even strong cryptography can be snake oil when it is being sold Enron-style by increasingly 'wealthy' middlemen as a replacement for money. Who knew?

: is not an identifier

Working...