Expert System Approach on Web Vulnerability Analysis 20103272 / Jong Heon, PARK 20103616 / Hyun Woo, CHO CS548 Advanced Information Security Term Project.

Slides:



Advertisements
Similar presentations
Past, Present and Future By Eoin Keary and Jim Manico
Advertisements

What is code injection? Code injection is the exploitation of a computer bug that is caused by processing invalid data. Code injection can be used by.
HI-TEC 2011 SQL Injection. Client’s Browser HTTP or HTTPS Web Server Apache or IIS HTML Forms CGI Scripts Database SQL Server or Oracle or MySQL ODBC.
Hands-on SQL Injection Attack and Defense HI-TEC July 21, 2013.
Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the OWASP License. The OWASP.
SEC835 OWASP Top Ten Project.
Creating Stronger, Safer, Web Facing Code JPL IT Security Mary Rivera June 17, 2011.
Common Exploits Aaron Cure Cypress Data Defense. SQL Injection.
Information Networking Security and Assurance Lab National Chung Cheng University The Ten Most Critical Web Application Security Vulnerabilities Ryan J.W.
It’s always better live. MSDN Events Securing Web Applications Part 1 of 2 Understanding Threats and Attacks.
Information Networking Security and Assurance Lab National Chung Cheng University 1 Top Vulnerabilities in Web Applications (I) Unvalidated Input:  Information.
Leveraging User Interactions for In-Depth Testing of Web Applications Sean McAllister, Engin Kirda, and Christopher Kruegel RAID ’08 1 Seoyeon Kang November.
Sara SartoliAkbar Siami Namin NSF-SFS workshop July 14-18, 2014.
Introduction to the OWASP Top 10. Cross Site Scripting (XSS)  Comes in several flavors:  Stored  Reflective  DOM-Based.
Injection Attacks by Example SQL Injection and XSS Adam Forsythe Thomas Hollingsworth.
Leveraging User Interactions for In-Depth Testing of Web Application Sean McAllister Secure System Lab, Technical University Vienna, Austria Engin Kirda.
Presenter Deddie Tjahjono.  Introduction  Website Application Layer  Why Web Application Security  Web Apps Security Scanner  About  Feature  How.
OWASP Mobile Top 10 Why They Matter and What We Can Do
W3af LUCA ALEXANDRA ADELA – MISS 1. w3af  Web Application Attack and Audit Framework  Secures web applications by finding and exploiting web application.
Introduction to Application Penetration Testing
Demystifying Backdoor Shells and IRC Bots: The Risk … By : Jonathan.
+ Websites Vulnerabilities. + Content Expand of The Internet Use of the Internet Examples Importance of the Internet How to find Security Vulnerabilities.
The OWASP Way Understanding the OWASP Vision and the Top Ten.
CSCI 6962: Server-side Design and Programming Secure Web Programming.
Lecture 14 – Web Security SFDV3011 – Advanced Web Development 1.
Protecting Web 2.0 Services from Botnet Exploitations Cybercrime and Trustworthy Computing Workshop (CTC), 2010 Second Nguyen H Vo, Josef Pieprzyk Department.
Automatically Hardening Web Applications Using Precise Tainting Anh Nguyen-Tuong Salvatore Guarnieri Doug Greene Jeff Shirley David Evans University of.
1-Vulnerabilities 2-Hackers 3-Categories of attacks 4-What a malicious hacker do? 5-Security mechanisms 6-HTTP Web Servers 7-Web applications attacks.
© All rights reserved. Zend Technologies, Inc. PHP Security Kevin Schroeder Zend Technologies.
November 13, 2008 Ohio Information Security Forum Attack Surface of Web Applications James Walden Northern Kentucky University
IST 210 Web Application Security. IST 210 Introduction Security is a process of authenticating users and controlling what a user can see or do.
Copyright 2007 © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the OWASP License. The OWASP.
Copyright 2007 © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the OWASP License. The OWASP.
Attacking Applications: SQL Injection & Buffer Overflows.
Web Application Security ECE ECE Internetwork Security What is a Web Application? An application generally comprised of a collection of scripts.
Security Scanners Mark Shtern. Popular attack targets Web – Web platform – Web application Windows OS Mac OS Linux OS Smartphone.
Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the OWASP License. The OWASP.
SEC835 Runtime authentication Secure session management Secure use of cryptomaterials.
October 3, 2008IMI Security Symposium Application Security through a Hacker’s Eyes James Walden Northern Kentucky University
nd Joint Workshop between Security Research Labs in JAPAN and KOREA Marking Scheme for Semantic- aware Web Application Security HPC.
Web Applications Testing By Jamie Rougvie Supported by.
Building Secure Web Applications With ASP.Net MVC.
CS526Topic 12: Web Security (2)1 Information Security CS 526 Topic 9 Web Security Part 2.
Web Security Lesson Summary ●Overview of Web and security vulnerabilities ●Cross Site Scripting ●Cross Site Request Forgery ●SQL Injection.
Copyright © The OWASP Foundation This work is available under the Creative Commons SA 2.5 license The OWASP Foundation OWASP Denver February 2012.
Module: Software Engineering of Web Applications Chapter 3 (Cont.): user-input-validation testing of web applications 1.
CIT 380: Securing Computer SystemsSlide #1 CIT 380: Securing Computer Systems Web Security.
INFO 344 Web Tools And Development CK Wang University of Washington Spring 2014.
Example – SQL Injection MySQL & PHP code: // The next instruction prompts the user is to supply an ID $personID = getIDstringFromUser(); $sqlQuery = "SELECT.
Intro to Web Application Security. iHostCodex Web Services - CEO Project-AG – CoFounder OWASP Panay -Chapter Leader -Web Application Pentester -Ethical.
Session 11: Cookies, Sessions ans Security iNET Academy Open Source Web Development.
Do not try any of the techniques discussed in this presentation on a system you do not own. It is illegal and you will get caught.
Page 1 Ethical Hacking by Douglas Williams. Page 2 Intro Attackers can potentially use many different paths through your application to do harm to your.
Javascript worms By Benjamin Mossé SecPro
Google’s Gruyere1 : An XSS Example Presented by: Terry Gregory
Web Application Security
Module: Software Engineering of Web Applications
Web Application Vulnerabilities
Module: Software Engineering of Web Applications
Web Application Vulnerabilities, Detection Mechanisms, and Defenses
Chapter 7: Identifying Advanced Attacks
TOPIC: Web Security (Part-4)
PHP: Security issues FdSc Module 109 Server side scripting and
CSC 495/583 Topics of Software Security Intro to Web Security
WWW安全 國立暨南國際大學 資訊管理學系 陳彥錚.
Exploring DOM-Based Cross Site Attacks
Presentation transcript:

Expert System Approach on Web Vulnerability Analysis / Jong Heon, PARK / Hyun Woo, CHO CS548 Advanced Information Security Term Project Presentation

Contents Motivation Problem we meet Existing System Our Expert System Comparison Conclusion 2

Motivation In recent years, web hacking is changing more delicate and automatic Spread malignant code, Personal information, Hacking and phishing for monetary profit Small businesses, lack of manpower in information security is became main target of hacker Web vulnerability – SQL Injection, XSS(file upload), Packet modification 3

Motivation Number of vulnerability detection recent 5years (KISA) 4

Motivation Homepage Modification attack for recent 5years (KISA) 5

Motivation Worm, VirusSpam relayPhishing Simple invasion Homepage modification Malignant code 6

Problem we meet Still most of web is Exposed to simple hacking technique Get personal information by packet modification 7

Problem we meet Still most of web is Exposed to simple hacking technique Critical exploit of Payment module - Use weak cryptograph algorithm 8

Problem we meet Still most of web is Exposed to simple hacking technique Critical exploit of Payment module In some web hard server Ex) ity.co.kr/ 9

Problem we meet Still most of web is Exposed to simple hacking technique – Most of web hacking is started with testing the input value Script code(XSS), SQL injection… – Possibility of falsifying packet data Packet is encrypted or not. – Some web application vulnerabilities cannot be solved by IDS, Firewall Practical need _ Web application security – Solution for web application vulnerability(SQL injection, XSS, …) – Information Security Tool for web developer(not for security Expert) – Core function, modifying code in develop phase(bottom up approach) – Overcome public IDS and Firewall 10

Problem we meet Public IDS and Firewall Clients, Hacker Fire wall Web Server Web app Web application *SQL Injection ID:Admin PWD : ‘or 1=1-- *Web Application Firewall(WAF) WAF is do not modifying web application Rule setup is difficult and highly need security experience Heavy load for web server 11

Existing System Relative research – OWASP Top 10 // Web application Standard The OWASP Top Ten provides a powerful awareness document for web application security. – WASC, NSS Group(Fire wall Testing) 10 // Web application Standard – KrCERT/CC, Castle 2009 //Web application Standard, Audit tool Korea Internet Security Center Castle – Home page vulnerability solution, code modification (get/post, file upload, cookie) – Fortify SCA(Source Code Analysis) //Audit tool – Acunetix web vulnerability scanner //Web application Scanner Acunetix web vulnerability scanner is a tool designed to discover security holes in your web applications (SQL injection, cross site scripting, and weak passwords. ) – SecuBat //Web application Scanner – AppScan //Web application Scanner 12

Existing System Existing approach(Acunetix, SecuBat, …) Existing web vulnerability analysis Patching Web Application 13

Our Expert System Expert system – can perform like expert in specific field, especially security expert – Web developer submit his code to the system, and system will detect ‘non-Standard’ or ‘vulnerable’ code. – Security Expert collects vulnerable rules based on OWASP Top 10, and stored in a Database. 14

Our Expert System Our approach 15 OWASP Rule Database & Expert system Guarantee the security in developing phase Input web vulnerable rules in the Database

Our Expert System System design and work flow 16 End User (web developer) : Insert web application code into system. User Interface : Simple interface, developer can choice language, vulnerability. Inference module : Step1. Evaluation whether each vulnerabilities is safe in OWASP Top 10. Step2. Based on results of Step1, give a list of vulnerable code and provide appropriate measure module

Our Expert System OWASP Top 10 1 st Rank Issue : Injection – Injection flaws, such as SQL, OS, and LDAP injection, occur when untrusted data is sent to an interpreter as part of a command or query. – The attacker’s hostile data can trick the interpreter into executing unintended commands or accessing unauthorized data. 17

Our Expert System How do I prevent from injection? – VERIFY Parameter Input – MINIMIZE authority to access other back-end system – DO NOT USE Dymamic Query Interface, like mysql_query() [ in MySQL ] – DO NOT USE simple escape function Addslashes() [ in PHP ] or str_replace() 18

Our Expert System Injection Analyze in Expert System 19 AnalyzeInjection() { // Knowledge Base(DB) connection ConnectionInfo = DBConnect(server, ID, password, database); // Load the injection vulnerability information in List List rulebase = getInjection(ConnectionInfo); // Extract query QueryString = SearchExecuteQuery(InputText); // Extract parameter inside query Parameters[] = SearchParametersInQuery(QueryString); // Is the parameter or query in safe? foreach( rule in rulebase ) { if(CompareRules(QueryString, Parameters, rule) != 1) AddErrorItem(QueryString, warningmessage, LineNo, QueryPosition); }

Our Expert System Injection Analyze in Expert System 20 Demonstration

Our Expert System OWASP Top 10 2 nd Rank Issue : Cross Site Scripting(XSS) – Attacker sends text-based attack scripts that exploit the interpreter in the browser. – Attackers can execute scripts in a victim’s browser to hijack user sessions, deface web sites, insert hostile content, redirect users, hijack the user’s browser using malware, etc. 21

Our Expert System How do I prevent from XSS? – VERIFY Input text – ENCRYPT Output text strongly – DO NOT ADJUST Black-list verification method like “DO NOT WRITE ‘ ’ ” 22

Our Expert System Problem about Get/Post, Weak Encryption – Get method User data is exposed on address window Ex.) epy=Computer Hack can attack just modify the parameter of address – Post method Data is decoded but still intercepted by packet capture tool Ex.) – User Authentication field must be encrypt both get and post method 23

Our Expert System Problem about Get/Post, Weak Encryption – Encryption Page Encryption – Call “https” and apply to web page Plaintext Ciphertext 24

Our Expert System Use strong cipher – Encryption Function(PHP) CRC32 – MHASH_CRC32 MD5 – MHASH_MD5 DES – MCRYPT_DES 3-WAY - MCRYPT_THREEWAY … … – Filtering weak algorithm Ex) SHA-1, BASE64… Modify to 128 bit encryption like AES 25

Comparison 26 SQL Injection XSS User data Encryption Other OWASP top 10 Code Modification Developer Guiding Castle Fortify SCA Acunetix SecuBat Appscan Our System SupportPartially Support Future work

Future Work Analyze the other issues More formal rules – Still, the system run these modules with different process – Developing Rule Maker Module, instead of formal rules OpenSystem – Experts and User join this system free. 27

Conclusions Statistics for attack method of Website & Making success attack scenarios Explore some issues of OWASP Top 10 – Injection, XSS, Cryptographic… Devise ‘Evolutionary System’ – The more people using the system, the bigger the system will be. Compare other vulnerability checking tools – In Code Modification & Guide for developers 28

EYP_Z H^D Thank You