Changes in WebAssembly Could Render Meltdown and Spectre Browser Patches Useless (bleepingcomputer.com)
Catalin Cimpanu, reporting for BleepingComputer: Upcoming additions to the WebAssembly standard may render useless some of the mitigations put up at the browser level against Meltdown and Spectre attacks, according to John Bergbom, a security researcher at Forcepoint. WebAssembly (WA or Wasm) is a new technology that shipped last year and is currently supported within all major browsers, such as Chrome, Edge, Firefox, and Safari.
The technology is a compact binary language that a browser will convert into machine code and run it directly on the CPU. Browser makers created WebAssembly to improve the speed of delivery and performance of JavaScript code, but as a side effect, they also created a way for developers to port code from other high-level languages (such as C, C++, and others) into Wasm, and then run it inside a browser. All in all, the WebAssembly standard is viewed as a success in the web dev community, and there've been praises for it all around.
The technology is a compact binary language that a browser will convert into machine code and run it directly on the CPU. Browser makers created WebAssembly to improve the speed of delivery and performance of JavaScript code, but as a side effect, they also created a way for developers to port code from other high-level languages (such as C, C++, and others) into Wasm, and then run it inside a browser. All in all, the WebAssembly standard is viewed as a success in the web dev community, and there've been praises for it all around.
Discuss.
The fact so many webdevs see active x, but harder to control as a success just proves the entire node.js loving lot of them have no fucking clue what they are doing and shouldn't be allowed near a computer.
"Lets download and run executable automatically from the net! What could go wrong?"
Idiots.
Why would anyone want this? If a website isn't going to trust javascript content enough to host it on it's own site, I don't even want to let it execute. I definitely don't need faster javascript. I need less of it. Probably 90% of the javascript websites try to push on me are from 3rd party ad firms. I'd like to see some legislation that makes a website responsible for any 3rd party ad, script, or anything else it loads during normal execution. That would likely result in fewer ad networks pushing viruses around the internet since there would actually be someone to hold responsible for it.
All in all, the WebAssembly standard is viewed as a success in the web dev community, and there've been praises for it all around.
And how about in the Web *user* community where the soon-to-be-compromised browsers will be running? As someone else said here, I want less Javascript not more - and certainly none with direct access to my hardware. So... anyway to disable WebAssembly in FF? (Asking for a friend)
It must have been something you assimilated. . . .
Since this detail was missing from the summary; Browsers have limited access to precise timers as a meltdown / spectre mitigation. Web assembly threads might give attackers a way to precisely measure time intervals by executing tight loops in another thread.
09F91102 no, 455FE104 nope, F190A1E8 uh-uh, 7A5F8A09 that's not it, C87294CE no. Ah! 452F6E403CDF10714E41DFAA257D313F.
Philosophers call it that: programmers call it "we checked the permissions after we loaded the cache".
The Multicians didn't make that mistake.
The WebAssembly guys are aware of this issue
https://github.com/WebAssembly...
and dont plan to actually support the new features until they have a solution.
1. WebAssembly is a compressed and simplified version of JavaScript. Anything you can do in WebAssembly, you can do in JavaScript. Seeing as Meltdown / Spectre take a lot of effort to exploit, if this attack is being deployed against you, it's reasonable to assume the attacker is perfectly willing to translate their code into JavaScript, which is already supported in your browser.
2. The devs are well aware of the issue and have said they're not going to reenable the feature that makes them vulnerable to timing attacks without making sure that the mitigations to Spectre / Meltdown are not going to be nullified by WebAssembly.
"Set a man a fire, he'll be warm for the rest of the night. Set a man afire, he'll be warm for the rest of his life."
Do not worry. This will be handled by the United States Cyber Sex Command.
What HTML is to E-Mail, JS is to browsers. Neither has been the same since, and a vector for all things bad.
But on the bright side it forces everyone to abandon dial-up, which BTW WAS a competitive industry unlike current broadband.
And javascript strikes again!
patch the patch already!
Slashdot, fix the reply notifications... You won't get away with it...
You're sure Poettering was *thinking* when he made systemd? Would you like to take this opportunity to revise that comment?
the real culprit here is the CPU. Let's not stop all progress (and webasm is progress) due to other components bugs. Of course mitigation has to be implemented (by the browser), but please let webasm follow its improvement path.
Slashdot, fix the reply notifications... You won't get away with it...
NoScript blocks javascript, but there are some sites (including this one) where at least some javascript must be enabled. If a site that requires javascript then chooses to process it through webassembly, and you have enabled javascript to see something, it will run the webassembly. If the site is compromised with an exploit that runs through it javascript to webassembly, well, you are (*&^&*().
NoScript is good. But it's not infallible. And if you are required to allow javascript to use a site, and set up NoScript accordingly, it doesn't help you. Other things like uBlock Origin and Privacy Badger may be needed to reduce the attack surface further, but in principle you can't avoid it entirely and still view web sites. So now what?
To access my bank account? My email? Social media?
Obviously not, given that I access them today without it. Wasm is a micro-optimization that becomes irrelevant with faster CPUs, more RAM, and better optimization of JavaScript. The gains are really linear in an area that has produced exponential improvement in the past.
I guess if you don't want everyone seeing your source code to the client side half of your website you might be interested in Wasm. I'm less than impressed by security-through-obscurity and copyright paranoia.
“Common sense is not so common.” — Voltaire
The whole idea behind WebAssembly was to make surfing the web insecure by downloading and executing code which is only shielded from the rest of the system by some magical concept called the sandbox.
Now since Rowhammer, Spectre, Meltdown and possible future problems, we should know that sandboxes don't work. Any form of turing complete code can be used as an attack vector. Even with a hypothetical perfect sandbox you can still abuse it for crypto-mining.
Iâ(TM)m sure there is a 6 year old with downs syndrome somewhere that found that funny. Maybe
Well thought out does not matter, well implemented without flaw DOES matter, and unless webassembly has some kind of mathematical proof , I don't want it enabled on my PC. All I want is : can Is witch it off... ?
C. Sagan : A demon haunted world:
http://www.amazon.com/gp/product/0345409469/
visit randi.org
there are some sites (including this one) where at least some javascript must be enabled
This site works perfectly well without JS. Reading and commenting (like this very post I am making) can be done without any scripts, even on the /..org domain.
Access to very accurate timers improves the efficiency of attacks but they are not the core of the attack and the attack still works with far less accurate timers. This has already been explained with proof of concept examples, see https://weblll.org/index.php/s... Attempts were made to have WebAssembly support mitigation techniques efficiently, but those in control appear to have had different plans and appear to be working towards using 32-bit indexing wasm in a large block of 64-bit address space to constrain attacks, but obviously that fails on 64-bit indexing wasm and is of no help in a 32-bit OS.
I would never think that link's developers would have such a vision, it's going to be the most secure browser out there given all the crap "standards" are implementing. All I want is to visit a bloody website and read the content. Wasm, JS, cookies... all that crap is not of interest for any user, but tools by the webmasters to monetize. Gosh just ask people to pay a fee or GTFO, but do not clutter the web...
The JIT takes intermediate code and compiled it to native code. By making it that the JIT canâ€(TM)t generate the harmful code, the problem goes away. This is and always was the flaw with JavaScript. Exploits found in any engine that can allow code to be transmitted and executed on a foreign system has always been a security problem. The expertise in compiler development doesnâ€(TM)t always mirror the knowledge required to consider the exploit paths. Therefore, itâ€(TM)s unlikely all possible means of blocking these attacks will be found until they are first exploited. Even today, many of the best compiler developers can tell you absolutely everything a SPARC or a MIPS would do, but only a small number of engineers could explain the pipeline prior to speculative bytecode recompilation on x64 CPUs.
The engineers developing compiler optimizations for a JIT very likely does not always have the knowledge required to identify paths maliciPIs hackers might exploit the compiled code.
Code signing is a means of mitigating native code exploits. Of course, we all know people are not quite ready for things like Windows S. Though the Mac world embraces this environment.
Microsoftâ€(TM)s efforts to move almost entirely to managed code is a great step in the right direction. As RyuJIT gets even better, it will become the default for everything.
Finally, virtual machines. To handle these issues in that environment may sound impossible, but if you absolutely must run VMs which in theory would allow almost random strangers to provision their own insecure VMs to hack other users VMs, then realize that VMware and everyone else has implemented dynamic recompilers (JITs) for processing hardware emulation for a long time. VMware for example intercepts code targeting I/O operations that are based on legacy x86 I/O by recompiling the code as trapping I/O calls has never been supported. This is how legacy VMs are able to identify virtual hard drive parameters through sequential calls to inb against a virtualized CMOS chip.
By extending the JIT to support binary oriented regular expressions to identify malicious strings of code during dynamic recompilation, an anti malware system could be built. The downside of course is that performance will take a beating. This is simply to be expected, virtualization was always a stupid idea for anyone using it as anything more than a transitioning platform.
WebAssembly... From the same place in hell where WebUSB spawned (and before that, ActiveX). Browser developers should not be relied on for security.
And no, Javascript is not slow. Moronic web-"developers" including 25 moronic frameworks to fill up the page with moronic animations and ads to prevent people from reading the actual content{1] is what makes Javascript slow.
[1] if any - the latest trend in web development is to have less information following each headline than in the headline itself.
That responsibility, lies with the hardware manufacturer itself for fixing and making the workaround for it, technically it's not even the OS that should be 'guarding' against it
The CPUs are faulty, plain, simple, and should now be regarded as trash.
In addition, now would be a good time to dump the steaming pile of polished shit called x86 and move to something without any legacy crud (not spectre related), but literally stop trying to polish that turd and use a properly designed and well thought out platform like arm v8 or heck, even itanium.
wasm IS Javascript. It's just Javascript written in a weird and special way to allow special optimizations to happen.
Stop spamming your ineffective security software.
See subject & read 'em & weep: Get over yer delusions of grandeur! Ya don't own me: I "PWN" U https://it.slashdot.org/comments.pl?sid=12270344&threshold=-1&commentsort=0&mode=thread&pid=56841844/ easily, chump... lol!
* Ah, this is (& I haven't said THIS in awhile but you're forcing me to) just "too, Too, TOO EASY - just '2ez' & it ALWAYS is vs. UNIDENTIFIABLE anonymous STALKER do-nothing "ne'er-do-well" wannabes & wastes of LIFE like you... hahahaha!
APK
P.S.=> Lastly - /.ers CLEARLY DISAGREE on the EFFICACY of my ware (& it's quality etc.) & where's YOURS they say THIS about https://it.slashdot.org/comments.pl?sid=12270344&cid=56841850/ - lol, it's NOT since you're a trolling STALKING LAZY waste of air JEALOUS "Lil' Jowie"... apk
We've had this discussion before but it takes a lot to exploit a speculative execution bug. These are unlikely to ever be used on a mass attack but rather only in targeted activities. If you're machines are high-value targets, you should (a) have the kernel mitigations enabled even if they have a performance degradation, (b) not be browsing random sites at all. Delivering a SPECTRE attack via JS and extracting something sound like a *fun* project, but it's unlikely to yield any valuable bounty against the average user. It makes no sense to discuss this in the context of wasm.
The idea of the Browser as the Desktop is a good one. While there's the obvious inefficiency of an added layer, it seems to be better than other ways of remote application serving. In theory.
The problem is that for peak efficeincy all of the past solutions have pierced the veil of the browser and drilled down close to the OS metal.
ActiveX, Flash, Java all are pretty much dead because they have proven that security can't be achieved ever. It's just a momentary state before someone discovers the next security hole.
Someone could say, well were smarter now so we'll design a model in which security is the first class citizen. Well call in WebASM.
Now we have proof that WebASM has a security hole.
The comeback argument is "hey, that's not a security hole in WebASM, it's a security hole in the processor that WebASM runs on." But if you think about it, that's true of every other security hole. Every other security hole, say java, generally got privledge escalation by using the OS to overwrite some critical config, or accessing files or memory that should not have been accessible had the OS been configured to keep it sandboxed.
So this proves that WebASM is just another log on the ActiveX, Flash, Java fire of failed acceleration technologies for remote application services.
I do note that the key problem does seem to come out of the "acceleration" part of it. While javascript and Html5 have their issues, it seems like most of those issues happen at the browser containment layer not at the OS/metal layer. Thus I speculate the security model has much more chance of working for these than the accelerated ones that bypass the browser layer.
But that's just the thing. All this "well this time we'll design it to be secure" always fails because no one, not me or not you, really can be sure of the things were saying. This is why I'm pointing to history rather than trying to prove it can't be done by some logical argument. I'm talking out my ass but at least I have history on my side.
My basic feeling on security is that until people actually start using the sandboxes the dtrace OS designers have built into OSX and Linux, that everything else is just bunch of fingers in the dike. I simply don't understand why these sandboxes see such little use. Once they are used then adding on more layers in the security model on top of that onion layer makes more sense to me.
Some drink at the fountain of knowledge. Others just gargle.
it is so certain that literally nothing could go wrong that i can't even
See subject & APK Hosts File Engine 2.0++ 64-bit for Linux h t t p : / / a p k . i t - m a t e . c o . u k / A P K H o s t s F i l e E n g i n e F o r L i n u x . z i p (remove spaces between characters & download).
Yields more security/speed/reliability/anonymity vs. any SINGLE solution (99% of threats = hostnames vs. IP address that most firewalls use) more efficiently/FASTER + NATIVELY 4 less!
(Vs. "Bolt on 'MoAr' illogic-logic" competitors slowing you, hosts speed you up 2 ways (adblocks + hardcodes u spend most time @) vs. competition loaded w/ bugs (DNS/AntiVir) + their overheads (messagepass ('souled-out' to advertiser addons) + filtering drivers) & their complexity leads to exploitation).
* ONLY 1 of its kind in GUI on Linux/BSD!
(Much better vs. Windows model in speed & efficiency + new "merge" feature)
APK
P.S.=> Next post subsequent are /. users' review of it on Windows... apk
Your software is just fine - well written, functional... I'm going to continue using the Host File Engine by mmell February 17, 2017
(APK's work), I've flat out said it's good by BronsCon February 11 2016
his hosts program is actually pretty good by xenotransplant August 10 2015
his hosts tool is actually useful for those cases in which one does indeed want to locally block stuff outright while consuming minimum system resources by alexgieg September 25 2015
I like your host file system by Karmashock September 09 2015
I do use APK's host file on all my systems at home by OrangeTide December 01 2017
I personally use a HOSTS file blocker produced from a genius called APK by 110010001000 October 27 2017
* See subject: Best part's the Linux 64-bit model's faster/more efficient (does 2x the work in 1/2 the time)
APK
P.S.=> Enjoy a faster/safer/more reliable internet... apk
Use uMatrix instead of NoScript. It's more fine-grained than NoScript. Or you can use NoScript in addition of uMatrix. In this case NoScript is not used as script blocker, but as additional security features (XSS prevention, etc).