Tuesday, May 21, 2019

An Approach to Detect and Prevent Sql Injection Attacks in Database Using Web Service

IJCSNS foreign journal of Computer Science and meshing irregularurity, VOL. 11 No. 1, January 2011 197 An snuggle to Detect and Prevent SQL dead reckoning Attacks in Database Using electronic network work IndraniBalasundaram 1 Dr. E. Ramaraj2 1 Lecturer, Department of Computer Science, Madurai Kamaraj University, Madurai 2 Director of Computer Centre Alagappa University, Karaikudi. Abstract SQL dead reckoning is an attack methodology t lid targets the information residing in a database by dint of the firewall that shields it. The attack takes advantage of poor input validation in code and ebsite administration. SQL dead reckoning Attacks occur when an attacker is able to insert a series of SQL statements in to a interrogation by manipulating enjoymentr input data in to a mesh- base coat, attacker advise take advantages of web finish programming security flaws and pass unexpected malicious SQL statements through a web use for execution by the backend database. This paper proposes a novel specification-based methodology for the streak of SQL injection Attacks. The two to the full(prenominal)est degree important advantages of the new progression against xisting analogous mechanisms are that, first, it checks all forms of SQL injection attacks second, Current proficiency does not let in the exploiter to access database directly in database waiter. The innovative proficiency weathervane military service oriented XPATH authentication Technique is to detect and prevent SQLInjection Attacks in database the deployment of this technique is by generating functions of two filtration models that are progressive Guard and usefulness sensing element of application scripts additionally allowing seam little integration with rate of flowly-deployed systems. General TermsLanguages, Security, Verification, Experimentation. Keywords Database security, ball-wide web, web application security, SQL injection attacks, Run sentence Monitoring changes t o data. The fear of SQL injection attacks has become increasely frequent and serious. . SQL-Injection Attacks are a class of attacks that many of these systems are highly vulnerable to, and in that respect is no known fool-proof defend against such attacks. Compromise of these web applications establishs a serious threat to organizations that view as deployed them, and also to substance abusers who trust these systems to store confidential data. The meshwork applications hat are vulnerable to SQL-Injection attacks user inputs the attackers embeds commands and gets executed 4. The attackers directly access the database underlying an application and leak or alter confidential information and execute malicious code 12. In some cases, attackers even use an SQL Injection vulnerability to take control and corrupt the system that hosts the electronic network application. The increasing number of web applications falling prey to these attacks is alarmingly high 3 Prevention of SQLIAs is a major challenge. It is difficult to see and enforce a uncompromising defensive coding discipline. Many olutions based on defensive coding address only a subset of the possible attacks. Evaluation of Web redevelopment Oriented XPATH Authentication Technique has no code modification as well as automation of detection and prevention of SQL Injection Attacks. Recent U. S. industry regulations such as the Sarbanes-Oxley Act 5 pertaining to information security, try to enforce strict security compliance by application vendors. 1. Introduction 1. 1 SAMPLE APPLICATION training is the most important business asset in todays environment and achieving an appropriate level of education Security. SQL-Injection Attacks (SQLIAs) re one of the topmost threats for web application security. For example financial fraud, theft confidential data, deface website, sabotage, espionage and cyber terrorism. The evaluation process of security tools for detection and prevention of SQLIAs. To implem ent security guidelines inside or outside the database it is recommended to access the sensitive databases should be monitored. It is a hacking technique in which the attacker adds SQL statements through a web applications input fields or hidden parameters to gain access to resources or make Application that throw SQL Injection vulnerability.The example refers to a fairly simple vulnerability that could be prevented using a straightforward coding fix. This example is simply use for illustrative purposes because it is easy to understand and general enough to illustrate many different types of attacks. The code in the example uses the input parameters LoginID, password to dynamically build an SQL query and submit it to a database. For example, if a user submits loginID and password as hidden, and 123, the application dynamically builds and submits the query Manuscript received January 5, 2011 Manuscript revised January 20, 2011 198IJCSNS International Journal of Computer Science a nd Network Security, VOL. 11 No. 1, January 2011 have * from FROM loginID=secret AND pass1=123 user_info WHERE If the loginID and password jibe the corresponding entry in the database, it will be redirect to user_main. aspx page other wise it will be redirect to error. aspx page. 1. dim loginId, Password as string 2. loginId = Text1. Text 3. password = Text2. Text 3. cn. open() 4. qry=select * from user_info where LoginID= & loginID & and pass1= & password & 5. cmd=new sqlcommand(qry,cn) 6. rd=cmd. executereader() 7. if (rd. Read=True) Then 8. Response. redirect(user_main. spx) 9. else 10. Response. redirect(error. aspx) 11. end if 12. cn. close() 13. cmd. dispose() b. Union Query In union-query attacks, Attackers do this by injecting a statement of the form UNION SELECT because the attackers completely control the second/injected query they basis use that query to retrieve information from a specified skirt. The go of this attack is that the database returns a dataset that i s the union of the results of the original first query and the results of the injected second query. Example An attacker could inject the text UNION SELECT pass1 from user_info where LoginID=secret - nto the login field, which produces the following query SELECT pass1 FROM user_info WHERE loginID= UNION SELECT pass1 from user_info where LoginID=secret AND pass1= Assuming that there is no login equal to , the original first query returns the futile set, whereas the second query returns data from the user_info table. In this case, the database would return column pass1 for account secret. The database takes the results of these two queries, unions them, and returns them to the application. In many applications, the effect of this operation is that the value for pass1 is displayed on with the account informationFigure 1 Example of . NET code implementation. 1. 2 Techniques of SQLIAS Most of the attacks are not in isolated they are employ unitedly or sequentially, depending on th e specific goals of the attacker. a. Tautologies Tautology-based attack is to inject code in one or more conditional statements so that they always evaluate to true. The most common usages of this technique are to bypass authentication pages and extract data. If the attack is successful when the code either displays all of the returned records or performs some action if at least one record is returned. Example In this example attack, an attacker submits or 1=1 -The Query for Login mode is SELECT * FROM user_info WHERE loginID= or 1=1 AND pass1= The code injected in the conditional (OR 1=1) transforms the entire WHERE clause into a tautology the query evaluates to true for each row in the table and returns all of them. In our example, the returned set evaluates to a not null value, which causes the application to conclude that the user authentication was successful. Therefore, the application would invoke method user_main. aspx and to access the application 6 7 8. c. Stored Proce dures SQL Injection Attacks of this type try to execute stored procedures present in the database.Today, most database vendors ship databases with a standard set of stored procedures that extend the functionality of the database and allow for interaction with the operational system. Therefore, once an attacker determines which backend database is in use, SQLIAs can be crafted to execute stored procedures provided by that specific database, including procedures that interact with the operating system. It is a common misconception that using stored procedures to write Web applications renders them invulnerable to SQLIAs. Developers are often surprised to find that their stored procedures can be just as vulnerable o attacks as their normal applications 18, 24. Additionally, because stored procedures are often written in special scripting lyric poems, they can contain other types of vulnerabilities, such as buffer overflows, that allow attackers to run arbitrary code on the emcee or escalate their privileges. CREATE number DBO. UserValid(LoginID varchar2, pass1 varchar2 AS EXEC(SELECT * FROM user_info WHERE loginID= emailprotected+ and pass1= emailprotected+ )GO Example This example demonstrates how a parameterized stored procedure can be exploited via an SQLIA. In the example, we assume that the query string constructed at ines 5, 6 and 7 of our example has been replaced by a call IJCSNS International Journal of Computer Science and Network Security, VOL. 11 No. 1, January 2011 to the stored procedure defined in Figure 2. The stored procedure returns a true/ phoney value to indicate whether the users credentials authenticated correctly. To launch an SQLIA, the attacker simply injects occlusion into either the LoginID or pass1 fields. This injection causes the stored procedure to dedicate the following query SELECT * FROM user_info WHERE loginID=secret AND pass1= SHUTDOWN -At this point, this attack works like a piggy-back attack.The first query is ex ecuted normally, and then the second, malicious query is executed, which results in a database shut down. This example shows that stored procedures can be vulnerable to the comparable range of attacks as traditional application code 6 11 12 10 13 14 15. d. Extended stored procedures IIS(Internet Information helps) Reset There are several extensive stored procedures that can cause permanent damage to a system19. Extended stored procedure can be executed by using login form with an injected command as the LoginId LoginIdexecmaster.. xp_xxx-Password some(prenominal)thing LoginIdexecmaster.. p_cmdshelliisreset-PasswordAnything select password from user_info where LoginId= exec master.. xp_cmdshell iisreset and Password= This Attack is apply to stop the service of the web legion of finical Web application. Stored procedures primarily consist of SQL commands, while XPs can provide entirely new functions via their code. An attacker can take advantage of extended stored procedure by entering a suitable command. This is possible if there is no proper input validation. xp_cmdshell is a built-in extended stored procedure that allows the execution of arbitrary command lines. For example exec master.. p_cmdshell dir will obtain a directory listing of the current operative directory of the SQL Server process. In this example, the attacker may try entering the following input into a search form can be used for the attack. When the query string is parsed and sent to SQL Server, the server will process the following code SELECT * FROM user_info WHERE input text = exec master.. xp_cmdshell LoginId /DELETE 199 Here, the first adept acknowledgment entered by the user closes the string and SQL Server executes the next SQL statements in the batch including a command to delete a LoginId to the user_info table in the database. . twitch Encodings Alternate encodings do not provide any unique way to attack an application they are simply an enabling technique that allows att ackers to evade detection and prevention techniques and exploit vulnerabilities that might not otherwise be exploitable. These evasion techniques are often necessary because a common defensive coding practice is to view for certain known bad characters, such as superstar quotes and comment operators. To evade this defense, attackers have employed tag on methods of encoding their attack strings (e. g. , using hex, ASCII, and Unicode character encoding).Common scanning and detection techniques do not try to evaluate all specially encoded strings, consequently allowing these attacks to go undetected. Contributing to the problem is that different works in an application have different ways of handling alternate encodings. The application may scan for certain types of escape characters that represent alternate encodings in its language domain. Another layer (e. g. , the database) may use different escape characters or even completely different ways of encoding. For example, a datab ase could use the expression char(120) to represent an alternately-encoded character x, but char(120) has no special meaning in the application languages context. An effective code-based defense against alternate encodings is difficult to implement in practice because it requires developers to consider of all of the possible encodings that could affect a given query string as it passes through the different application layers. Therefore, attackers have been very successful in using alternate encodings to conceal their attack strings. Example Because every type of attack could be represented using an alternate encoding, here we simply provide an example of how esoteric an alternativelyencoded attack could appear.In this attack, the following text is injected into the login field secret exec(0x73687574646f776e) . The resulting query generated by the application is SELECT * FROM user_info WHERE loginID=secret exec(char(0x73687574646f776e)) AND pass1= This example makes use of the ch ar() function and of ASCII hexadecimal encoding. The char() function takes as a parameter an integer or hexadecimal encoding of a character and returns an sheath of that character. The stream of numbers in the second part of the injection is the 200 IJCSNS International Journal of Computer Science and Network Security, VOL. 11 No. , January 2011 ASCII hexadecimal encoding of the string SHUTDOWN. Therefore, when the query is interpreted by the database, it would result in the execution, by the database, of the SHUTDOWN command. References 6 f. Deny Database service This attack used in the websites to have a go at it a denial of service by shutting down the SQL Server. A powerful command recognized by SQL Server is SHUTDOWN WITH NOWAIT 19. This causes the server to shutdown, at one time stopping the Windows service. After this command has been issued, the service must be manually restarted by the administrator. select password from user_info whereLoginId=shutdown with nowait and Password=0 The character sequence is the single line comment sequence in Transact SQL, and the character denotes the end of one query and the beginning of another. If he has used the default sa account, or has acquired the required privileges, SQL server will shut down, and will require a restart in order to function again. This attack is used to stop the database service of a particular web application. Select * from user_info where LoginId=1xp_cmdshell format c/q /yes drop database mydb AND pass1 = 0 This command is used to format the C drive used by the ttacker. 2. think Work There are animate techniques that can be used to detect and prevent input manipulation vulnerabilities. 2. 1 Web Vulnerability examine Web vulnerability scanners crawl and scan for web vulnerabilities by using software agents. These tools perform attacks against web applications, usually in a black-box fashion, and detect vulnerabilities by observing the applications response to the attacks 18. Howeve r, without exact knowledge about the internal structure of applications, a black-box approach might not have enough test cases to let on existing vulnerabilities and also have alse positives. 2. 2 Intrusion Detection System (IDS) Valeur and colleagues 17 propose the use of an Intrusion Detection System (IDS) to detect SQLIA. Their IDS system is based on a machine learning technique that is trained using a set of typical application queries. The technique builds models of the typical queries and then monitors the application at runtime to identify queries that do not match the model in that it builds expected query models and then checks dynamically-generated queries for compliance with the model. Their technique, however, like most techniques based on learning, can generate large umber of false positive in the absence of an optimal training set. Su and Wassermann 8 propose a solution to prevent SQLIAs by analyzing the parse tree of the statement, generating custom validation code, and wrapping the vulnerable statement in the validation code. They conducted a study using five real world web applications and applied their SQLCHECK wrapper to each application. They found that their wrapper stopped all of the SQLIAs in their attack set without generating any false positives. While their wrapper was effective in preventing SQLIAs with modern attack structures, we hope to shift the focus rom the structure of the attacks and onto removing the SQLIVs. 2. 3 Combined Static and Dynamic Analysis. AMNESIA is a model-based technique that combines static analysis and runtime monitoring 17. In its static phase, AMNESIA uses static analysis to build models of the different types of queries an application can legally generate at each point of access to the database. In its dynamic phase, AMNESIA intercepts all queries before they are sent to the database and checks each query against the statically built models. Queries that debase the model are identified as SQLIAs and pr evented from executing on the database.In their evaluation, the authors have shown that this technique performs well against SQLIAs. The primary limitation of this technique is that its success is pendant on the accuracy of its static analysis for building query models. Certain types of code obfuscation or query development techniques could make this step less precise and result in both false positives and false negatives Livshits and Lam 16 use static analysis techniques to detect vulnerabilities in software. The basic approach is to use information flow techniques to detect when tainted input has been used to construct an SQL query. These ueries are then swagged as SQLIA vulnerabilities. The authors demonstrate the viability of their technique by using this approach to find security vulnerabilities in a benchmark suite. The primary limitation of this approach is that it can detect only known patterns of SQLIAs and, IJCSNS International Journal of Computer Science and Network Sec urity, VOL. 11 No. 1, January 2011 because it uses a conservative analysis and has limited support for untainting operations, can generate a relatively high amount of false positives. Wassermann and Su propose an approach that uses static analysis combined with automated reasoning to verify that he SQL queries generated in the application layer cannot contain a tautology 9. The primary drawback of this technique is that its scope is limited to detecting and preventing tautologies and cannot detect other types of attacks. 3. Proposed Technique This Technique is used to detect and prevent SQLIAs with runtime monitoring. The solution insights behind the technique are that for each application, when the login page is redirected to our checking page, it was to detect and prevent SQL Injection attacks without stopping sure accesses. Moreover, this technique proved to be efficient, dire only a low overhead on the Web pplications. The contribution of this work is as follows A new automate d technique for preventing SQLIAs where no code modification required, Webservice which has the functions of db_2_XMLGenrerator and XPATH_ Validator such that it is an XML query language to select specific parts of an XML document. XPATH is simply the ability to traverse nodes from XML and obtain information. It is used for the temporary fund of sensitive datas from the database, Active Guard model is used to detect and prevent SQL Injection attacks. Service Detector model allow the authenticate or legitimate user to access the web applications.The SQLIAs are captured by altered logical flow of the application. Innovative technique (figure1) monitors dynamically generated queries with Active Guard model and Service Detector model at runtime and check them for compliance. If the Data Comparison violates the model then it represents potential SQLIAs and prevented from executing on the database. This proposed technique consists of two filtration models to prevent SQLIAS. 1) Active Gu ard filtration model 2) Service Detector filtration model. The steps are summarized and then describe them in more stop in following sections. a. Active Guard Filtration ModelActive Guard Filtration Model in application layer build a efficiency detector to detect and prevent the strength characters or Meta characters to prevent the malicious attacks from accessing the datas from database. b. Service Detector Filtration Model Service Detector Filtration Model in application layer validates user input from XPATH_Validator where the Sensitive datas are stored from the Database at second 201 level filtration model. The user input fields compare with the data existed in XPATH_Validator if it is identical then the Authenticated /legitimate user is allowed to proceed. c. Web Service LayerWeb service builds two types of execution process that are DB_2_Xml generator and XPATH_ Validator. DB_2_Xml generator is used to create a separate temporary storage of Xml document from database where the Sensitive datas are stored in XPATH_ Validator, The user input field from the Service Detector compare with the data existed in XPATH_ Validator, if the datas are similar XPATH_ Validator send a flag with the count iterator value = 1 to the Service Detector by signifying the user data is valid. Procedures Executed in Active Guard maneuver stripQuotes(ByVal strWords) stripQuotes = Replace(strWords, , ) Return stripQuotes fire Function Function killChars(ByVal strWords) wearisome arr1 As youthful ArrayList arr1. Add(select) arr1. Add() arr1. Add(drop) arr1. Add() arr1. Add(insert) arr1. Add(delete) arr1. Add(xp_) arr1. Add() Dim i As Integer For i = 0 To arr1. Count 1 strWords = Replace(strWords, arr1. Item(i), , , , CompareMethod. Text) Next Return strWords End Function IJCSNS International Journal of Computer Science and Network Security, VOL. 11 No. 1, January 2011 202 Figure 2 proposed Architecture Procedures Executed in Service Detector navi. Compile(/Main_Tag/DetailsLogi nId= & userName & and Password= & Password & ) _Public Sub Db_2_XML() adapt=New SqlDataAdapter(select LoginId,Password from user_info, cn) Dim nodes As XPathNodeIterator = navi. Select(expr) Dim count2 As Integer = nodes. Count. ToString() Return count2 dst = New DataSet(Main_Tag) End Function adapt. Fill(dst, Details) dst. WriteXml(Server. MapPath(XML_DATAXML_D ATA. xml)) End Sub Procedures Executed in Web Service _ Public Function XPath_XML_Validation(ByVal userName As String, ByVal Password As Integer) As Integer Dim xpathdoc As New XPathDocument(Server. MapPath(XML_DATAX ML_DATA. xml)) Dim navi As XPathNavigator = xpathdoc. CreateNavigator() Dim expr As XPathExpression = . Identify hotspot This step performs a simple scanning of the application code to identify hotspots. Each hotspot will be verified with the Active Server to remove the susceptibility character the sample code (figure 2) states two hotspots with a single query execution. (In . NET based applications, interactio ns with the database occur through calls to specific methods in the System. Data. Sqlclient namespace, 1 such as Sqlcommand- . ExecuteReader (String)) the hotspot is instrumented with monitor code, which matches dynamically generated queries against query models. If a generated query is matched with Active Guard, then it is onsidered an attack. 3. 1 Comparison of Data at Runtime Monitoring When a Web application fails to properly sanitize the parameters, which are passed to, dynamically created SQL statements (even when using parameterization techniques) it is possible for an attacker to alter the construction of back-end SQL statements. IJCSNS International Journal of Computer Science and Network Security, VOL. 11 No. 1, January 2011 When an attacker is able to interchange an SQL statement, the statement will execute with the same rights as the application user when using the SQL server to execute commands that interact with the operating system, the rocess will run with the same permissions as the component that executed the command (e. g. , database server, application server, or Web server), which is often highly privileged. Current technique (Figure 1) append with Active Guard, to validate the user input fields to detect the Meta character and prevent the malicious attacker. Transact-SQL statements will be prohibited directly from user input. For each hotspot, statically build a Susceptibility detector in Active Guard to check any malicious strings or characters append SQL tokens (SQL keywords and operators), delimiters, or string tokens to the legitimate command.Concurrently in Web service the DB_2_Xml Generator generates a XML document from database and stored in X_PATH Validator. Service Detector receive the validated user input from Active Guard and send through the protocol slime (Simple Object Access Protocol) to the web service from the web service the user input data compare with XML_Validator if it is identical the XML_Validator send a flag as a iterator count value = 1 to Service Detector through the SOAP protocol then the legitimate/valid user is Authenticated to access the web application, If the data mismatches the XML_Validator send a flag as a count alue = 0 to Service Detector through the SOAP protocol then the illegitimate/invalid user is not Authenticated to access the web application. In figure 3 In the existing technique query validation occur to validate a Authenticated user and the user directly access the database but in the current technique, there is no query validation . From the Active Guard the validated user input fields compare with the Service Detector where the Sensitive data is stored, db_2_XML Generator is used to generate a XML file and initialize to the class XPATH document the instance Navigator is used to search by using cursor in the selected XML document.With in the XPATH validator, Compile is a method which is used to match the element with the existing document. The navigator will be creat ed in the xpathdocument using select method result will be redirected to the XPATH node iterator. The node iterator count value may be 1 or 0, If the flag value result in Service Detector as 1 then the user consider as Legitimate user and allowed to access the web application as the same the flag value result in Service Detector as 0 then the user consider as Malicious user and reject/ blackball from accessing the web application If the script builds an SQL query by concatenating hard-coded trings together with a string entered by the user, As long as injected SQL code is syntactically correct, tamper cannot be detected programmatically. String concatenation is the primary point of entry for script injection Therefore, 203 we Compare all user input carefully with Service Detector (Second filtration model). If the user input and Sensitive datas are identical then executes constructed SQL commands in the Application server. Existing techniques directly allows accessing the database i n database server after the Query validation. Web Service Oriented XPATH Authentication Technique does not allow directly to ccess database in database server. 4. EVALUATIONS The proposed technique is deployed and tried few endeavor runs on the web server. Table 1 SQLIAS Prevention Accuracy SQL Injection Types Unprotected Protected 1. TAUTOLOGIES Not Prevented Prevented 2. PIGGY BACKED QUERIES Not Prevented Prevented 3. STORED PROCEDURE Not Prevented Prevented 4. ALTERNATIVE ENCODING Not Prevented Prevented 5. UNION Not Prevented Prevented Table 2 Execution succession comparison for proposed technique Total Number of Entries in Database Execution Time in Millisecond Existing Proposed Technique Technique 1000 1640000 46000 2000 1420000 93000 3000 1040000 6000 4000 1210000 62000 5000 1670000 78000 6000 1390000 107000 The above given table 2 illustrate the execution time taken for the proposed technique with the existing technique. 4. 1 SQLIA Prevention Accuracy Both the protected an d unprotected web Applications are tested using different types of SQLIAs namely use of Tautologies, Union, Piggy-Backed Queries, Inserting additional SQL statements, Second-order SQL injection and various other SQLIA s. Table 1 shows that the proposed technique prevented all types of SQLIA s in all cases. The proposed technique is thus a secure and robust solution to defend against SQLIAsIJCSNS International Journal of Computer Science and Network Security, VOL. 11 No. 1, January 2011 204 4. 2 Execution Time at Runtime Validation The runtime validation incurs some overhead in terms of execution time at both the Web Service Oriented XPATH Authentication Technique and SQL-Query based Validation Technique. Taken a sample website ETransaction measured the extra computation time at the query validation, this delay has been amplified in the represent (figure 4 and figure5) to distinguish between the Time delays using bar chart shows that the data validation in XML_Validator performs bet ter than query validation.In Query validation(figure5) the user input is generated as a query in script locomotive then it gets parsed in to separate tokens then the user input is compared with the statistical generated data if it is malicious generates error reporting. Web Service Oriented XPATH Authentication Technique (figure 4) states that user input is generated as a query in script engine then it gets parsed in to separate tokens, and send through the protocol SOAP to Susceptibility Detector, then the validated user data is sequentially send to Service Detector through the protocol SOAP then the user input is ompared with the sensitive data, which is temporarily stored in dataset. If it is malicious data, it will be prevented otherwise the legitimate data is allowed to access the Web application. 5. CONCLUSION SQL Injection Attacks attempts to modify the parameters of a Web-based application in order to alter the SQL statements that are parsed to retrieve data from the databa se. Any procedure that constructs SQL statements could potentially be vulnerable, as the diverse nature of SQL and the methods available for constructing it provide a wealth of coding options. 1800000 Execution time in Milli Sec 1600000 1400000 1200000 000000 Proposed Technique Existing Technique 800000 600000 400000 200000 0 1000 2000 3000 4000 5000 6000 Total Number of Entries in Database Figure4 Execution Time comparison for proposed technique (data validation in X-path) with existing technique The primary form of SQL injection consists of direct insertion of code into parameters that are concatenated with SQL commands and executed. This technique is used to detect and prevent the SQLI flaw (Susceptibility characters & exploiting SQL commands) in Susceptibility Detector and prevent the Susceptibility attacker Web Service Oriented XPATH Authentication Technique hecks the user input with valid database which is stored separately in XPATH and do not affect database directly then the validated user input field is allowed to access the web application as well as used to improve the performance of the server side validation This proposed technique was able to suitably classify the attacks that performed on the applications without blocking legitimate accesses to the database (i. e. , the technique produced neither false positives nor false negatives). These results show that our technique represents a promising approach to countering SQLIAs and motivate further work in this irection References 1 William G. J. Halfond and Alessandro Orso , AMNESIA Analysis and Monitoring for Neutralizing SQLInjection Attacks, ASE05, November 711, 2005 2 William G. J. Hal fond and Alessandro Orso, A Classification of SQL injection attacks and countermeasures,proc IEEE intl Symp. Secure Software Engg. , Mar. 2006. IJCSNS International Journal of Computer Science and Network Security, VOL. 11 No. 1, January 2011 3 Muthuprasanna, Ke Wei, Suraj Kothari, Eliminating SQL Injection Attack s A TransparentDefenceMechanism, SQL Injection Attacks Prof. Jim Whitehead CMPS 183. Spring 2006, May 17, 2006 4 William G. J. Hal fond, Alessandro Orso, WASP Protecting Web Applications Using Positive Tainting and Syntax-Aware Evaluation IEEE Software Engineering, VOL. 34, NO. 1January/February 2008 5 K. Beaver, Achieving Sarbanes-Oxley compliance for Web applications, http//www. spidynamics. com/support/whitepapers/, 2003 6 C. Anley, Advanced SQL Injection In SQL Server Applications, White paper, Next Generation Security Software Ltd. , 2002. 7 W. G. J. Halfond and A. Orso, Combining Static Analysis and Runtime Monitoring to retort SQL Injection Attacks, 3rd International Workshop on Dynamic Analysis, 2005, pp. 7 8 Z. Su and G. Wassermann, The Essence of Command Injection Attacks in Web Applications, 33rd ACM SIGPLAN-SIGACT Symposium on Principles of schedule Languages, 2006, pp. 372-382. 9 G. Wassermann and Z. Su. An Analysis Framework for Security in Web Applications. In Proc eedings of the FSE Workshop on Specification and Verification of componentBased Systems (SAVCBS 2004), pages 7078, 2004. 10 P. Finnigan, SQL Injection and Oracle move 1 & 2, Technical Report, Security Focus, November 2002. http//securityfocus. com/infocus/1644 11 F. Bouma, Stored Procedures are Bad, Okay, Technical report,Asp. Net Weblogs, November 2003. http//weblogs. asp. net/fbouma/archive/2003/11/18/38178. as px. 12 E. M. Fayo, Advanced SQL Injection in Oracle Databases, Technical report, Argeniss Information Security, Black Hat Briefings, Black Hat USA, 2005. 13 C. A. Mackay, SQL Injection Attacks and Some Tips on How to Prevent them, Technical report, The Code Project, January 2005. http//www. codeproject. com/cs/database/ qlInjectionAttacks. asp. 14 S. McDonald. SQL Injection Modes of attack, defense, and why it matters. White paper, GovernmentSecurity. org, April 2002. http//www. governmentsecurity. rg/articles/SQLInjectionM odesofAttackDefenceandWhyItMatters. php 15 S. La bs. SQL Injection. White paper, SPI Dynamics, Inc. ,2002. http//www. spidynamics. com/assets/documents/Whitepaper SQLInjection. pdf. 16 V. B. Livshits and M. S. Lam. Finding Security Errors in Java Programs with Static Analysis. In Proceedings of the 14th Usenix Security Symposium, pages 271286, Aug. 2005. 17 F. Valeur and D. Mutz and G. Vigna A Learning-Based Approach to the Detection of SQL Attacks, In Proceedings of the Conference on Detection of Intrusions and Malware Vulnerability Assessment (DIMVA), July 2005. 18 Kals, S. Kirda, E. , Kruegel, C. , and Jovanovic, N. 2006. SecuBat a web vulnerability scanner. In Proceedings of the 205 15th International Conference on World Wide Web. WWW 06. ACM Press, pp. 247-256. 19 Sql injection HSC Guides Web App Security Written by Ethical Hacker sunday, 17 February 2008. http//sqlinjections. blogspot. com/2009/04/sql-injection-hscguides-web-app. html. Prof. E. Ramaraj is presently working as a Technology Advisor, Madurai Kamaraj Universit y, Madurai, Tamilnadu, India on lien from Director, computer centre at Alagappa university, Karaikudi. He has 22 historic period teaching experience and 8 years esearch experience. He has presented research papers in more than 50 national and outside(a) conferences and published more than 55 papers in national and international journals. His research areas include Data mining, software engineering, database and network security. B. Indrani received the B. Sc. degree in Computer Science, in 2002 the M. Sc. degree in Computer Science and Information Technology, in 2004. She had completed M. Phil. in Computer Science. She worked as a Research Assistant in Smart and Secure Environment Lab under IIT, Madras. Her current research interests include Database Security.

No comments:

Post a Comment

Note: Only a member of this blog may post a comment.