Friday, December 18, 2015

Secure Application Development And Modern Defenses

Abstract

When it comes to the internet, security has always been an after-thought. A great evidence to support the theory can be seen when we look at the history of the internet. The internet was created by US military back in 1969, branded as "Arpanet" at that time. In 1973, ARPANET created TCP IP protocol suite which later enabled the development of protocols such as "SMTP, POP3, FTP, TELNET " in 1980's and HTTP in 1991. 

All of these protocols could be easily eaves-dropped upon by an attacker as they do not encrypt the traffic. Their secure versions were released only later, such as FTPS, SMTPS, SSH, and HTTPS since at that time connecting people and building features was the priority.  If security would have been present by design, we would not have encountered these problems today. 
The same is the case of when we develop the products today, we consider security to be an after-thought rather than an in-built feature, as a reason of which, security breaches occur.  In this article, we would talk about secure application development and why SDLC (System Development Lifecycle) is an ideal model for building secure products.

The model leads "Security By Design" and "In-depth Defense" approach. The idea behind this model is that security should be an essential part of all phases of SDLC so that the bugs are addressed during the early stages of development. Fixing security issues at earlier stages of the development cycle directly reduces costs, time, effortand resources.

Application Layer Security Attacks

As time passes by, we witness a rise in application security attacks, an upward progression in layer of insecurities of the OSI model. In 80 and 90's most of the attacks were related to Layer 1, Layer 2 and Layer 3 of the OSI model, ​today we are at the point that we have developed a great defense at Network Level, however application layer security remains a big challenge. 

According to a report by Gartner Research, it states that 75% of the attacks today occur at the application layer of the OSI Model. According to a survey by Trustwave, 82% of web applications are vulnerable to XSS attacks. According to another survey, 80% of all the security incidents in the financial sector occur due to Cross-site Scripting. Therefore, building defense at application layer is mandatory.

Application Layer Defenses/Approach

Overtime, there have been multiple defenses and approaches established at application level, most notable being a "Web Application Firewall" and "Runtime Application Self-Protection" so on and so forth.  

A Web Application firewall could be used as an additional layer of security, however all WAF's rely upon Blacklist i.e. Reject Known Bad, as whitelisting mode is not practically applicable in the real world (it's not easy to implement). This can be largely attributed to the fact that the majority of web applications are dynamic, and it is very difficult to predict all the possible inputs in order to write a whitlelist of what is allowed. The blacklist, however is not really effective, and this has been proven in past. As a matter of fact, Bypassing WAF's is my day-to-day job and back in 2013, I had written a cheatsheet "Bypassing Modern WAF's XSS Filters" for bypassing Web Application firewalls in which I had written bypasses for top Web Application firewalls. 

Runtime Application Self Protection is relatively a new approach for preventing application layer attacks, which empowers the application to protect in against attacks in real time. A RASP sits at each junction point of the application such as between the application and database, the file system and the network, it sits there and identifies & blocks any malicious activity, enabling the application an ability to protect itself. The problem, however, with this solution is that it still is based upon a blacklist, it is very costly and requires a lot of time to mature itself. 

The cost of removing an application security vulnerability during the design phase ranges from 30-60 times less than if removed during production.”- NIST, IBM, and Gartner Group

Bottom line is that, You cannot write a vulnerable code and rely upon WAF, RASP and other protection mechanisms to protect your application. 

Secure SDLC 

The defenses we talked about above do help in improving our security model. However, in my opinion, it is the wrong way of solving the problem. The best approach is that the application should itself carry the ability to protect itself and henceforth, be built with security in mind from day one. Experts recommend that security should be embedded into all stages of SDLC i.e. Requirements gathering, Design, Development, Testing, Implementation.
Let's talk about how security could fit into all stages of SDLC:

i) Requirements

The first phase of SDLC is the "Requirement" in which project scope and goals are set.  In this phase, OWASP recommends the establishment of security requirements of the application. The requirements of the customer should be checked in accordance with the security standards such as the password policies, secure network protocols etc. 

ii) Design 
In the design phase, OWASP recommends the building of design with security in mind. This involves what is known as Threat modelling, which is an approach that involves analyzing the security of an application in order to mitigate the threats which yields the security plan. ​ The following is a great presentation on how threat modelling should be performed. 



iii) Development 

In Development phase, OWASP recommends developers to follow "Secure Coding Standards" for which, the organization must conduct an awareness on Secure Coding for developers, because guidelines are often overlooked by developers. Apart from that Source code, reviews must by done by internal team. It is also recommended to have this conducted via third party to mitigate additional findings.

iv) Testing 

In testing phase, OWASP recommends performing a penetration test including infrastructure assessment, in order to counter verify if the findings present inside the design and development phase have been properly fixed. Both Static and Dynamic code analysis should be thoroughly performed. 

Special attention should be paid to Business logic bugs which cannot be otherwise found by automated scanners as the business logic varies for every application. Efforts made in second phase i.e. Design could reduce the number of business logic bugs significantly. 


v) Deployment 

Deployment is a phase where your application goes from development into production environment. In this phase, OWASP recommends securely conducting the migration process from development phase to production phase and to ensure that post production security requirements are met.

In case you would like to learn more about Secure SDLC, I would recommend the following presentation - "Secure Development Lifecycle".

Security is an ongoing process, no specific requirement has to be met for 100% security. 

It should be noted that even after introducing security in every process of SDLC, 100% security cannot be achieved. However, the threat probability could be reduced. As security analysts, we have to close a 100 doors from which an attacker could enter and as an attacker, s/he only needs one door.  The fact that appeals most to me about this approach is that it's proactive, not reactive which is how most of the application development nowadays is done. ​

Sunday, November 8, 2015

Airtel Diwali Offer — Get 100MB 3G Data For Free [ Limited Time]

Airtel Is Come Up With Free Data Diwali Offer. Where You Will Get Free 100 MB 3G Data Without Any Cost, This Offer Is Valid For Very Short Time So Friends Avail This Offer Now.

How to Get This Deal ?

* First Go to "Messaging" Of Your Phone

* Create a New Message
 
* TYPE TRY3G And Send It to 51617

* Done Your Will Get 100MB 3G Data.

Second Method :-

• Call On 129, Now Choose Language Between Hindi or English

• Now You Will Hear Something Like That Get 100 MB 3G Data Platinum Pack For Free

* Now Press 1 For Activait This Plan

Enjoy Free Data

Tokri.com Offer — Register Now And Get Free Rs.500 Cash [Pune Users]

Hi Friends
Here Is A New Offer For Our Visitors, Tokri.com Is Offering Free Rs.500 Cash For Pune Users. You Can Use This Cash For Purchasing Item Thats You Need Daily. So Friends What Are You Waiting For, Avail This Offer Now.

How to Get This Deal ?

* Goto Offer Page

* Register New Account

* Enjoy Free Rs.500 Cash

* You Can Use This Cash For Online Purchase.

Thursday, November 5, 2015

Vodafone Diwali Loot - Get 100 MB 3G Data For Free !!

Vodafone Is Also Celebrating Diwali In This 2015 Year, So It Is Giving Free 100 MB Data Pack
(3G or 2G) On 11 Nov. by Sending A Sms So Friends Enjoy Free 100MB Data In This Dewali.

How to Get This Deal ?

* First Take Your Phone In Your Hand

* Now Go to "Messaging"

* Create A New Message

* TYPE "DIWALI" And Sent it To 199

* Enjoy Free 100 MB Data.

NOTE :- This Offer Will Work On 11th Nov.Only.

Paytm 100% Cashback Sale [Live]

Paytm Now A Big Recharge Shopping Site.
Which Has Come Up With A New Cashback Offer,
Where You Will Get Flat 100% Cashback On
Selected Products So Make Your Shopping From
Paytm & Get Huge Discount & Cashback.

How to Get This Deal ?

* Go to Offer Page

* Select Product & Click On Buy Now

* Log In Or Register

* Proceed to Checkout

* Apply Promo Code :- MKT100

* Add Shipping Details

* Pay Amount

Cashback Added To Your Wallet Soon

Tuesday, November 3, 2015

GoGo Read- Swipe App Offer — Get Rs .10 For Each Referral [ Max .100 ]

GoGo Is A New Earning Android App Which Is Giving Rs.10 For Each Referral And You Can Also
Earn Money By Reading Article & Doing Other Tasks.
This Android App Is Also Giving 500 Points Means Rs.5 For Sign Up Bonus And You Can Earn Maximum Of Rs.100.

So Hurry Up & Claim Your Rs.100 Now.
How to Get This Deal ?
* Download GoGo Swipe Earn Talktime App

* Open The App & Register New Account

* After That Complete Verification.

* After Successful Registration, You Will Get 500 Points Mean Rs.5 Sign Up

* Now Start Referring Your Friends And Earn 1000 Points Means Rs.10 Per Refer.

* You Can Refer Maximum Of Your 10 Friends, And Max Earn Rs.100.

Minimum Redeem Amount Is Rs.100

Happy Earning.

[Freecharge] Get Rs.50 Cashback On Recharge Of Rs.50 For New Users

Freecharge Has Come Up With A New Loot Offer, Where You Will Get Rs.50 Cashback On Min Recharge Of Rs.50 This Offer Is Valid For New Users, Payment Must Done by Credit/Debit Card to Get Cashback.
How to Get This Deal ?
• Go to Freecharge
• Register New Account
• Start a Recharge Worth Rs.50
• Apply Promo Code :- HEY75
• Make Payment.
After Successful Payment You Will Get Cashback
Terms Added Soon

OLA STORE MAHALOOT:- Rs 100 off on min purchase of Rs 101 (New users)

ola-store-logo@2x.png
Hi Friends
[Ola Store] Rs 100 off on min purchase ofRs 101 (New users)

HOW TO GET THIS DEAL:-
1. Firstly Visit OLA STORE
2.Coupon code:“FLAT100"
3.Valid till Nov 15 2015

Celebrate Diwali with Mi – Get Deals at Re. 1 & Many More

Hi Friends
Diwali is just around the corner and the festive shopping has already begun. While most e-commerce sites have already started their respective festive sales, Xiaomi also seems prepared to hold its sale. A couple of days back, the company had hinted about its Diwali sale in the market.Today, Xiaomi has shed some more light on its Diwali sales plan – it will be hosting Re. 1 Flash sale on some of its products. On Diwali on November 3, 4 and 5, So get ready to bangthis Diwali and avail this offer, here are the steps :-

How to Get Rs.1 Flash Sale :-

About Rs.1 Sale:-
  • The flash sale will be held on mi.com/in at 2pm and 6pm on the 3rd, 4th and 5th November.
  • Users are eligible for the flash sale only if the promotion from mi.com/in/— hasbeen shared via Facebook/Twitter between 10 am 28th Oct to 4 pm 5th Nov.
  • To be eligible users need to share the promotion2 hours prior to the flash sale. i.e 2pm and 6pm during 3rd-5th November.
  • Sharing the promotion once via Facebook/Twitter will be sufficient for users to be eligible for all the flash sales held between 3rd to 5th November.
  • Warranty service are not applicable for products sold during the flash sale at ₹1
1
After Sharing this on Facebook you will get this Message
Untitled

Festive Offer prices to be revealed soon :-


23
24
25
26

Paymyreview Refer And Earn Offer — Refer Your Friends And Get Rs.10 Recharge For Each [Ending Soon]

Paymyreview Is A New Earning App, Where You Will Get Rs.10 Fo Each Referral. You Can Earn Maximum Of Rs.200 By Referring Friends.

How to Get This Deal ?
* Download Paymyreview

* Open The App & Register With Facebook Or Gmail

* At Last Complete Your Profile & Verify Your Mobile No.

* Apply This Referral Code For Supporting Us :- A6F582A9

Now Refer Your Friends Using Your Referral Code, You Will Get Rs.10 For Each Friends

You Can Use This Cash For Recharge

Unlimited Trick -
* Install Youwave On Your Computer

* After That Download Paymyreview App On Youwave

* Open Paymyreview

* Register New Account Using New Email Or No.

* Enter Your Referral Code.

* You Will Get Rs.10 For Each Referral.

Now Restore Youwave & Repeat Above Steps Again For Earn Unlimited.

Wooplr Offer - Get 50 Points On Registration + 20 Per Refer !

Wooplr Is New Android App Which Is Giving 50 Points For Registration Bonus + You Can Also Refer Your Friends And Earn 20 Points For Each Friends.

You Can Redeem Your Earning As
Shopping Gift Cards So Friends Download This Amazing App & Start Earning.

• You Will Also Get Gigato 25 MB Gift Voucher Via Sms For Redeem This Coupon, Go to Gigato App & Redeem Your Coupon/>

How to Get This Deal ?

* Download Wooplr App

* Install The App & Open it

* To Get 50 Points Enter This Promo Code :- AMA506 And Apply It.

If You Skip This Steps Then You Will Not Get 50 Points Joining Bonus

* After That Choose Log In Option Between Facebook Or Google

* Now Select Gift Logo, Now Share Your Referral Code

You Will Get 20 Points For Each Referral Minimum Payout Is 500 Points

Friday, September 25, 2015

Paypal Mobile Verification And Payment Restrictions Bypass


In this post, i would like to share a very simple logic flaw I found earlier this year I have found a way to circumvent mobile verification by utilizing a different portal for logging into a paypal account. The flaw lies in the fact that paypal does not perform two step verification/authorization checks on all different portals that are used to log into a paypal account. Ideally, there should be a centralized authentication mechanism to authenticate the user or else additional authorization checks have to be applied to all different portals that are used to log into paypal ccount.

In this case, We could use the mobile activation page to log into the paypal account without happen to use a mobile phone.

https://www.paypal.com/us/cgi-bin/?cmd=_mobile-activate-outside


Demonstration



Unfortunately, the bug was marked as duplicate so it was not eligible for a bounty, however that really doesn't matter as the fun and the learning is more important. However, there are still other ways to circumvent mobile verification, however i did not wish to report.

Bypassing Payment Restrictions

After you have bypassed paypal might restrict you from transferring funds to another account, however there is a simple way of bypassing it as well, all you have to do is to create a donation button or any other payment button from paypal and directly use that to transfer money, paypal does not enforce any restriction on it.

Example

https://www.paypal.com/id/cgi-bin/webscr?cmd=_flow&SESSION=OvGwImW-aZGi7_Jf-oBOYlXFljX6KfnUMxeUoxyow7Woq8ZZYb7SihFpKQy&dispatch=50a222a57771920b6a3d7b606239e4d529b525e0b7e69bf0224adecfb0124e9b61f737ba21b08198d1a93361f052308ac20c1249d8113f4c

Tuesday, July 21, 2015

How to Spy on Text Messages

It seems that in recent years most of society, especially the younger generations, have turned to texting as their preferred mode of conversation. The infinite ability to communicate with other people around the world effortlessly has become a growing concern for parents and employers alike who wish to 'keep an eye on', or monitor, their children or employees. In this post we will discuss the methods and implications of text message spying.

Methods To Spy On Text Messages

There are several methods to spy on text messages, however we would only discuss the following two methods which happen to be easy for parents/employeers to monitor their children/employees  activities.

Method 1: Using a Spying App

The easiest way to spy on text messages is to use one of spying application. Today there exist literally hundred's of products claiming to spy on text messages, however most of them are overpriced or they are not compatible with wide variety of smartphones. With that being said, there are still very few spying softwares that stand out to competition and one of my favorite is mspy.

mspy posses state of art stealth capabilities to spy on various text messaging applications such as Whatsapp, Viber, Facebok Messenger, LINE so on and so forth. Apart from that you can also monitor call logs and track location of smartphone (Absolutely must have for Parents).  The best part being that you don't have to jailbreak your iOS device or root your android device in order to install it.

How it works?

Upon placing and order for mspy, you would receive an application that you have to install on target's phone by simply launching the browser from the target phone, typing the URL and downloading and executing the application. Once you have successfully installed it, it would send alerts to your control panel or account which would be created once you have signed up. In case of any issue you can simply contact their 24/7 support team.

                                                             

Features

  • Monitor call logs, SMS and Contacts 
  • Spy on Internet activity including social media like Facebook, Twitter and Gmail.
  • It is not detected by antiviruses and operates in complete stealth mode,.
  • Spy on text messaging apps like WhatsApp, iMessage, Viber, Snapchat, Skype, LINE and more.
  •  Track GPS locations in real-time.
  •  Spy on all multimedia content stored on a device. Monitor what childrens are storing on their devices. 
  • 24/7 live support.

Compatibility

  • iPhone/iPad (iOS 6 – 8.3)
  • Android Phones (Version 4+)
Disclaimer: SOFTWARE INTENDED FOR LEGAL USES ONLY. It is the violation of the United States federal and/or state law and your local jurisdiction law to install surveillance software, such as the Licensed Software, onto a mobile phone or other device you do not have the right to monitor. RHA shall not be responsible for any misuse of this product.

Method 2: Using SIM Card Reader To Recover Messages

In case, if you can't afford an spying app, you could look for free alternatives, however there are few drawbacks to it. One being that a lot of them found on forums are backdoored, also they require good amount of technical knowledge to setup and operate. Another way is to buy a SIM card reader from market and use victim's SIM card to recover messages or phone contacts stored on it.

Requirements

  • PC/SC compliant smart card reader
Note: Some phones tend to keep messages inside their internal memory, in that case you have to move messages from internal memory to SIM card. 

Step 1: Download "Dekart SIM Manager"from here.


Step 2: Once the sim card has been plugged into the SIM card reader and the card reader has been connected to your computer. Press the"READ" button to read the messages, GSM contacts, last dialed numbers etc. 


Step  3 -> Since, our aim here is to recover deleted messages, we would go to the "SMS messages" tab. To recover a message right click on a message and select "Undelete" option.  Once this is done, press the "Write" button to write it on the sim card. 

Note: The messages marked in "RED" are deleted messages where as the messages marked in black are the ones which are still available on the sim card.  

Ref:https://www.dekart.com/fileadmin/howto/Howto-recover-deleted-SMS/SIM-Manager-undelete-SMS.png

Note: Please note that this method can only be used to recover SMS messages that are stored on the SIM not Whatsapp, Viber etc messages. To overcome this, I would suggest you to use method 1. 

Thursday, June 4, 2015

Top 14 Web Vulneranlity Scanners


In the past, many popular websites have been hacked. Hackers are now active and always try to hack websites and leak data. This is why security testing of web applications is very important. And here comes the role of web application security scanners. Web Application Security Scanner is a software program which performs automatic black box testing on a web application and identifies security vulnerabilities. Scanners do not access the source code, they only perform functional testing and try to find security vulnerabilities.
Various paid and free web application vulnerability scanners are available. In this post, we are listing the best free open source web application vulnerability scanners. I am adding the tools in random order. So please do not think it is a ranking of tools.
I am only adding open source tools which can be used to find security vulnerabilities in web applications. I am not adding tools to find server vulnerabilities. And do not confuse with free tools and open source tools. Because there are various other tools available for free, but they do not provide source code to other developers. Open source tools are those which offer source codes to developers so that developers can modify the tool or help in further development.
These are the best open source web application penetration testing tools:
Grabber
Grabber is a nice web application scanner which can detect many security vulnerabilities in web applications. It performs scans and tells where the vulnerability exists. It can detect the following vulnerabilities:
  • Cross site scripting
  • SQL injection
  • Ajax testing
  • File inclusion
  • JS source code analyzer
  • Backup file check
It is not fast as compared to other security scanners, but it is simple and portable. This should be used only to test small web applications because it takes too much time to scan large applications.
This tool does not offer any GUI interface. It also cannot create any PDF report. This tool was designed to be simple and for personal use. You can try this tool just for personal use. If you are thinking of it for professional use, I will never recommend it.
This tool was developed in Python. And an executable version is also available if you want. Source code is available, so you can modify it according your needs. The main script is grabber.py, which once executed calls other modules like sql.py, xss.py or others.
Source code on Github: https://github.com/neuroo/grabber
Vega
Vega is another free open source web vulnerability scanner and testing platform. With this tool, you can perform security testing of a web application. This tool is written in Java and offers a GUI based environment. It is available for OS X, Linux and Windows.
It can be used to find SQL injection, header injection, directory listing, shell injection, cross site scripting, file inclusion and other web application vulnerabilities. This tool can also be extended using a powerful API written in JavaScript.
While working with the tool, it lets you set a few preferences like total number of path descendants, number of child paths of a node, depth and maximum number of request per second. You can use Vega Scanner, Vega Proxy, Proxy Scanner and also Scanner with credentials. If you need help, you can find resources in the documentation section:
Dont Forget To Comment Below

Zed Attack Proxy
Zed Attack Proxy is also known as ZAP. This tool is open source and is developed by AWASP. It is available for Windows, Unix/Linux and Macintosh platforms. I personally like this tool. It can be used to find a wide range of vulnerabilities in web applications. The tool is very simple and easy to use. Even if you are new to penetration testing, you can easily use this tool to start learning penetration testing of web applications.
These are the key functionalities of ZAP:
  • Intercepting Proxy
  • Automatic Scanner
  • Traditional but powerful spiders
  • Fuzzer
  • Web Socket Support
  • Plug-n-hack support
  • Authentication support
  • REST based API
  • Dynamic SSL certificates
  • Smartcard and Client Digital Certificates support
You can either use this tool as a scanner by inputting the URL to perform scanning, or you can use this tool as an intercepting proxy to manually perform tests on specific pages.
Wapiti
Wapiti is also a nice web vulnerability scanner which lets you audit the security of your web applications. It performs black-box testing by scanning web pages and injecting data. It tries to inject payloads and see if a script is vulnerable. It supports both GET and POSTHTTP attacks and detects multiple vulnerabilities.
It can detect following vulnerabilities:
  • File Disclosure
  • File inclusion
  • Cross Site Scripting (XSS)
  • Command execution detection
  • CRLF Injection
  • SEL Injection and Xpath Injection
  • Weak .htaccess configuration
  • Backup files disclosure
  • and many other
Wapiti is a command-line application. So, it may not be easy for beginners. But for experts, it will perform well. For using this tool, you need to learn lots of commands which can be found in official documentation.
Download Wapiti with source code: http://wapiti.sourceforge.net/
W3af
W3af is a popular web application attack and audit framework. This framework aims to provide a better web application penetration testing platform. It is developed using Python. By using this tool, you will be able to identify more than 200 kinds of web application vulnerabilities including SQL injection, Cross-Site Scripting and many others.
It comes with a graphical and console interface. You can use it easily by using its easy to understand interface.
If you are using it with Graphical Interface, I do not think that you are going to face any problem with the tool. You only need to select the options and then start the scanner. If a website needs authentication, you can also use authentication modules to scan the session-protected pages.
We have already covered this tool in detail in our previous W3af walkthrough series. You can read those articles to know more about this tool.
You can access source code at the Github repository:https://github.com/andresriancho/w3af/
Download it from the official website: http://w3af.org/
WebScarab
WebScarab is a Java-based security framework for analyzing web applications using HTTP or HTTPS protocol. With available plugins, you can extend the functionality of the tool. This tool works as an intercepting proxy. So, you can review the request and response coming to your browser and going to thw server. You can also modify the request or response before they are received by server or browser.
If you are a beginner, this tool is not for you. This tool was designed for those who have a good understanding of HTTP protocol and can write codes.
Webscarab provides many features which helps penetration testers work closely on a web application and find security vulnerabilities. It has a spider which can automatically find new URLs of the target website. It can easily extract scripts and HTML of the page. Proxy observes the traffic between server and your browser, and you can take control of the request and response by using available plugins. Available modules can easily detect most common vulnerabilities like SQL injection, XSS< CRLF and many other vulnerabilities.
Source code of the tool is available on Github: https://github.com/OWASP/OWASP-WebScarab
Skipfish
Skipfish is also a nice web application security tool. It crawls the website and then check each pages for various security threats and at the end prepares the final report. This tool was written in C. It is highly optimized for HTTP handling and utilizing minimum CPU. It claims that it can easily handle 2000 requests per second without adding a load on CPU. It use a heuristics approach while crawling and testing web pages. This tool also claims to offer high quality and less false positives.
This tool is available for Linux, FreeBSD, MacOS X and Windows.
Download Skipfish or code from GOogle Codes: http://code.google.com/p/skipfish/
Ratproxy
Ratproxy is also an open source web application security audit tool which can be used to find security vulnerabilities in web applications. It is supports Linux, FreeBSD, MacOS X, and Windows (Cygwin) environments.
This tool is designed to overcome the problems users usually face while using other proxy tools for security audits. It is capable of distinguishing between CSS stylesheets and JavaScript codes. It also supports SSL man in the middle attack, which means you can also see data passing through SSL. You can read more about this tool here: http://code.google.com/p/ratproxy/wiki/RatproxyDoc
SQLMap
SQLMap is another popular open source penetration testing tool. It automates the process of finding and exploiting SQL injection vulnerability in a website’s database. It has a powerful detection engine and many useful features. So, a penetration tester can easily perform SQL injection check on a website.
It supports range of database servers including MySQL, Oracle, PostgreSQL, Microsoft SQL Server, Microsoft Access, IBM DB2, SQLite, Firebird, Sybase and SAP MaxDB. It offers full support to 6 kinds of SQL injection techniques: time-based blind, boolean-based blind, error-based, UNION query, stacked queries and out-of-band.
Access the source code on Github repository:https://github.com/sqlmapproject/sqlmap
Wfuzz
Wfuzz is another freely available open source tool for web application penetration testing. It can be used to brute force GET and POST parameters for testing against various kinds of injections like SQL, XSS, LDAP and many others. It also supports cookie fuzzing, multi-threading, SOCK, Proxy, Authentication, parameters brute forcing, multiple proxy and many other things. You can read more about the features of the tool here: http://code.google.com/p/wfuzz/
This tool does not offer a GUI interface, so you will have to work on command line interface.
Download Wfuzz from code.google.com: http://code.google.com/p/wfuzz/
Grendel-Scan
Grendel-Scan is another nice open source web application security tool. This is an automatic tool for finding security vulnerabilities in web applications. Many features are also available for manual penetration testing. This tool is available for Windows, Linux and Macintosh. This tool was developed in Java.
Download the tool and source code: http://sourceforge.net/projects/grendel/
Watcher
Watcher is a passive web security scanner. It does not attack with loads of requests or crawl the target website. It is not a separate tool but is an add-on of Fiddler. So you need to first install Fiddler and then install Watcher to use it.
It quietly analyzes the request and response from the user-interaction and then makes a report on the application. As it is a passive scanner, it will not affect the website’s hosting or cloud infrastructure.
Download watcher and its source code: http://websecuritytool.codeplex.com/
X5S
X5s is also a Fiddler add-on which aims to provide a way to find cross-site scripting vulnerabilities. This is not an automatic tool. So, you need to understand how encoding issues can lead to XSS. You need to manually find the injection point and then check where XSS can be in the application.
We have covered the X5S in a previous post. So, you can refer to that article to read more about X5S and XSS.
Download X5S and source code from codeplex: http://xss.codeplex.com/
You can also refer to this official guide to know how to use X5S:http://xss.codeplex.com/wikipage?title=tutorial
Arachni
Arachni is an open source tool developed for providing a penetration testing environment. This tool can detect various web application security vulnerabilities. It can detect various vulnerabilities like SQL Injection, XSS, Local File inclusion, remote file inclusion, unvalidated redirect, and many others.
Download this tool here: http://www.arachni-scanner.com/
Final Word
These are the best open source web application security testing tools. I tried my best to list all the tools available online. If a tool was not updated for many years, I did not mention it here. Because if a tool is more than 10 years old, it can create compatibility issues in the recent environment. If you are a developer, you can also join the developers’ community of these tools and help these tools to grow. By helping these tools, you will also increase your knowledge and expertise.
If you want to start penetration testing, I will recommend using Linux distributions which have been created for penetration testing. These environments are backtrack, gnacktrack, backbox and blackbuntu. All these tools come with various free and opensource tools for website penetration testing. So, you can go with those environments.
If you think I forgot to mention an important tool, you can drop a comment and I will try to add it.