Web Based application(s) testing


Web sites are essentially client/server applications they can be divided as web servers and 'browser' clients. Consideration should be given to the interactions between HTML pages, protocols, security, applications that run in web pages such as applets, JavaScript, plug-in applications, and applications that run on the server side such as CGI scripts, database interfaces, logging applications, dynamic page generators, etc.
Additionally, there are a wide variety of servers and browsers, various versions of each. Small but sometimes significant differences between them, variations in connection speeds, rapidly changing technologies, and multiple standards and protocols. The end result is that testing for web sites can become a major ongoing effort.

Things to be considered for web testing
a) What are the expected loads on the server and does it meets the expected performance       And the stress
b) What are the different browser(s) capabilities of the application?
c)  How is the connection speed internal & external (real time)
d) What are the security threats and how it is secured (firewalls, encryptions Etc)
e)  How is the server recovery from down time or an crash
f)  What are the different injections or vulnerabilities (SQL injection, cross site scripting?  
      Etc) that might occur and how it is handled
g) How is the master slave severs performance, that is when one server is down how effectually the slave or the other server will come up (if configured)
h) How is the web page layout, fonts, colors, text, graphics and user Interface? Etc.
i)  Cookie handling

Security vulnerability: -
Security vulnerability can be said as threat to the application from unauthorized access
And corruption of the application data. Following are the few security vulnerabilities.

Injection attacks
Cross site scripting
Session hacking
Form tampering
Port Scanning / Foot Printing
Injection Attacks:-
Following are the different types of injections
SQL injection
Ldap injection
Command Injection ETC

SQL Injection:-
Try the following steps
a) Open the Web site in a browser
b) Find a script which has common scripting-language file extensions
    Like .asp or .cfm
c) The “search” filed of an application is the field most vulnerable The Uniform Resource      Locator (URL) on the results page will likely contain a script. Also try hovering your cursor over links while watching the Bottom status bar. If the status bar doesn't display URLs click on links and watch the address bar until you find a URL that has parameters.
Once you are on a page whose URL contains parameters, you are ready to test for SQL Injection vulnerability. There are two methods. Be sure to test each parameter value, one at a time, with each method

Method 1:-
In the address bar URL, highlight a parameter value. Replace it with a single quote.
 
Method 2:-
Instead of highlighting the entire parameter value, click inside the value and type a single quote.

And click on send/enter/submit. Look for database error message      
                                  
(Note)  Sometimes the error message does not display on screen. To find it, you may have to search the HTML source of the page. (View | Source in Microsoft Internet Explorer or View | Page Source in Netscape.) A document will open. Use that program's search tool to look for either of these phrases:
                        Microsoft OLE DB
                                     Or
                          [ODBC]







Other way to test for SQL Injection
If you are using the normal string concatenation method of writing the code then you have to just enter the following in this manner in the text box.
                                      ‘Or 1=1 --- 
This will allow u to breach into sql and if u know how to create a windows acc then follow it up with the command, u well be able to create an account.

Cross Site Scripting:
Cross site scripting (also known as XSS) occurs when a web application gathers malicious data from a user. The data is usually gathered in the form of a hyperlink which contains malicious content within it. The user will most likely click on this link from another website
Try out by dong this

See the value here which is java and this value have been assigned to “box”. So now u needs to change this URL to


And enter this new URL in browser and say Enter, which would display the current session cookie which is a serious security bug.

*** You need to learn some stuff in URL syntax or manipulation or programming to give this script there. You can’t just blindly give this anywhere in your URL.

Session ID hacking: -
A session is piece of code that is encrypted or encoded into a randomly organized string. This is used by the web server and browser for Authenticity /access to the authorized resource. To hack a session ID we need to have a sniffer. For example in domain where
We have three systems. A, B, C, system A has a web application, System B
Has a sniffer installed in it and C has a web server installed on it

a) Configure the sniffer and make it ready
b) Do an authentication from the system which has the web application installed on it
c) When it is successfully authenticated and session is alive get the information from the  
     Sinffer –system B

d) Since the captured information mostly in the machine language you need to Write a    small program to convert it to get the clear information Get the session id , append this ID with in the URL and access the  Protected resources

* NEED MORE R&D