<?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/"
	>

<channel>
	<title>Hacking-Gurus &#187; Server Security</title>
	<atom:link href="http://www.hacking-gurus.net/category/server-security/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.hacking-gurus.net</link>
	<description>Security Blog</description>
	<lastBuildDate>Mon, 26 Apr 2010 07:25:03 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=abc</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>blind sql injections</title>
		<link>http://www.hacking-gurus.net/2010/04/19/blind-sql-injections/</link>
		<comments>http://www.hacking-gurus.net/2010/04/19/blind-sql-injections/#comments</comments>
		<pubDate>Mon, 19 Apr 2010 20:47:20 +0000</pubDate>
		<dc:creator>r00t</dc:creator>
				<category><![CDATA[Database Security]]></category>
		<category><![CDATA[Server Security]]></category>
		<category><![CDATA[Tutorialz]]></category>
		<category><![CDATA[Amp]]></category>
		<category><![CDATA[Array]]></category>
		<category><![CDATA[database]]></category>
		<category><![CDATA[dork]]></category>
		<category><![CDATA[Download Rar]]></category>
		<category><![CDATA[Download Sql]]></category>
		<category><![CDATA[Download Tool]]></category>
		<category><![CDATA[Download Video]]></category>
		<category><![CDATA[Exec]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[hacking]]></category>
		<category><![CDATA[hacks]]></category>
		<category><![CDATA[injection]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[Pg]]></category>
		<category><![CDATA[sql]]></category>
		<category><![CDATA[Video Tool]]></category>

		<guid isPermaLink="false">http://www.hacking-gurus.net/?p=187</guid>
		<description><![CDATA[
		
		
		
		Google Dork:
inurl:&#8221;id=&#8221; &#38; intext:&#8221;Warning:  mysql_fetch_assoc()
inurl:&#8221;id=&#8221; &#38; intext:&#8221;Warning:  mysql_fetch_array()
inurl:&#8221;id=&#8221; &#38; intext:&#8221;Warning:  mysql_num_rows()
inurl:&#8221;id=&#8221; &#38; intext:&#8221;Warning: session_start()
inurl:&#8221;id=&#8221;  &#38; intext:&#8221;Warning: getimagesize()
inurl:&#8221;id=&#8221; &#38;  intext:&#8221;Warning: is_writable()
inurl:&#8221;id=&#8221; &#38; intext:&#8221;Warning:  getimagesize()
inurl:&#8221;id=&#8221; &#38; intext:&#8221;Warning: Unknown()
inurl:&#8221;id=&#8221;  &#38; intext:&#8221;Warning: session_start()
inurl:&#8221;id=&#8221; &#38;  intext:&#8221;Warning: mysql_result()
inurl:&#8221;id=&#8221; &#38; intext:&#8221;Warning:  pg_exec()
inurl:&#8221;id=&#8221; &#38; intext:&#8221;Warning: mysql_result()
inurl:&#8221;id=&#8221;  &#38; intext:&#8221;Warning: mysql_num_rows()
inurl:&#8221;id=&#8221; &#38;  intext:&#8221;Warning: mysql_query()
inurl:&#8221;id=&#8221; [...]]]></description>
			<content:encoded><![CDATA[<div style="float: right; width: 42px; padding-right: 10px; margin: 0 0 0 10px;">
		<script type="text/javascript">
		<!--
		digg_url = "http://www.hacking-gurus.net/2010/04/19/blind-sql-injections/";
		digg_bgcolor = "#FFFFFF";
		digg_skin = "";
		digg_window = "new";
		digg_title = "blind+sql+injections";
		digg_media = "news";
		digg_topic = "";
		digg_bodytext = "Google Dork:inurl:&#8221;id=&#8221; &amp; intext:&#8221;Warning:  mysql_fetch_assoc()inurl:&#8221;id=&#8221; &amp; intext:&#8221;Warning:  mysql_fetch_array()inurl:&#8221;id=&#8221; &amp; intext:&#8221;Warning:  mysql_num_rows()inurl:&#8221;id=&#8221; &amp; intext:&#8221;Warning: session_start()inurl:&#8221;id=&#8221;  &amp; intext:&#8221;Warning: getimagesize()inurl:&#8221;id=&#8221;...";
		//-->
		</script>
		<script src="http://digg.com/tools/diggthis.js" type="text/javascript"></script></div><p><strong>Google Dork:</strong><br />
inurl:&#8221;id=&#8221; &amp; intext:&#8221;Warning:  mysql_fetch_assoc()<br />
inurl:&#8221;id=&#8221; &amp; intext:&#8221;Warning:  mysql_fetch_array()<br />
inurl:&#8221;id=&#8221; &amp; intext:&#8221;Warning:  mysql_num_rows()<br />
inurl:&#8221;id=&#8221; &amp; intext:&#8221;Warning: session_start()<br />
inurl:&#8221;id=&#8221;  &amp; intext:&#8221;Warning: getimagesize()<br />
inurl:&#8221;id=&#8221; &amp;  intext:&#8221;Warning: is_writable()<br />
inurl:&#8221;id=&#8221; &amp; intext:&#8221;Warning:  getimagesize()<br />
inurl:&#8221;id=&#8221; &amp; intext:&#8221;Warning: Unknown()<br />
inurl:&#8221;id=&#8221;  &amp; intext:&#8221;Warning: session_start()<br />
inurl:&#8221;id=&#8221; &amp;  intext:&#8221;Warning: mysql_result()<br />
inurl:&#8221;id=&#8221; &amp; intext:&#8221;Warning:  pg_exec()<br />
inurl:&#8221;id=&#8221; &amp; intext:&#8221;Warning: mysql_result()<br />
inurl:&#8221;id=&#8221;  &amp; intext:&#8221;Warning: mysql_num_rows()<br />
inurl:&#8221;id=&#8221; &amp;  intext:&#8221;Warning: mysql_query()<br />
inurl:&#8221;id=&#8221; &amp; intext:&#8221;Warning:  array_merge()<br />
inurl:&#8221;id=&#8221; &amp; intext:&#8221;Warning: preg_match()<br />
inurl:&#8221;id=&#8221;  &amp; intext:&#8221;Warning: ilesize()<br />
inurl:&#8221;id=&#8221; &amp; intext:&#8221;Warning:  filesize()<br />
inurl:&#8221;id=&#8221; &amp; intext:&#8221;Warning: require()</p>
<p><span id="more-187"></span></p>
<p>Thanks:Prens<br />
Download:  Video + tool<br />
blind_sql.rar<br />
http://rapidshare.com/files/312860013/blind_sql.rar</p>
<img src="http://www.hacking-gurus.net/wp-content/plugins/pixelstats/trackingpixel.php?post_id=187&ts=1280468835" style="display:none;" alt="pixelstats trackingpixel"/>]]></content:encoded>
			<wfw:commentRss>http://www.hacking-gurus.net/2010/04/19/blind-sql-injections/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Your Password Will Never Get Stolen With the Safelock Keyboard [Microsoft]</title>
		<link>http://www.hacking-gurus.net/2009/10/09/your-password-will-never-get-stolen-with-the-safelock-keyboard-microsoft/</link>
		<comments>http://www.hacking-gurus.net/2009/10/09/your-password-will-never-get-stolen-with-the-safelock-keyboard-microsoft/#comments</comments>
		<pubDate>Fri, 09 Oct 2009 08:02:49 +0000</pubDate>
		<dc:creator>r00t</dc:creator>
				<category><![CDATA[Server Security]]></category>
		<category><![CDATA[Tutorialz]]></category>
		<category><![CDATA[microsoft]]></category>
		<category><![CDATA[Pressure Sensitive]]></category>
		<category><![CDATA[Probes]]></category>
		<category><![CDATA[Sensitive Keyboard]]></category>

		<guid isPermaLink="false">http://www.hacking-gurus.net/?p=172</guid>
		<description><![CDATA[
		
		
		
		

What can you do with a pressure-sensitive keyboard? That&#8217;s what Microsoft asked 40 teams. SafeLock&#8217;s one answer: It doesn&#8217;t just know your password, but how you type it, biometrically authenticating you without creepier probes.
]]></description>
			<content:encoded><![CDATA[<div style="float: right; width: 42px; padding-right: 10px; margin: 0 0 0 10px;">
		<script type="text/javascript">
		<!--
		digg_url = "http://www.hacking-gurus.net/2009/10/09/your-password-will-never-get-stolen-with-the-safelock-keyboard-microsoft/";
		digg_bgcolor = "#FFFFFF";
		digg_skin = "";
		digg_window = "new";
		digg_title = "Your+Password+Will+Never+Get+Stolen+With+the+Safelock+Keyboard+%5BMicrosoft%5D";
		digg_media = "news";
		digg_topic = "";
		digg_bodytext = "What can you do with a pressure-sensitive keyboard? That&#8217;s what Microsoft asked 40 teams. SafeLock&#8217;s one answer: It doesn&#8217;t just know your password, but how you type it, biometrically authenticating you without creepier probes.";
		//-->
		</script>
		<script src="http://digg.com/tools/diggthis.js" type="text/javascript"></script></div><p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="425" height="344" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowScriptAccess" value="always" /><param name="src" value="http://www.youtube.com/v/_vMb9JUhC1g&amp;color1=0xb1b1b1&amp;color2=0xcfcfcf&amp;hl=en&amp;feature=player_embedded&amp;fs=1" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="425" height="344" src="http://www.youtube.com/v/_vMb9JUhC1g&amp;color1=0xb1b1b1&amp;color2=0xcfcfcf&amp;hl=en&amp;feature=player_embedded&amp;fs=1" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<p><span id="more-172"></span></p>
<p>What can you do with a <a class="autolink" title="Click here to read more posts tagged PRESSURE-SENSITIVE KEYBOARD" href="http://gizmodo.com/tag/pressure_sensitive-keyboard/">pressure-sensitive keyboard</a>? That&#8217;s what Microsoft asked 40 teams. SafeLock&#8217;s one answer: It doesn&#8217;t just know your password, but <em>how you type it</em>, biometrically authenticating you without creepier probes.</p>
<img src="http://www.hacking-gurus.net/wp-content/plugins/pixelstats/trackingpixel.php?post_id=172&ts=1280468835" style="display:none;" alt="pixelstats trackingpixel"/>]]></content:encoded>
			<wfw:commentRss>http://www.hacking-gurus.net/2009/10/09/your-password-will-never-get-stolen-with-the-safelock-keyboard-microsoft/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Computer Network Denial Of Service Denial</title>
		<link>http://www.hacking-gurus.net/2009/10/01/computer-network-denial-of-service-denial/</link>
		<comments>http://www.hacking-gurus.net/2009/10/01/computer-network-denial-of-service-denial/#comments</comments>
		<pubDate>Thu, 01 Oct 2009 05:58:58 +0000</pubDate>
		<dc:creator>r00t</dc:creator>
				<category><![CDATA[Database Security]]></category>
		<category><![CDATA[Network Security]]></category>
		<category><![CDATA[Server Security]]></category>
		<category><![CDATA[Tutorialz]]></category>
		<category><![CDATA[Website Security]]></category>
		<category><![CDATA[Wireless Security]]></category>
		<category><![CDATA[Attack Software]]></category>
		<category><![CDATA[Authentication Servers]]></category>
		<category><![CDATA[Computer Engineers]]></category>
		<category><![CDATA[David Irwin]]></category>
		<category><![CDATA[Ddos Attack]]></category>
		<category><![CDATA[Ddos Attacks]]></category>
		<category><![CDATA[Denial Of Service]]></category>
		<category><![CDATA[Denial Of Service Dos]]></category>
		<category><![CDATA[Internet Requests]]></category>
		<category><![CDATA[John Wu]]></category>
		<category><![CDATA[Legitimate Traffic]]></category>
		<category><![CDATA[Legitimate Users]]></category>
		<category><![CDATA[Malicious Purposes]]></category>
		<category><![CDATA[Network Denial]]></category>
		<category><![CDATA[Private Resources]]></category>
		<category><![CDATA[Service Denial]]></category>
		<category><![CDATA[Target Machine]]></category>
		<category><![CDATA[Tong Liu]]></category>
		<category><![CDATA[Valid Passwords]]></category>
		<category><![CDATA[Virtual Private Networks]]></category>

		<guid isPermaLink="false">http://www.hacking-gurus.net/?p=166</guid>
		<description><![CDATA[
		
		
		
		Denial of Service (DoS) and distributed Denial of Service (DDoS) attacks involve an attempt to make a computer resource unavailable to its intended users. This may simply be for malicious purposes as is often the case when big commercial or famous web sites undergo a DDoS attack. However, it is also possible to exploit the [...]]]></description>
			<content:encoded><![CDATA[<div style="float: right; width: 42px; padding-right: 10px; margin: 0 0 0 10px;">
		<script type="text/javascript">
		<!--
		digg_url = "http://www.hacking-gurus.net/2009/10/01/computer-network-denial-of-service-denial/";
		digg_bgcolor = "#FFFFFF";
		digg_skin = "";
		digg_window = "new";
		digg_title = "Computer+Network+Denial+Of+Service+Denial";
		digg_media = "news";
		digg_topic = "";
		digg_bodytext = "Denial of Service (DoS) and distributed Denial of Service (DDoS) attacks involve an attempt to make a computer resource unavailable to its intended users. This may simply be for malicious purposes as is often the case when big commercial or famous web sites undergo a DDoS attack. However, it is also possible to exploit the system&#8217;s response to...";
		//-->
		</script>
		<script src="http://digg.com/tools/diggthis.js" type="text/javascript"></script></div><p>Denial of Service (DoS) and distributed Denial of Service (DDoS) attacks involve an attempt to make a computer resource unavailable to its intended users. This may simply be for malicious purposes as is often the case when big commercial or famous web sites undergo a DDoS attack. However, it is also possible to exploit the system&#8217;s response to such an attack to break system firewalls, access virtual private networks, and to access other private resources. A DoS attack can also be used to affect a complete network or even a whole section of the Internet.</p>
<p><span id="more-166"></span></p>
<p>Commonly, attack involves simply saturating the target machine with external internet requests. In the case of a DDoS attack the perpetrator recruits other unwitting computers into a network and uses a multitude of machines to mount the attack. The result is that the resource, whether it is a website, an email server, or a database, cannot respond to legitimate traffic in a timely manner and so essentially becomes unavailable to users.</p>
<p>Methods for configuring a network to filter out known DoS attack software and to recognize some of the traffic patterns associated with a mounting DoS attack are available. However, current filters usually rely on the computer being attacked to check whether or not incoming information requests are legitimate or not. This consumes its resources and in the case of a massive DDoS can compound the problem.</p>
<p>Now, computer engineers John Wu, Tong Liu, Andy Huang, and David Irwin of Auburn University have devised a filter to protect systems against DoS attacks that circumvents this problem by developing a new passive protocol that must be in place at each end of the connection: user and resource.</p>
<p>Their protocol &#8211; Identity-Based Privacy-Protected Access Control Filter (IPACF) &#8211; blocks threats to the gatekeeping computers, the Authentication Servers (AS), and so allows legitimate users with valid passwords to access private resources.</p>
<p>The user&#8217;s computer has to present a filter value for the server to do a quick check. The filter value is a one-time secret that needs to be presented with the pseudo ID. The pseudo ID is also one-time use. Attackers cannot forge either of these values correctly and so attack packets are filtered out.</p>
<p>One potential drawback of the added layer of information transfer required for checking user requests is that it could add to the resources needed by the server. However, the researchers have tested how well IPACF copes in the face of a massive DDoS attacks simulated on a network consisting of 1000 nodes with 10 gigabits per second bandwidth. They found that the server suffers little degradation, negligible added information transfer delay (latency) and minimal extra processor usage even when the 10 Gbps pipe to the authentication server is filled with DoS packets. Indeed, the IPACF takes just 6 nanoseconds to reject a non-legitimate information packet associated with the DoS attack.</p>
<img src="http://www.hacking-gurus.net/wp-content/plugins/pixelstats/trackingpixel.php?post_id=166&ts=1280468835" style="display:none;" alt="pixelstats trackingpixel"/>]]></content:encoded>
			<wfw:commentRss>http://www.hacking-gurus.net/2009/10/01/computer-network-denial-of-service-denial/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Top 10 Web Application security vulnerabilities</title>
		<link>http://www.hacking-gurus.net/2009/09/30/the-top-10-web-application-security-vulnerabilities/</link>
		<comments>http://www.hacking-gurus.net/2009/09/30/the-top-10-web-application-security-vulnerabilities/#comments</comments>
		<pubDate>Wed, 30 Sep 2009 05:24:02 +0000</pubDate>
		<dc:creator>r00t</dc:creator>
				<category><![CDATA[Server Security]]></category>
		<category><![CDATA[Tutorialz]]></category>
		<category><![CDATA[Website Security]]></category>
		<category><![CDATA[Common Security]]></category>
		<category><![CDATA[Critical Web]]></category>
		<category><![CDATA[Cyber Security]]></category>
		<category><![CDATA[Example Web]]></category>
		<category><![CDATA[Html Page]]></category>
		<category><![CDATA[Input Data]]></category>
		<category><![CDATA[Open Web]]></category>
		<category><![CDATA[Owasp]]></category>
		<category><![CDATA[Proper Html]]></category>
		<category><![CDATA[Query Parameters]]></category>
		<category><![CDATA[Security Problems]]></category>
		<category><![CDATA[Security Project]]></category>
		<category><![CDATA[Security Vulnerabilities]]></category>
		<category><![CDATA[Swingset]]></category>
		<category><![CDATA[Top Ten Security]]></category>
		<category><![CDATA[Web Application Security]]></category>
		<category><![CDATA[Web Applications]]></category>
		<category><![CDATA[Webgoat]]></category>
		<category><![CDATA[Writeln]]></category>
		<category><![CDATA[xss]]></category>

		<guid isPermaLink="false">http://www.hacking-gurus.net/?p=164</guid>
		<description><![CDATA[
		
		
		
		The Top 10 Web Application security vulnerabilities


This and the next series of blog entries will highlight the Top 10 most critical web application security vulnerabilities identified by the Open Web Application Security Project (OWASP).
You can use OWASP&#8217;s WebGoat to learn more about the OWASP Top Ten security vulnerabilties. WebGoat is an example web application, which has lessons showing [...]]]></description>
			<content:encoded><![CDATA[<div style="float: right; width: 42px; padding-right: 10px; margin: 0 0 0 10px;">
		<script type="text/javascript">
		<!--
		digg_url = "http://www.hacking-gurus.net/2009/09/30/the-top-10-web-application-security-vulnerabilities/";
		digg_bgcolor = "#FFFFFF";
		digg_skin = "";
		digg_window = "new";
		digg_title = "The+Top+10+Web+Application+security+vulnerabilities";
		digg_media = "news";
		digg_topic = "";
		digg_bodytext = "The Top 10 Web Application security vulnerabilitiesThis and the next series of blog entries will highlight the Top 10 most critical web application security vulnerabilities identified by the Open Web Application Security Project (OWASP).You can use OWASP&#8217;s WebGoat to learn more about the OWASP Top Ten security vulnerabilties. WebGoat is an...";
		//-->
		</script>
		<script src="http://digg.com/tools/diggthis.js" type="text/javascript"></script></div><p><span style="font-family: arial, sans-serif; line-height: normal; border-collapse: collapse;">The Top 10 Web Application security vulnerabilities<br />
<span id="more-164"></span></p>
<h1></h1>
<p>This and the next series of blog entries will highlight the <a style="color: #2244bb;" href="http://www.owasp.org/index.php/Category:OWASP_Top_Ten_Project" target="_blank">Top 10 most critical web application security vulnerabilities</a> identified by the <a style="color: #2244bb;" href="http://www.owasp.org/index.php/Main_Page" target="_blank">Open Web Application Security Project (OWASP)</a>.</p>
<p>You can use OWASP&#8217;s <a style="color: #2244bb;" href="http://www.owasp.org/index.php/Category:OWASP_WebGoat_Project" target="_blank">WebGoat</a> to learn more about the OWASP Top Ten security vulnerabilties. WebGoat is an example web application, which has lessons showing &#8220;what not to do code&#8221;, how to exploit the code, and corrected code for each vulnerability.</p>
<p><img style="width: 300px; height: 252px;" src="http://blogs.sun.com/carolmcdonald/resource/300px-WebGoat-Phishing-XSS-Lesson.JPG" alt="" /></p>
<p>You can use the <a style="color: #2244bb;" href="http://www.owasp.org/index.php/Category:OWASP_Enterprise_Security_API" target="_blank">OWASP Enterprise Security API </a>Toolkit to protect against the OWASP Top Ten security vulnerabilties.</p>
<p><img style="width: 550px; height: 314px;" src="http://blogs.sun.com/carolmcdonald/resource/550px-Esapi-before-after.JPG" alt="" /></p>
<p><a style="color: #2244bb;" href="http://www.owasp.org/index.php/ESAPI_Swingset" target="_blank">The ESAPI Swingset </a>is a web application which demonstrates the many uses of the Enterprise Security API.</p>
<p><img style="width: 352px; height: 325px;" src="http://blogs.sun.com/carolmcdonald/resource/swingset.jpg" alt="" /></p>
<h2>OWASP Top 10 number 1: XSS = Cross Site Scripting</h2>
<p>Cross Site Scripting (XSS) is one of the most common security problems in today&#8217;s web applications. According to the <a style="color: #2244bb;" href="http://www.sans.org/top-cyber-security-risks/" target="_blank">SANS Top Cyber Security Risks</a>, 60% of the total attack attempts observed on the Internet are against Web applications and SQL injection and Cross-Site Scripting account for more than 80% of the vulnerabilities being discovered. You are at risk of an XSS attack any time you put content that could contain scripts from someone un-trusted into your web pages.<br />
There are 3 types of cross site scripting:</p>
<ul>
<li><span style="font-weight: bold;">Reflected XSS: </span>is when an html page reflects user input data, e.g. from HTTP query parameters or a HTML form, back to the browser, without properly sanitizing the response. Below is an example of this in a servlet:</li>
</ul>
<p></span></p>
<table border="0" cellspacing="0" cellpadding="10" width="100%">
<tbody>
<tr>
<td>
<pre style="font-size: 11px;"> out.writeln(“You searched for: “+request.getParameter(“query”);</pre>
</td>
</tr>
</tbody>
</table>
<p><span style="font-family: arial, sans-serif; line-height: normal; border-collapse: collapse;"></p>
<ul>
<li></li>
<li><span style="font-weight: bold;">Stored XSS:</span> is when an Attacker’s input script is stored on the server (eg a database) and later displayed in the web server html pages, without proper HTML filtering. Examples of this are in blogs, or forums where users can input data that will be displayed to others. Below is an example of this in a servlet data is retrieved from the database and returned in the HTML page without any validation:</li>
</ul>
<p></span></p>
<table border="0" cellspacing="0" cellpadding="10" width="100%">
<tbody>
<tr>
<td>
<pre style="font-size: 11px;">out.writeln("&lt;tr&gt;&lt;td&gt;" + guest.name + "&lt;td&gt;" + guest.comment);</pre>
</td>
</tr>
</tbody>
</table>
<p><span style="font-family: arial, sans-serif; line-height: normal; border-collapse: collapse;"></p>
<ul>
<li></li>
<li><span style="font-weight: bold;">DOM XSS</span>: is when JavaScript uses input data or data from the server to write dynamic HTML (DOM) elements, again without HTML sanitizing/escaping/filtering.</li>
</ul>
<p>XSS can be used to:</p>
<ul>
<li>deface web pages</li>
<li>hijack user sessions</li>
<li>conduct phishing attacks</li>
<li>execute malicious code in the context of the user&#8217;s session</li>
<li>spread malware</li>
</ul>
<h3>Protecting against XSS</h3>
<p>To protect against XSS all the parameters in the application should be validated and/or encoded before being output in HTML pages.</p>
<ul>
<li>Always validate on the server side for data integrity and security:
<ul>
<li>Validate all input data to the application:</li>
<li>Validate for type, format, length, range, and context before storing or displaying</li>
<li>Use white-listing (what is allowed), reject if invalid, instead of filtering out black-list (what is not allowed)</li>
</ul>
</li>
<li>Output encoding:
<ul>
<li>Explicitly set character encoding for all web pages (ISO-8859-1 or UTF 8):<br />
<span style="font-family: monospace;">&lt;%@ page contentType=&#8221;text/html;charset=ISO-8859-1&#8243; language=&#8221;java&#8221; %&gt;</span></li>
<li>all user supplied data should be HTML or XML entity encoded before rendering</li>
</ul>
</li>
</ul>
<h3>Java specific Protecting against XSS</h3>
<h4>Validating Input with Java</h4>
<ul>
<li>You can use Java regular expressions to validate input, this example from WebGoat allows whitespace, a-zA-Z_0-9, and the characters &#8211; and ,</li>
</ul>
<p></span></p>
<table border="0" cellspacing="0" cellpadding="10" width="100%">
<tbody>
<tr>
<td>
<pre style="font-size: 11px;">
String regex = "[\s\w-,]*";
Pattern pattern = Pattern.compile(regex);
validate(stringToValidate, pattern);</pre>
</td>
</tr>
</tbody>
</table>
<p><span style="font-family: arial, sans-serif; line-height: normal; border-collapse: collapse;"></p>
<ul>
<li></li>
<li>Use Framework (Struts, JSF, Spring&#8230;) validators. With Java EE 6 you can use the Bean Validation Framework to centrally define validation constraints on model objects and with JSF 2.0 to extend model validation to the UI. For example here is a JSF 2.0 input field:</li>
</ul>
<p></span></p>
<table border="0" cellspacing="0" cellpadding="10" width="100%">
<tbody>
<tr>
<td>
<pre style="font-size: 11px;">&lt;h:inputText id="creditCard" value="#{booking.creditCardNumber}"/&gt;</pre>
</td>
</tr>
</tbody>
</table>
<p><span style="font-family: arial, sans-serif; line-height: normal; border-collapse: collapse;"></p>
<ul>
<li><span style="font-weight: bold;"> </span>Here is the JSF 2.0 booking Managed Bean using the Bean Validation Framework :</li>
</ul>
<p></span></p>
<table border="0" cellspacing="0" cellpadding="10" width="100%">
<tbody>
<tr>
<td>
<pre style="font-size: 11px;">@ManagedBean
public class Booking {
 ...
 @NotNull(message = "Credit card number is required")
 @Size(min = 16, max = 16,
 message = "Credit card number must 16 digits long")
 @Pattern(regexp = "^\d*$",
 message = "Credit card number must be numeric")
 public String getCreditCardNumber() {
 return creditCardNumber;
 }
}</pre>
</td>
</tr>
</tbody>
</table>
<p><span style="font-family: arial, sans-serif; line-height: normal; border-collapse: collapse;"></p>
<ul>
<li>In addition there are new JSF 2.0 Validators:
<ul>
<li><a style="color: #2244bb;" href="https://javaserverfaces.dev.java.net/nonav/docs/2.0/pdldocs/facelets/f/validateBean.html" target="_blank">&lt;f:validateBean&gt;</a> is a validator that delegates the validation of the local value to the Bean Validation API.</li>
<li>&lt;f:validateRequired&gt; provides required field validation.</li>
<li><a style="color: #2244bb;" href="https://javaserverfaces.dev.java.net/nonav/docs/2.0/pdldocs/facelets/f/validateRegex.html" target="_blank">&lt;f:validateRegexp&gt;</a> provides regular expression-based validation</li>
</ul>
</li>
<li>Use the <a style="color: #2244bb;" href="http://www.owasp.org/index.php/Category:OWASP_Enterprise_Security_API" target="_blank">OWASP Enterprise Security API</a> Java Toolkit&#8217;s Validator interface:</li>
</ul>
<p></span></p>
<table border="0" cellspacing="0" cellpadding="10" width="100%">
<tbody>
<tr>
<td>
<pre style="font-size: 11px;">ESAPI.validator().getValidInput(String context,String input,String type,int maxLength,
   boolean allowNull,ValidationErrorList errorList)</pre>
</td>
</tr>
</tbody>
</table>
<p><span style="font-family: arial, sans-serif; line-height: normal; border-collapse: collapse;"></p>
<ul>
<li><span style="font-family: monospace;">ESAPI.validator().getValidInput() </span>returns canonicalized and validated input as a String. Invalid input will generate a descriptive ValidationErrorList, and input that is clearly an attack will generate a descriptive IntrusionException.</li>
</ul>
<h4>Output Encoding with Java</h4>
<ul>
<li>You can use Struts output mechanisms such as <span style="font-family: monospace;">&lt;bean:write… &gt;, </span>or use the default JSTL<span style="font-family: monospace;">escapeXML=&#8221;true&#8221;</span> attribute in <span style="font-family: monospace;">&lt;c:out … &gt; </span></li>
<li>You can use the <a style="color: #2244bb;" href="http://www.owasp.org/index.php/Category:OWASP_Enterprise_Security_API" target="_blank">OWASP Enterprise Security API</a> Java Toolkit&#8217;s <span style="font-family: monospace;">ESAPI Encoder.encodeForHTML()</span>method to encode data for use in HTML content. The encodeForHTML() method uses a &#8220;whitelist&#8221; HTML entity encoding algorithm to ensure that encoded data can not be interpreted as script. This call should be used to wrap any user input being rendered in HTML element content. For example:</li>
</ul>
<p></span></p>
<table border="0" cellspacing="0" cellpadding="10" width="100%">
<tbody>
<tr>
<td><span style="font-family: monospace;">&lt;p&gt;Hello, &lt;%=ESAPI.encoder().encodeForHTML(name)%&gt;&lt;/p&gt;</span></td>
</tr>
</tbody>
</table>
<img src="http://www.hacking-gurus.net/wp-content/plugins/pixelstats/trackingpixel.php?post_id=164&ts=1280468835" style="display:none;" alt="pixelstats trackingpixel"/>]]></content:encoded>
			<wfw:commentRss>http://www.hacking-gurus.net/2009/09/30/the-top-10-web-application-security-vulnerabilities/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Quick comparison of MyISAM, Infobright, and MonetDB (mysql)</title>
		<link>http://www.hacking-gurus.net/2009/09/30/quick-comparison-of-myisam-infobright-and-monetdb-mysql/</link>
		<comments>http://www.hacking-gurus.net/2009/09/30/quick-comparison-of-myisam-infobright-and-monetdb-mysql/#comments</comments>
		<pubDate>Wed, 30 Sep 2009 04:39:44 +0000</pubDate>
		<dc:creator>r00t</dc:creator>
				<category><![CDATA[Database Security]]></category>
		<category><![CDATA[Tutorialz]]></category>
		<category><![CDATA[1 Million]]></category>
		<category><![CDATA[Amazon Server]]></category>
		<category><![CDATA[Architecture]]></category>
		<category><![CDATA[Benchmark]]></category>
		<category><![CDATA[Columns]]></category>
		<category><![CDATA[Databases]]></category>
		<category><![CDATA[Deb]]></category>
		<category><![CDATA[Enough Memory]]></category>
		<category><![CDATA[Graph]]></category>
		<category><![CDATA[Loaded]]></category>
		<category><![CDATA[Monet]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[Mysqldump]]></category>
		<category><![CDATA[Open Source Community]]></category>
		<category><![CDATA[Oriented Database]]></category>
		<category><![CDATA[Random Numbers]]></category>
		<category><![CDATA[Sql Statements]]></category>
		<category><![CDATA[Sums]]></category>
		<category><![CDATA[Tuning Box]]></category>
		<category><![CDATA[Types Of Queries]]></category>

		<guid isPermaLink="false">http://www.hacking-gurus.net/?p=162</guid>
		<description><![CDATA[
		
		
		
		Recently I was doing a little work for a client who has MyISAM tables with many columns (the same one Peter wrote about recently). The client&#8217;s performance is suffering in part because of the number of columns, which is over 200. The queries are generally pretty simple (sums of columns), but they&#8217;re ad-hoc (can access any [...]]]></description>
			<content:encoded><![CDATA[<div style="float: right; width: 42px; padding-right: 10px; margin: 0 0 0 10px;">
		<script type="text/javascript">
		<!--
		digg_url = "http://www.hacking-gurus.net/2009/09/30/quick-comparison-of-myisam-infobright-and-monetdb-mysql/";
		digg_bgcolor = "#FFFFFF";
		digg_skin = "";
		digg_window = "new";
		digg_title = "Quick+comparison+of+MyISAM%2C+Infobright%2C+and+MonetDB+%28mysql%29";
		digg_media = "news";
		digg_topic = "";
		digg_bodytext = "Recently I was doing a little work for a client who has MyISAM tables with many columns (the same one Peter wrote about recently). The client&#8217;s performance is suffering in part because of the number of columns, which is over 200. The queries are generally pretty simple (sums of columns), but they&#8217;re ad-hoc (can access any columns) and it...";
		//-->
		</script>
		<script src="http://digg.com/tools/diggthis.js" type="text/javascript"></script></div><p><span style="font-family: arial, sans-serif; line-height: normal; border-collapse: collapse;">Recently I was doing a little work for a client who has MyISAM tables with many columns (the same one <a style="color: #2244bb;" href="http://www.mysqlperformanceblog.com/2009/09/28/how-number-of-columns-affects-performance/" target="_blank">Peter wrote about recently</a>). The client&#8217;s performance is suffering in part because of the number of columns, which is over 200. The queries are generally pretty simple (sums of columns), but they&#8217;re ad-hoc (can access any columns) and it seems tailor-made for a column-oriented database.</p>
<p><span id="more-162"></span></p>
<p>I decided it was time to actually give <a style="color: #2244bb;" href="http://www.infobright.org/" target="_blank">Infobright</a> a try. They have an open-source community edition, which is crippled but not enough to matter for this test. The &#8220;Knowledge Grid&#8221; architecture seems ideal for the types of queries the client runs. But hey, why not also try <a style="color: #2244bb;" href="http://monetdb.cwi.nl/" target="_blank">MonetDB</a>, another open-source column-oriented database I&#8217;ve been meaning to take a look at?</p>
<p>What follows is not a realistic benchmark, it&#8217;s not scientific, it&#8217;s just some quick and dirty tinkering. I threw up an Ubuntu 9.04 small server on Amazon. (I used this version because there&#8217;s a .deb of MonetDB for it). I created a table with 200 integer columns and loaded it with random numbers between 0 and 10000. Initially I wanted to try with 4 million rows, but I had trouble with MonetDB &#8212; there was not enough memory for this. I didn&#8217;t do anything fancy with the Amazon server &#8212; I didn&#8217;t fill up the /mnt disk to claim the bits, for example. I used default tuning, out of the box, for all three databases.</p>
<p>The first thing I tried doing was loading the data with SQL statements. I wanted to see how fast MyISAM vs. MonetDB would interpret really large INSERT statements, the kind produced by mysqldump. But MonetDB choked and told me the number of columns mismatched. I found reference to this on the mailing list, and skipped that. I used LOAD DATA INFILE instead (MonetDB&#8217;s version of that is COPY INTO). This is the only way to get data into Infobright, anyway.</p>
<h3>The tests</h3>
<p>I loaded 1 million rows into the table. Here&#8217;s a graph of the times (smaller is better):</p>
<p><img title="Load Time" src="http://www.mysqlperformanceblog.com/wp-content/uploads/2009/09/load_time.png" alt="Load Time" width="450" height="320" /></p>
<p>MyISAM took 88 seconds, MonetDB took 200, and Infobright took 486. Here&#8217;s the size of the resulting table on disk (smaller is better):</p>
<p><img title="Table Size in Bytes" src="http://www.mysqlperformanceblog.com/wp-content/uploads/2009/09/table_size_bytes.png" alt="Table Size in Bytes" width="450" height="320" /></p>
<p>MyISAM is 787MB, MonetDB is 791MB, and Infobright is 317MB. Next I ran three queries:</p>
<div style="margin: 0px;"><span><a style="color: #2244bb;" href="http://www.mysqlperformanceblog.com/2009/09/29/quick-comparison-of-myisam-infobright-and-monetdb/" target="_blank">PLAIN TEXT</a></span></div>
<div style="margin: 0px;"><span>SQL:</span></p>
<div style="margin: 0px;">
<div style="margin: 0px;">
<ol>
<li>
<div style="margin: 0px;"><span>SELECT</span> sum<span>(</span>c19<span>)</span>, sum<span>(</span>c89<span>)</span>, sum<span>(</span>c129<span>)</span> <span>FROM</span> t;</div>
</li>
<li>
<div style="margin: 0px;"><span>SELECT</span> sum<span>(</span>c19<span>)</span>, sum<span>(</span>c89<span>)</span>, sum<span>(</span>c129<span>)</span> <span>FROM</span> t <span>WHERE</span> c11&gt; <span>5</span>;</div>
</li>
<li>
<div style="margin: 0px;"><span>SELECT</span> sum<span>(</span>c19<span>)</span>, sum<span>(</span>c89<span>)</span>, sum<span>(</span>c129<span>)</span> <span>FROM</span> t <span>WHERE</span> c11 &lt;<span>5</span>;</div>
</li>
</ol>
</div>
</div>
</div>
<p>Graphs of query performance time for all three databases are really not very helpful, because MyISAM is so much slower that you can&#8217;t see the graphs for the others. So I&#8217;ll give the numbers and then omit MyISAM from the graphs. Here are the numbers for everything I measured:</p>
<p></span></p>
<table border="0">
<thead>
<tr>
<td></td>
<th>myisam</th>
<th>monetdb</th>
<th>infobright</th>
</tr>
</thead>
<tbody>
<tr>
<th>size (bytes)</th>
<td>826000000</td>
<td>829946723</td>
<td>332497242</td>
</tr>
<tr>
<th>load time (seconds)</th>
<td>88</td>
<td>200</td>
<td>486</td>
</tr>
<tr>
<th>query1 time</th>
<td>3.4</td>
<td>0.012</td>
<td>0.0007</td>
</tr>
<tr>
<th>query2 time</th>
<td>3.4</td>
<td>0.15</td>
<td>1.2</td>
</tr>
<tr>
<th>query3 time</th>
<td>2.5</td>
<td>0.076</td>
<td>0.15</td>
</tr>
</tbody>
</table>
<p><span style="font-family: arial, sans-serif; line-height: normal; border-collapse: collapse;">And here is a graph of Infobright duking it out with MonetDB on the three queries I tested (shorter bar is better):</p>
<p><img title="MonetDB vs Infobright Query Time" src="http://www.mysqlperformanceblog.com/wp-content/uploads/2009/09/monetdb_infobright_query_time1.png" alt="MonetDB vs Infobright Query Time" width="492" height="320" /></p>
<p>I ran each query a few times, discarded the first run, and averaged the next three together.</p>
<h3>Notes on Infobright</h3>
<p>A few miscellaneous notes: don&#8217;t forget that Infobright is <em>not</em> just a storage engine plugged into MySQL. It&#8217;s a complete server with a different optimizer, etc. This point was hammered home during the LOAD DATA INFILE, when I looked to see what was taking so long (I was tempted to use oprofile and see if there are sleep() statements). What did I see in &#8216;top&#8217; but a program called bhloader. This bhloader program was the only thing doing anything; mysqld wasn&#8217;t doing a thing. LOAD DATA INFILE in Infobright isn&#8217;t what it seems to be. Otherwise, Infobright behaved about as I expected it to; it seemed pretty normal to a MySQL guy.</p>
<h3>Notes on MonetDB</h3>
<p>MonetDB was a bit different. I had to be a bit resourceful to get everything going. The documentation was for an old version, and was pretty sparse. I had to go to the mailing lists to find the correct COPY syntax &#8212; it wasn&#8217;t that listed in the online manual. And there were funny things like a &#8220;merovingian&#8221; process (think &#8220;angel&#8221;) that had to be started before the server would start, and I had to destroy the demo database and recreate it before I could start it as shown in the tutorials.</p>
<p>MonetDB has some unexpected properties; it is not a regular RDBMS. Still, I&#8217;m quite impressed by it in some ways. For example, it seems quite nicely put together, and it&#8217;s not at all hard to learn.</p>
<p>It doesn&#8217;t really &#8220;speak SQL&#8221; &#8212; it speaks relational algebra, and the SQL is just a front-end to it. You can talk XQuery to it, too. I&#8217;m not sure if you can talk dirty to it, but you can sure talk nerdy to it: you can, should you choose to, give it instructions in MonetDB Assembly Language (MAL), the underlying language. An abstracted front-end is a great idea; MySQL abstracts the storage backend, but why not do both? Last I checked, Drizzle is going this direction, hurrah!</p>
<p>EXPLAIN is enlightening and frightening! You get to see the intermediate code from the compiler. <a style="color: #2244bb;" href="http://monetdb.cwi.nl/projects/monetdb/SQL/Documentation/EXPLAIN-Statement.html" target="_blank">The goggles, they do nothing!</a></p>
<p>From what I was able to learn about MonetDB in an hour, I believe it uses memory-mapped files to hold the data in-memory. If this is true, it explains why I couldn&#8217;t load 4 million rows into it (this was a 32-bit Amazon machine).</p>
<p>The SQL implementation is impressive. It&#8217;s a really solid subset of SQL:2003, much more than I expected. It even has CTEs, although not recursive ones. (No, there is no REPLACE, and there is no INSERT/ON DUPLICATE KEY UPDATE.) I didn&#8217;t try the XQuery interface.</p>
<p>Although I didn&#8217;t try it out, there are what looks like pretty useful instrumentation interfaces for profiling, debugging and the like. The query timer is in milliseconds (why doesn&#8217;t mysql show query times in microseconds? I had to resort to Perl + Time::HiRes for timing the Infobright queries).</p>
<p>I think it can be quite useful. However, I&#8217;m not quite sure it&#8217;s useful for &#8220;general-purpose&#8221; database use &#8212; there are a number of limitations (concurrency, for one) and it looks like it&#8217;s still fairly experimental.</p>
<hr style="height: 1px; margin: 0px;" />
</span></p>
<p>via <a href="http://www.mysqlperformanceblog.com/2009/09/29/quick-comparison-of-myisam-infobright-and-monetdb/">Quick comparison of MyISAM, Infobright, and MonetDB</a>.</p>
<img src="http://www.hacking-gurus.net/wp-content/plugins/pixelstats/trackingpixel.php?post_id=162&ts=1280468835" style="display:none;" alt="pixelstats trackingpixel"/>]]></content:encoded>
			<wfw:commentRss>http://www.hacking-gurus.net/2009/09/30/quick-comparison-of-myisam-infobright-and-monetdb-mysql/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>SQL WHERE Clause Optimization</title>
		<link>http://www.hacking-gurus.net/2009/09/25/sql-where-clause-optimization/</link>
		<comments>http://www.hacking-gurus.net/2009/09/25/sql-where-clause-optimization/#comments</comments>
		<pubDate>Fri, 25 Sep 2009 19:34:42 +0000</pubDate>
		<dc:creator>r00t</dc:creator>
				<category><![CDATA[Database Security]]></category>
		<category><![CDATA[Tutorialz]]></category>
		<category><![CDATA[Analogy]]></category>
		<category><![CDATA[Blah]]></category>
		<category><![CDATA[Clauses]]></category>
		<category><![CDATA[Dictionary]]></category>
		<category><![CDATA[Fn]]></category>
		<category><![CDATA[Index Scans]]></category>
		<category><![CDATA[Lt]]></category>
		<category><![CDATA[Maximum Performance]]></category>
		<category><![CDATA[Mistake]]></category>
		<category><![CDATA[Optimization Sql]]></category>
		<category><![CDATA[Optimizer]]></category>
		<category><![CDATA[Queries]]></category>
		<category><![CDATA[Risk]]></category>
		<category><![CDATA[Single Word]]></category>
		<category><![CDATA[Sql Where Clause]]></category>

		<guid isPermaLink="false">http://www.hacking-gurus.net/?p=156</guid>
		<description><![CDATA[
		
		
		
		

SQL WHERE clause optimization is important to get maximum performance from a query. If an index exists on a column you obviously want the query to use it.
In this article, I explain how to reduce risk of table or index scans by paying close attention to the way the conditions are formulated.
A term that is [...]]]></description>
			<content:encoded><![CDATA[<div style="float: right; width: 42px; padding-right: 10px; margin: 0 0 0 10px;">
		<script type="text/javascript">
		<!--
		digg_url = "http://www.hacking-gurus.net/2009/09/25/sql-where-clause-optimization/";
		digg_bgcolor = "#FFFFFF";
		digg_skin = "";
		digg_window = "new";
		digg_title = "SQL+WHERE+Clause+Optimization";
		digg_media = "news";
		digg_topic = "";
		digg_bodytext = "SQL WHERE clause optimization is important to get maximum performance from a query. If an index exists on a column you obviously want the query to use it.In this article, I explain how to reduce risk of table or index scans by paying close attention to the way the conditions are formulated.A term that is often used is &#8220;SARGable&#8221;. This basically...";
		//-->
		</script>
		<script src="http://digg.com/tools/diggthis.js" type="text/javascript"></script></div><p><img class="alignleft" title="hacking-gurus.net" src="http://www.daleeman.com/wp-content/uploads/2009/05/database_icon.jpg" alt="" width="134" height="134" /></p>
<p><span id="more-156"></span></p>
<p>SQL WHERE clause optimization is important to get maximum performance from a query. If an index exists on a column you obviously want the query to use it.</p>
<p>In this article, I explain how to reduce risk of table or index scans by paying close attention to the way the conditions are formulated.</p>
<p>A term that is often used is &#8220;SARGable&#8221;. This basically refers to a condition in a WHERE clause that is able to use an index if one exists.</p>
<p>Examples of SARGable conditions are: A = x, B LIKE &#8216;AB%&#8217;, C IN (x, y, z). In each of these the optimizer is able to use an index. Examples of Non-SARGable conditions are: A &lt;&gt; x, B LIKE &#8216;%AB&#8217;, C NOT IN (x, y, z).</p>
<p>If you think about each of these it should be obvious why an index cannot be used. To explain why B LIKE &#8216;%AB&#8217; is bad, I like to use the analogy of a large dictionary. If you know what letters the word starts with you can find it very quickly. If you only know what letters it ends with you have no option but to read the entire dictionary and check every single word.</p>
<p>You should also avoid using NOT in your WHERE clauses. NOT IN, NOT LIKE and IS NOT NULL perform a scan for exactly the reasons given above. The exception may be NOT EXISTS, which can perform very well for many queries.</p>
<p>One very common mistake is to use functions in such a way that a scan is performed. A condition of the form WHERE Fn(A) = x will not use an index on A, as the function has to be applied to this column in every row before it can be compared with x.</p>
<p>This needs an example to explain properly: suppose you want to match rows added in the last 5 days. I often see this written as follows:</p>
<p><textarea style="height: 50px;">SELECT blah FROM table1 WHERE DATEADD(day, 5, CreateDate) &gt; GETDATE()</textarea> This should be rewritten as follows:</p>
<p><textarea style="height: 50px;">SELECT blah FROM table1 WHERE CreateDate &gt; DATEADD(day, -5, GETDATE())</textarea> There may be situations in which use of a function is unavoidable. In this case you can add a computed column that uses the function, add an index to the computed column, and refer to the computed column directly in the query.</p>
<img src="http://www.hacking-gurus.net/wp-content/plugins/pixelstats/trackingpixel.php?post_id=156&ts=1280468835" style="display:none;" alt="pixelstats trackingpixel"/>]]></content:encoded>
			<wfw:commentRss>http://www.hacking-gurus.net/2009/09/25/sql-where-clause-optimization/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Crack MD5 Password Hash Online</title>
		<link>http://www.hacking-gurus.net/2009/04/30/crack-md5-password-hash-online/</link>
		<comments>http://www.hacking-gurus.net/2009/04/30/crack-md5-password-hash-online/#comments</comments>
		<pubDate>Thu, 30 Apr 2009 03:23:19 +0000</pubDate>
		<dc:creator>r00t</dc:creator>
				<category><![CDATA[Database Security]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Password Recovery]]></category>
		<category><![CDATA[Server Security]]></category>
		<category><![CDATA[Tutorialz]]></category>
		<category><![CDATA[Website Security]]></category>
		<category><![CDATA[cheatsheet]]></category>
		<category><![CDATA[database]]></category>
		<category><![CDATA[db]]></category>
		<category><![CDATA[hack]]></category>
		<category><![CDATA[hacked]]></category>
		<category><![CDATA[hacking]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[passwd]]></category>
		<category><![CDATA[security]]></category>
		<category><![CDATA[unix]]></category>
		<category><![CDATA[web]]></category>
		<category><![CDATA[web security]]></category>
		<category><![CDATA[windows]]></category>

		<guid isPermaLink="false">http://www.hacking-gurus.net/?p=111</guid>
		<description><![CDATA[
		
		
		
		Hello ,
below is some links to crack md5 password hashes online , i will keep this post updated with all online links for cracking md5.

http://gdataonline.com
http://md5.rednoize.com
http://ice.breaker.free.fr
http://www.milw0rm.com/md5/
http://shm.hard-core.pl/md5/
http://www.hashchecker.com
http://lasecwww.epfl.ch/%7Eoechslin/projects/ophcrack/
http://md5.benramsey.com
http://md5.altervista.org
http://shm.hard-core.pl
http://plain-text.info
http://www.passcracking.ru/
http://www.securitystats.com/tools/hashcrack.php
http://www.xmd5.org/index_en.htm
]]></description>
			<content:encoded><![CDATA[<div style="float: right; width: 42px; padding-right: 10px; margin: 0 0 0 10px;">
		<script type="text/javascript">
		<!--
		digg_url = "http://www.hacking-gurus.net/2009/04/30/crack-md5-password-hash-online/";
		digg_bgcolor = "#FFFFFF";
		digg_skin = "";
		digg_window = "new";
		digg_title = "Crack+MD5+Password+Hash+Online";
		digg_media = "news";
		digg_topic = "";
		digg_bodytext = "Hello ,below is some links to crack md5 password hashes online , i will keep this post updated with all online links for cracking md5.http://gdataonline.comhttp://md5.rednoize.comhttp://ice.breaker.free.frhttp://www.milw0rm.com/md5/http://shm.hard-core.pl/md5/http://www.hashchecker.comhttp://lasecwww.epfl.ch/%7Eoechslin/projects/ophcrack/http://md5.benramsey.comhttp://md5.altervista.orghttp://shm.hard-core.plhttp://plain-text.infohttp://www.passcracking.ru/http://www.securitystats.com/tools/hashcrack.phphttp://www.xmd5.org/index_en.htm";
		//-->
		</script>
		<script src="http://digg.com/tools/diggthis.js" type="text/javascript"></script></div><p>Hello ,</p>
<p>below is some links to crack md5 password hashes online , i will keep this post updated with all online links for cracking md5.</p>
<p><span id="more-111"></span></p>
<p><a href="http://gdataonline.com" target="_blank">http://gdataonline.com</a><br />
<a href="http://md5.rednoize.com" target="_blank">http://md5.rednoize.com</a><br />
<a href="http://ice.breaker.free.fr" target="_blank">http://ice.breaker.free.fr</a><br />
<a href="http://www.milw0rm.com/md5/" target="_blank"><strong>http://www.milw0rm.com/md5/</strong></a><br />
<a href="http://shm.hard-core.pl/md5/" target="_blank">http://shm.hard-core.pl/md5/</a><br />
<a href="http://www.hashchecker.com" target="_blank">http://www.hashchecker.com</a><br />
<a href="http://lasecwww.epfl.ch/%7Eoechslin/projects/ophcrack/" target="_blank">http://lasecwww.epfl.ch/%7Eoechslin/projects/ophcrack/</a><br />
<a href="http://md5.benramsey.com" target="_blank">http://md5.benramsey.com</a><br />
<a href="http://md5.altervista.org" target="_blank">http://md5.altervista.org</a><br />
<a href="http://shm.hard-core.pl" target="_blank">http://shm.hard-core.pl</a><br />
<a href="http://plain-text.info" target="_blank">http://plain-text.info</a><br />
<a href="http://www.passcracking.ru/" target="_blank">http://www.passcracking.ru/</a><br />
<a href="http://www.securitystats.com/tools/hashcrack.php" target="_blank">http://www.securitystats.com/tools/hashcrack.php</a><br />
<a href="http://www.xmd5.org/index_en.htm" target="_blank">http://www.xmd5.org/index_en.htm</a></p>
<img src="http://www.hacking-gurus.net/wp-content/plugins/pixelstats/trackingpixel.php?post_id=111&ts=1280468835" style="display:none;" alt="pixelstats trackingpixel"/>]]></content:encoded>
			<wfw:commentRss>http://www.hacking-gurus.net/2009/04/30/crack-md5-password-hash-online/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>How to Backing up and Restoring Your MySQL Server</title>
		<link>http://www.hacking-gurus.net/2009/04/30/how-to-backing-up-and-restoring-your-mysql-server/</link>
		<comments>http://www.hacking-gurus.net/2009/04/30/how-to-backing-up-and-restoring-your-mysql-server/#comments</comments>
		<pubDate>Thu, 30 Apr 2009 03:05:55 +0000</pubDate>
		<dc:creator>r00t</dc:creator>
				<category><![CDATA[Database Security]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Server Security]]></category>
		<category><![CDATA[Tutorialz]]></category>
		<category><![CDATA[backup]]></category>
		<category><![CDATA[database]]></category>
		<category><![CDATA[db]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[network]]></category>
		<category><![CDATA[permission]]></category>
		<category><![CDATA[security]]></category>
		<category><![CDATA[sql server]]></category>
		<category><![CDATA[web security]]></category>

		<guid isPermaLink="false">http://www.hacking-gurus.net/?p=107</guid>
		<description><![CDATA[
		
		
		
		Hello ,
i have created a small bash script to backup complete mysql server and then restore it. you can download the script and configure it as per your need.

Download :
      mysql-backup.sh         29-Apr-2009 08:31  488
      mysql-restore.sh  [...]]]></description>
			<content:encoded><![CDATA[<div style="float: right; width: 42px; padding-right: 10px; margin: 0 0 0 10px;">
		<script type="text/javascript">
		<!--
		digg_url = "http://www.hacking-gurus.net/2009/04/30/how-to-backing-up-and-restoring-your-mysql-server/";
		digg_bgcolor = "#FFFFFF";
		digg_skin = "";
		digg_window = "new";
		digg_title = "How+to+Backing+up+and+Restoring+Your+MySQL+Server";
		digg_media = "news";
		digg_topic = "";
		digg_bodytext = "Hello ,i have created a small bash script to backup complete mysql server and then restore it. you can download the script and configure it as per your need.Download :      mysql-backup.sh         29-Apr-2009 08:31  488      mysql-restore.sh        29-Apr-2009 08:31  1.0Kyou need to change permissions for this script to be executed change permissions...";
		//-->
		</script>
		<script src="http://digg.com/tools/diggthis.js" type="text/javascript"></script></div><p>Hello ,</p>
<p>i have created a small bash script to backup complete mysql server and then restore it. you can download the script and configure it as per your need.</p>
<p><span id="more-107"></span></p>
<p>Download :</p>
<pre>      <a href="../../../../../downloads/mysql-backup.sh">mysql-backup.sh</a>         29-Apr-2009 08:31  488
      <a href="../../../../../downloads/mysql-restore.sh">mysql-restore.sh</a>        29-Apr-2009 08:31  1.0K</pre>
<p>you need to change permissions for this script to be executed change permissions using :</p>
<p><em>chmod +x mysql-backup.sh</em></p>
<p><em>chmod +x mysql-restore.sh</em></p>
<p>This script requres mysql server, mysql clinet  and mysqldump to take backup of databases and then to restore it ,</p>
<p>Please post you feedback if you got any problem using this script please comment below .</p>
<img src="http://www.hacking-gurus.net/wp-content/plugins/pixelstats/trackingpixel.php?post_id=107&ts=1280468835" style="display:none;" alt="pixelstats trackingpixel"/>]]></content:encoded>
			<wfw:commentRss>http://www.hacking-gurus.net/2009/04/30/how-to-backing-up-and-restoring-your-mysql-server/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Subversion Backup and Restore</title>
		<link>http://www.hacking-gurus.net/2009/04/26/subversion-backup-and-restore/</link>
		<comments>http://www.hacking-gurus.net/2009/04/26/subversion-backup-and-restore/#comments</comments>
		<pubDate>Sun, 26 Apr 2009 17:30:58 +0000</pubDate>
		<dc:creator>r00t</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Server Security]]></category>
		<category><![CDATA[Tutorialz]]></category>
		<category><![CDATA[backup]]></category>
		<category><![CDATA[dump]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[network]]></category>
		<category><![CDATA[networking]]></category>
		<category><![CDATA[permission]]></category>
		<category><![CDATA[restore]]></category>
		<category><![CDATA[security]]></category>
		<category><![CDATA[shell script]]></category>
		<category><![CDATA[subversion]]></category>
		<category><![CDATA[svn]]></category>

		<guid isPermaLink="false">http://www.hacking-gurus.net/?p=92</guid>
		<description><![CDATA[
		
		
		
		

Hello guys ,
i hope most of you have subversion installed and running , and you might have got chance        to  take backup of you subversion repositories.
i have created couple of scripts that can take mass backup of all repositores in your   subversion repositories parent directory also the other script restore all repositories , all you  [...]]]></description>
			<content:encoded><![CDATA[<div style="float: right; width: 42px; padding-right: 10px; margin: 0 0 0 10px;">
		<script type="text/javascript">
		<!--
		digg_url = "http://www.hacking-gurus.net/2009/04/26/subversion-backup-and-restore/";
		digg_bgcolor = "#FFFFFF";
		digg_skin = "";
		digg_window = "new";
		digg_title = "Subversion+Backup+and+Restore";
		digg_media = "news";
		digg_topic = "";
		digg_bodytext = "Hello guys ,i hope most of you have subversion installed and running , and you might have got chance        to  take backup of you subversion repositories.i have created couple of scripts that can take mass backup of all repositores in your   subversion repositories parent directory also the other script restore all repositories , all you ...";
		//-->
		</script>
		<script src="http://digg.com/tools/diggthis.js" type="text/javascript"></script></div><p><img class="alignleft size-thumbnail wp-image-93" title="subversion ogo" src="http://www.hacking-gurus.net/wp-content/uploads/2009/04/subversion_logo-384x332-150x150.png" alt="subversion ogo" width="150" height="150" /></p>
<p><span id="more-92"></span></p>
<p>Hello guys ,</p>
<p>i hope most of you have subversion installed and running , and you might have got chance        to  take <strong>backup</strong> of you subversion repositories.</p>
<p>i have created couple of scripts that can take mass backup of all repositores in your   subversion repositories parent directory also the other script restore all repositories , all you  need is to change path for backup place and your repositores folder and then enjoy while this script take backup of each repository automatically it saves a lot of time.</p>
<p>Download Both scripts :</p>
<p><a href="http://www.hacking-gurus.net/downloads/backup.sh" target="_self">Backup.sh</a></p>
<p><a href="http://www.hacking-gurus.net/downloads/restore.sh">Restore.sh</a></p>
<p><strong>Below is step by step procedure on how to use this script :</strong></p>
<p><strong>Please if you modify it don&#8217;t remove my name or links</strong></p>
<p>Step 1 ) upload <em>backup.sh</em> to you subversion server ,</p>
<p>Step 2) configure backup.sh according to your server requirements</p>
<p>Step 3) modify permissions for script using :</p>
<p><em>chmod +x backup.sh</em></p>
<p>Step 4) start the backup using : (* you should have permissions to directories on server where your repo exists)</p>
<p><em>sh backup.sh</em></p>
<p>Step 5) check backup logs using :</p>
<p><em>tail -f  {logfilepathhere}</em></p>
<p>Step 6)  Now Backup completed <img src='http://www.hacking-gurus.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  so you can compress backups files using :</p>
<p><em>tar cfz subversion_backup.tar.gz /home/svn/backups/full</em></p>
<p>Step 7) Move backup to new server where you want to take your svn or to some safe place</p>
<p>Step <img src='http://www.hacking-gurus.net/wp-includes/images/smilies/icon_cool.gif' alt='8)' class='wp-smiley' /> Start the restore process &amp; upload restore.sh</p>
<p>Step 9) config paths in restore.sh as in step 2</p>
<p>Step 10) change permission of it using :</p>
<p><em>chmod +x restore.sh</em></p>
<p>Step 11)<em> </em>Execute the restore script :</p>
<p><em> sh restore.sh</em></p>
<p>Step 12) Every thing is restored you may go to bed for sleep now <img src='http://www.hacking-gurus.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Enjoy the script and do post your feedback , if anyone need subversion installation or backup or any other professional service you may contact me adeel.ahmad+hackinggurus<strong> at </strong>networkncc.com .</p>
<img src="http://www.hacking-gurus.net/wp-content/plugins/pixelstats/trackingpixel.php?post_id=92&ts=1280468835" style="display:none;" alt="pixelstats trackingpixel"/>]]></content:encoded>
			<wfw:commentRss>http://www.hacking-gurus.net/2009/04/26/subversion-backup-and-restore/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>10 Reasons Websites get hacked</title>
		<link>http://www.hacking-gurus.net/2009/04/15/10-reasons-websites-get-hacked/</link>
		<comments>http://www.hacking-gurus.net/2009/04/15/10-reasons-websites-get-hacked/#comments</comments>
		<pubDate>Wed, 15 Apr 2009 18:42:35 +0000</pubDate>
		<dc:creator>r00t</dc:creator>
				<category><![CDATA[Database Security]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Server Security]]></category>
		<category><![CDATA[Tutorialz]]></category>
		<category><![CDATA[Website Security]]></category>
		<category><![CDATA[database]]></category>
		<category><![CDATA[DOS]]></category>
		<category><![CDATA[hack]]></category>
		<category><![CDATA[hacked]]></category>
		<category><![CDATA[hacking]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[MSSQL]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[network]]></category>
		<category><![CDATA[networking]]></category>
		<category><![CDATA[password]]></category>
		<category><![CDATA[permission]]></category>
		<category><![CDATA[security]]></category>
		<category><![CDATA[sql injection]]></category>

		<guid isPermaLink="false">http://www.hacking-gurus.net/?p=82</guid>
		<description><![CDATA[
		
		
		
		1. Cross site scripting (XSS)
The problem: The “most prevalent and pernicious” Web application security vulnerability, XSS flaws happen when an application sends user data to a Web browser without first validating or encoding the content. This lets hackers execute malicious scripts in a browser, letting them hijack user sessions, deface Web sites, insert hostile content [...]]]></description>
			<content:encoded><![CDATA[<div style="float: right; width: 42px; padding-right: 10px; margin: 0 0 0 10px;">
		<script type="text/javascript">
		<!--
		digg_url = "http://www.hacking-gurus.net/2009/04/15/10-reasons-websites-get-hacked/";
		digg_bgcolor = "#FFFFFF";
		digg_skin = "";
		digg_window = "new";
		digg_title = "10+Reasons+Websites+get+hacked";
		digg_media = "news";
		digg_topic = "";
		digg_bodytext = "1. Cross site scripting (XSS)The problem: The “most prevalent and pernicious” Web application security vulnerability, XSS flaws happen when an application sends user data to a Web browser without first validating or encoding the content. This lets hackers execute malicious scripts in a browser, letting them hijack user sessions, deface Web sites,...";
		//-->
		</script>
		<script src="http://digg.com/tools/diggthis.js" type="text/javascript"></script></div><p><strong>1. Cross site scripting (XSS)</strong></p>
<p>The problem: The “most prevalent and pernicious” Web application security vulnerability, XSS flaws happen when an application sends user data to a Web browser without first validating or encoding the content. This lets hackers execute malicious scripts in a browser, letting them hijack user sessions, deface Web sites, insert hostile content and conduct phishing and malware attacks.</p>
<p><span id="more-82"></span></p>
<p>Attacks are usually executed with JavaScript, letting hackers manipulate any aspect of a page. In a worst-case scenario, a hacker could steal information and impersonate a user on a bank’s Web site, according to Snyder.</p>
<p>Real-world example: PayPal was targeted last year when attackers redirected PayPal visitors to a page warning users their accounts had been compromised. Victims were redirected to a phishing site and prompted to enter PayPal login information, Social Security numbers and credit card details. PayPal said it closed the vulnerability in June 2006.</p>
<p>How to protect users: Use a whitelist to validate all incoming data, which rejects any data that’s not specified on the whitelist as being good. This approach is the opposite of blacklisting, which rejects only inputs known to be bad. Additionally, use appropriate encoding of all output data. “Validation allows the detection of attacks, and encoding prevents any successful script injection from running in the browser,” OWASP says.</p>
<p><strong><br />
2. Injection flaws</strong></p>
<p>The problem: When user-supplied data is sent to interpreters as part of a command or query, hackers trick the interpreter — which interprets text-based commands — into executing unintended commands. “Injection flaws allow attackers to create, read, update, or delete any arbitrary data available to the application,” OWASP writes. “In the worst-case scenario, these flaws allow an attacker to completely compromise the application and the underlying systems, even bypassing deeply nested firewalled environments.”</p>
<p>Real-world example: Russian hackers broke into a Rhode Island government Web site to steal credit card data in January 2006. Hackers claimed the SQL injection attack stole 53,000 credit card numbers, while the hosting service provider claims it was only 4,113.</p>
<p>How to protect users: Avoid using interpreters if possible. “If you must invoke an interpreter, the key method to avoid injections is the use of safe APIs, such as strongly typed parameterized queries and object relational mapping libraries,” OWASP writes.</p>
<p><strong>3. Malicious file execution</strong></p>
<p>The problem: Hackers can perform remote code execution, remote installation of rootkits, or completely compromise a system. Any type of Web application is vulnerable if it accepts filenames or files from users. The vulnerability may be most common with PHP, a widely used scripting language for Web development.</p>
<p>Real-world example: A teenage programmer discovered in 2002 that Guess.com was vulnerable to attacks that could steal more than 200,000 customer records from the Guess database, including names, credit card numbers and expiration dates. Guess agreed to upgrade its information security the next year after being investigated by the Federal Trade Commission.</p>
<p>How to protect users: Don’t use input supplied by users in any filename for server-based resources, such as images and script inclusions. Set firewall rules to prevent new connections to external Web sites and internal systems.</p>
<p><strong>4. Insecure direct object reference</strong></p>
<p>The problem: Attackers manipulate direct object references to gain unauthorized access to other objects. It happens when URLs or form parameters contain references to objects such as files, directories, database records or keys.</p>
<p>Banking Web sites commonly use a customer account number as the primary key, and may expose account numbers in the Web interface.</p>
<p>“References to database keys are frequently exposed,” OWASP writes. “An attacker can attack these parameters simply by guessing or searching for another valid key. Often, these are sequential in nature.”</p>
<p>Real-world example: An Australian Taxation Office site was hacked in 2000 by a user who changed a tax ID present in a URL to access details on 17,000 companies. The hacker e-mailed the 17,000 businesses to notify them of the security breach.</p>
<p>How to protect users: Use an index, indirect reference map or another indirect method to avoid exposure of direct object references. If you can’t avoid direct references, authorize Web site visitors before using them</p>
<p><strong><br />
5. Cross site request forgery</strong></p>
<p>The problem: “Simple and devastating,” this attack takes control of victim’s browser when it is logged onto a Web site, and sends malicious requests to the Web application. Web sites are extremely vulnerable, partly because they tend to authorize requests based on session cookies or “remember me” functionality. Banks are potential targets.</p>
<p>“Ninety-nine percent of the applications on the Internet are susceptible to cross site request forgery,” Williams says. “Has there been an actual exploit where someone’s lost money? Probably the banks don’t even know. To the bank, all it looks like is a legitimate transaction from a logged-in user.”</p>
<p>Real-world example: A hacker known as Samy gained more than a million “friends” on MySpace.com with a worm in late 2005, automatically including the message “Samy is my hero” in thousands of MySpace pages. The attack itself may not have been that harmful, but it was said to demonstrate the power of combining cross site scripting with cross site request forgery. Another example that came to light one year ago exposed a Google vulnerability allowing outside sites to change a Google user’s language preferences.</p>
<p>How to protect users: Don’t rely on credentials or tokens automatically submitted by browsers. “The only solution is to use a custom token that the browser will not ‘remember,’” OWASP writes. 		<!-- / message --></p>
<p><strong>6. Information leakage and improper error handling</strong></p>
<p>The problem: Error messages that applications generate and display to users are useful to hackers when they violate privacy or unintentionally leak information about the program’s configuration and internal workings.</p>
<p>“Web applications will often leak information about their internal state through detailed or debug error messages. Often, this information can be leveraged to launch or even automate more powerful attacks,” OWASP says.</p>
<p>Real-world example: Information leakage goes well beyond error handling, applying also to breaches occurring when confidential data is left in plain sight. The ChoicePoint debacle in early 2005 thus falls somewhere in this category. The records of 163,000 consumers were compromised after criminals pretending to be legitimate ChoicePoint customers sought details about individuals listed in the company’s database of personal information. ChoicePoint subsequently limited its sales of information products containing sensitive data.</p>
<p>How to protect users: Use a testing tool such as OWASP’S WebScarab Project to see what errors your application generates. “Applications that have not been tested in this way will almost certainly generate unexpected error output,” OWASP writes.</p>
<p><strong><br />
7. Broken authentication and session management</strong></p>
<p>The problem: User and administrative accounts can be hijacked when applications fail to protect credentials and session tokens from beginning to end. Watch out for privacy violations and the undermining of authorization and accountability controls.</p>
<p>“Flaws in the main authentication mechanism are not uncommon, but weaknesses are more often introduced through ancillary authentication functions such as logout, password management, timeout, remember me, secret question and account update,” OWASP writes.</p>
<p>Real-world example: Microsoft had to eliminate a vulnerability in Hotmail that could have let malicious JavaScript programmers steal user passwords in 2002. Revealed by a networking products reseller, the flaw was vulnerable to e-mails containing Trojans that altered the Hotmail user interface, forcing users to repeatedly reenter their passwords and unwittingly send them to hackers.</p>
<p>How to protect users: Communication and credential storage has to be secure. The SSL protocol for transmitting private documents should be the only option for authenticated parts of the application, and credentials should be stored in hashed or encrypted form.</p>
<p>Another tip: get rid of custom cookies used for authentication or session management.</p>
<p><strong>8. Insecure cryptographic storage</strong></p>
<p>The problem: Many Web developers fail to encrypt sensitive data in storage, even though cryptography is a key part of most Web applications. Even when encryption is present, it’s often poorly designed, using inappropriate ciphers.</p>
<p>“These flaws can lead to disclosure of sensitive data and compliance violations,” OWASP writes.</p>
<p>Real-world example: The TJX data breach that exposed 45.7 million credit and debit card numbers. A Canadian government investigation faulted TJX for failing to upgrade its data encryption system before it was targeted by electronic eavesdropping starting in July 2005.<br />
How to protect users: Don’t invent your own cryptographic algorithms. “Only use approved public algorithms such as AES, RSA public key cryptography, and SHA-256 or better for hashing,” OWASP advises.</p>
<p>Furthermore, generate keys offline, and never transmit private keys over insecure channels.</p>
<p><strong><br />
9. Insecure communications</strong></p>
<p>The problem: Similar to No. 8, this is a failure to encrypt network traffic when it’s necessary to protect sensitive communications. Attackers can access unprotected conversations, including transmissions of credentials and sensitive information. For this reason, PCI standards require encryption of credit card information transmitted over the Internet.</p>
<p>Real-world example: TJX again. Investigators believe hackers used a telescope-shaped antenna and laptop computer to steal data exchanged wirelessly between portable price-checking devices, cash registers and store computers, the Wall Street Journal reported.</p>
<p>“The $17.4-billion retailer&#8217;s wireless network had less security than many people have on their home networks,” the Journal wrote. TJX was using the WEP encoding system, rather than the more robust WPA.</p>
<p>How to protect users: Use SSL on any authenticated connection or during the transmission of sensitive data, such as user credentials, credit card details, health records and other private information. SSL or a similar encryption protocol should also be applied to client, partner, staff and administrative access to online systems. Use transport layer security or protocol level encryption to protect communications between parts of your infrastructure, such as Web servers and database systems.</p>
<p><strong><br />
10. Failure to restrict URL access</strong></p>
<p>The problem: Some Web pages are supposed to be restricted to a small subset of privileged users, such as administrators. Yet often there’s no real protection of these pages, and hackers can find the URLs by making educated guesses. Say a URL refers to an ID number such as “123456.” A hacker might say ‘I wonder what’s in 123457?’ Williams says.</p>
<p>The attacks targeting this vulnerability are called forced browsing, “which encompasses guessing links and brute force techniques to find unprotected pages,” OWASP says.</p>
<p>Real-world example: A hole on the Macworld Conference &amp; Expo Web site this year let users get “Platinum” passes worth nearly $1,700 and special access to a Steve Jobs keynote speech, all for free. The flaw was code that evaluated privileges on the client but not on the server, letting people grab free passes via JavaScript on the browser, rather than the server.</p>
<p>How to protect users: Don’t assume users will be unaware of hidden URLs. All URLs and business functions should be protected by an effective access control mechanism that verifies the user’s role and privileges. “Make sure this is done … every step of the way, not just once towards the beginning of any multi-step process,’ OWASP advises.</p>
<img src="http://www.hacking-gurus.net/wp-content/plugins/pixelstats/trackingpixel.php?post_id=82&ts=1280468835" style="display:none;" alt="pixelstats trackingpixel"/>]]></content:encoded>
			<wfw:commentRss>http://www.hacking-gurus.net/2009/04/15/10-reasons-websites-get-hacked/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
