Learn, Share and Keep Learning
| Application Security Testing |
|
This article was written by Anamika Chowdhury from HCL India. Application security issues are increasing threat now days. This is caused primarily by security bugs in an application's code. Application security vulnerabilities can allow a client to see another client's data. They can let hackers run queries on an application's back-end database, and possibly even take over the Web server itself. Most organizations leave the discovery of Web application security issues to a dedicated security team, which tests the applications before they go live. Fixing the found issues then requires those teams to push the issues back to developers to perform a full iteration of late code changes, resulting in very high costs to fix what are often the simplest security bugs. The primary reason for testing the security of an operational system is to identify potential vulnerabilities and subsequently repair them This White Paper focuses on black box testing technologies that are unique to software security testing. INTRODUCTIONSystem testing ensures that the entire integrated software system meets requirements. It tests a configuration to ensure known and predictable results. System testing is based on process descriptions and flows, emphasizing pre-driven process links and integration points. Within the security test arena, black box testing is normally associated with activities that occur during the pre-deployment test phase (system test) or on a periodic basis after the system has been deployed. Black box security tests are conducted to identify and resolve potential security vulnerabilities before deployment or to periodically identify and resolve security issues within deployed systems. Security testing is concerned with checking that the system and its data are protected from accidental or malicious damage. The system must be secure against unanticipated as well as anticipated attacks. Security testing may be carried out by inviting people to try to penetrate the system through security loopholes. Typically, vulnerabilities are exploited repeatedly by attackers to attack weaknesses that organizations have not patched or corrected. A report in a SANS Security Alert, dated May 2000, provides a discussion of this issue: “A small number of flaws in software programs are responsible for the vast majority of successful Internet attacks. A few software vulnerabilities account for the majority of successful attacks because attackers don't like to do extra work. They exploit the best-known flaws with the most effective and widely available attack tools. And they count on organizations not fixing the problems.” Businesses have a legitimate reason to be concerned about potential security vulnerabilities within their systems. A great number of these incidents were due to the widespread use of automated attack tools that have simplified security scans and attacks and allowed them to rapidly be employed against Internet-connected computers and applications. While the number of reported security incidents continues to rise, the CSI/FBI noted that the total monetary loss reported by 639 companies in 2005 was significant at $130,104,542 [Gordon 05]. In addition, CSI/FBI noted that the average financial loss of reporting organizations subjected to theft of proprietary information was $355,552, and those reporting losses due to unauthorized access to information averaged $303,234. These figures describe significant financial losses that are the direct result of security incidents. Although security testing on its own is not a suitable substitute for using security best practices throughout the SDLC, black box test tools can help an organization begin to understand and address potential security issues within their systems. These tools allow testers to efficiently and in an automated manner conduct security scans for both known and unknown security vulnerabilities that may adversely impact an organization’s business. Armed with the results of the black box test effort, organizations can better understand and address the risks posed to their business. CONCEPTS OF SECURITY TESTINGEvaluation of system security can and should be conducted at different stages of system development. Securing and operating today’s complex systems is challenging and demanding. Mission and operational requirements to deliver services and applications swiftly and securely have never been greater. Organizations have invested precious resources and scarce skills in various necessary security efforts such as risk analysis, certification, accreditation, security architectures, policy development, and other security efforts. There are four Basic Concepts of Security Testing
The term vulnerability is applied to a weakness in a system which allows an attacker to violate the integrity of that system. Vulnerabilities may result from weak password, software bugs, a script code injection, or a SQL injection. Below are some of the causes of Security failure:
Below are the main types of security testing:
Often, several of these testing techniques are used together to gain more comprehensive assessment of the overall network security posture. Security testing is often regarded as something that takes place at the end of the software development life cycle. However, greater success can be achieved by integrating security testing throughout the life cycle. As with any kind of defect, software vulnerabilities are easier and cheaper to address if they are found earlier. Following are some activities, which needs to be done in SDLC:
TOOLS FOR SECURITY TESTINGBlack box test activities almost universally involve the use of tools to help testers identify potential security vulnerabilities within a system. Among the existing available toolsets, there are subsets of tools that focus on specific areas, including network security, database security, security subsystems, and web application security. There are many excellent freeware (no fee required for license) and shareware (requires nominal fee for license) security tools. However, great care should be used in selecting freely available tools. Generally, freeware/shareware tools should not be used unless an expert has reviewed the source code or they are widely used and are downloaded from a known safe repository. The tools are frequently used in both the pre-deployment and post-deployment test cycles. Some of these tools provide rather sophisticated functionality, including capabilities to develop and enforce organization security policies, the ability to create custom rules, the automated scheduling of application security tests, and comprehensive vulnerability databases that attempt to address zero-day attacks. There are number of applications which have been developed to assist the black box tester with locating web application vulnerabilities. Some of the tools are:
CONCLUSIONSecurity Testing of any developed system (or a system under development) is all about finding out all the potential loopholes and weaknesses of the system, which might result into loss/theft of highly sensitive information or destruction of the system by an intruder/outsider. Security Testing helps in finding out all the possible vulnerabilities of the system and help developers in fixing those problems. Security test helps in finding out loopholes that can cause loss of important information and allow any intruder enter into the systems. Security Testing helps in improving the current system and also helps in ensuring that the system will work for longer time (or it will work without hassles for the estimated time). Security Testing doesn’t only include conformance of resistance of the systems your organization uses, it also ensures that people in your organization understand and obey security policies. If involved right from the first phase of system development life cycle, security testing can help in eliminating the flaws into design and implementation of the system and in turn help the organization in blocking the potential security loopholes in the earlier stage. This is beneficial to the organization almost in all aspects (financially, security and even efforts point of view). REFRENCES* As shared with us by Anamika. We appreciate time she spent on writing this and sharing this with rest of us. Thanks Anamika. |
| Last Updated on Monday, 23 March 2009 10:13 |