A Survey on Web Penetration Test

Total Page:16

File Type:pdf, Size:1020Kb

A Survey on Web Penetration Test ACSIJ Advances in Computer Science: an International Journal, Vol. 3, Issue 6, No.12 , November 2014 ISSN : 2322-5157 www.ACSIJ.org A survey on web penetration test Mahin Mirjalili1, Alireza Nowroozi2, Mitra Alidoosti3 1Department of information security, Malek-Ashtar university of technology, Tehran, Iran [email protected] 2Department of information security, Malek-Ashtar university of technology, Tehran, Iran [email protected] 3Department of information security, Malek-Ashtar university of technology, Tehran, Iran [email protected] Abstract - How the penetration test is performed? This paper reviews the penetration test specifically in the - What are types of penetration test? field of web. For this purpose, it first reviews articles generally on penetration test and its associated methods. - How the penetration test is done automatically? Then articles in the field of web penetration test are - What tools can we use to perform an automatic examined in three aspects: comparing automatic penetration test tools, introduction of new methods or tools penetration test? for manual penetration test, and articles that presented a test - Comparison of tools and their effectiveness environment for training or checking various instruments and methods. This article studied 4 different methodologies - What are the new tools and methods and what for web penetration test, 13 articles for comparing web are their features? vulnerability scanners, 10 articles that proposed a new method or tool for penetration test and 4 test environments. - How can we examine various tools and techniques? Keywords: Penetration test, web scanner, web This paper attempts to answer these questions by application, web vulnerabilities. examining 4 different methodologies for penetration test, 13 articles for comparing web vulnerability 1. Introduction scanners, 10 articles that proposed a new method or Penetration test is a security evaluation process for tool for penetration test and 4 test environments. network or computer systems that simulates an attack by an ethical hacker. The most important distinction Due to the large volume of papers in the studied area, between a hacker and a penetration tester is that some criteria were used for paper selection such as penetration test is done with a license and a signed covering a wide time period from 2006 to 2014 and contract with an organization or company, and the the number of citations per paper. Most selected output is provided as a report. The goal of penetration articles were considered by many authors in previous test is to increase data security. Security information years. and weaknesses that are specified in penetration test We will initially review articles that provided a are considered confidential and shall not be disclosed method for the penetration test, then papers in the until complete resolution of defects. field of web penetration test in three views: Given the importance of web application security, Articles on the comparison of existing methods this article reviews studies in the field of penetration test, particularly web penetration test. and tools for web penetration test. Articles that proposed a new tool or method for Questions that engaged the mind of researchers in the field of penetration test can be expressed as follows: web penetration test. 107 Copyright (c) 2014 Advances in Computer Science: an International Journal. All Rights Reserved. ACSIJ Advances in Computer Science: an International Journal, Vol. 3, Issue 6, No.12 , November 2014 ISSN : 2322-5157 www.ACSIJ.org Studies that proposed a test environment for Table 1- manual vs. automated penetration testing MANUAL AUTOMATED testing tools and ideas. Testing Labor-intensive, Fast, easy and safe. Process inconsistent and error Eliminates errors and 2. Penetration testing -prone, with no tedious manual tasks. specific quality Centralized and standards. standardized to 2.1. History and Importance Requires many produce consistent and Penetration testing is one of the oldest methods for disparate tools. repeatable results. assessing the security of a computer system. In the Results can vary Easy to use and early 1970's, the Department of Defense used this significantly from provides clear, method to demonstrate the security weaknesses in test to test. actionable reports. computer systems and to initiate the development of Generally requires programs to create more secure systems. Penetration highly-paid, testing is increasingly used by organizations to assure experienced security the security of Information systems and services, so personnel to run and interpret tests. that security weaknesses can be fixed before they get Network Often results in Systems remain exposed [1]. Modification numerous systems unchanged. modifications. Large companies have important data and one of Exploit Developing and Product vendor Development their concerns is to protect the data. The penetration maintaining an develops and and test tests security mechanisms of companies by Management exploit database is maintains all exploits. simulating multiple attacks. In the situations like new time-consuming and Exploits are infrastructure is added, Software is installed, System requires significant continually updated updates are applied, Security patches are applied and expertise. for maximum User policies are modified it is necessary to do Public exploits are effectiveness. penetration testing. Some of the principal reasons for suspect and can be Exploits are adopting penetration testing are Security Issues, unsafe to run. professionally Protect Information, Prioritize security risks and Re-writing and developed, thoroughly Financial Loss [2]. porting code is tested, and safe to run. necessary for cross- Exploits are written The penetration test can be done either manually or platform and optimized for a automatically. Manual penetration test requires a functionality. variety of platforms skilled and experienced tester team to control all and attack vectors. Cleanup Tester must Leading products offer things. They must be physically present at the test remember and undo comprehensive duration. Thus this is not an affordable option. all changes. cleanup with one click Automatic penetration test is a simple and safe way Backdoors can be left and never install to perform all tasks related to the penetration test. behind backdoors. Moreover, since most work is done automatically, it Reporting Requires significant Comprehensive effort, recording and history and findings is more economical in terms of time. Another collating of all results reports are advantage of this test is the ability to reuse the set manually. All reports automatically parameters for the test. In [3], a comparison is made must be generated by produced. Reports are between the two tests, as follows: hand. customizable. Logging/ Slow, cumbersome, Automatically records Auditing often inaccurate a detailed record of all process. activity. Training Testers need to learn Users can learn and non-standardized, ad- install in as little as hoc testing methods. one day. 108 Copyright (c) 2014 Advances in Computer Science: an International Journal. All Rights Reserved. ACSIJ Advances in Computer Science: an International Journal, Vol. 3, Issue 6, No.12 , November 2014 ISSN : 2322-5157 www.ACSIJ.org Penetration testing can be segregated into the stage, the more successful the next stages will be. following classes [4]: Attack visibility: Blue-teaming The second phase of this methodology is divided into or Red-teaming, and system access: Internal testing two categories: port scanning which obtains a list of or External testing. open ports and services running on each of them, and vulnerability scanning which is a process to Blue-teaming is done with the consent of an entire recognize weaknesses of desired services and organization. The information security team is fully applications. According to the results obtained in step aware of the testing requirements as well as resources 2 and knowing what ports are open, what services are needed. Blue-teaming is a more efficient way to running on this port and what vulnerabilities they perform testing as the system availability is not an have, one can attack the target. Maintaining access is issue and hence there is a considerable reduction in the last phase. Most accesses obtained in the attack the overall time for testing. The shorter test times phase are temporary, and are removed after mean lesser system idle time and reduced testing disconnection. In this phase, it is tried to maintain costs. Red-teaming refers to testing that is performed access. Although this reference ignored "reporting" in a stealth manner without the knowledge of IT staff as a step in the penetration test, it stated the last [4]. Upper-level management authorizes such an activity of a penetration test as reporting. According exercise. The objectives of the test are to judge the to [5], reporting should include details on how to strength of the network security, the awareness of IT perform the test, a summary of the found security organization, and its ability to follow the standard threats, cases the test does not cover, etc. protocols. The entire test is done without the support of the organization’s resources. Reconnaissance Scanning 2.2. Available methodologies and techniques Maintaining Access Exploitation A methodology is a scheme that is used to reach the Figure 1 - proposed methodology in [5] destination. Lack of use of a methodology for penetration test may lead to
Recommended publications
  • S'abonner Sans S'enchaîner
    N° 889 - Du 21 juin au 10 juillet 2018 EN INDE, LES ALGORITHMES LIBÈRENT LA JEUNESSE DES MARIAGES FORCÉS 3,90€ À LA DÉCOUVERTE DES ZONES URBAINES LE MAGAZINE DU HIGH-TECH INTERDITES 0 € S’ABONNER SANS S’ENCHAÎNER NOTRE SÉLECTION DES MEILLEURES OFFRES Belgique : 4,50 € > Suisse : 6,30 FS > Luxembourg : 4,50 € > Guyane : 7,80 € > DOM Avion : 5,10 € > TOM Avion : 1 300 CFP > Maroc : 39 DH > Canada : 7,25 $CAD > Tunisie : 3,20 TND > Portugal : 4,7 : 3,20 TND > Portugal > : 5,10 € Tunisie : 7,25 $CAD > Canada : : 39 DH : 7,80 Avion 4,50 € > DOM : 1 € > Guyane > Maroc 300 CFP Belgique : 4,50 : 6,30 FS > Luxembourg € > Suisse Avion > TOM ÉDITO AMAURY MESTRE DE LAROQUE Rédacteur en chef Rien dans les poches, tout dans la tête e Larousse se contente de cette définition. suggestions sont moins drastiques, mais contenteront Désencombrement : action de se débarras- tout le monde, même les victimes de syllo gomanie, ce ser de ce qui encombre. Pourtant, ce nom trouble consistant à accumuler des objets sans les uti- masculin désigne aussi un mouvement liser. En France, 100 millions de téléphones dorment Ld’individus lassés par l’hyperconsomma- ainsi dans les tiroirs (lire p. 9). Mais revenons à notre tion. Une gangrène symbolisée par les fast- remède miracle. Pour vivre l’esprit léger, mais bien foods et leurs menus XL (grande frite, grande boisson, plein, passez donc aux abonnements sans engagement grand cholestérol), voire XXL (idem, mais pour papa), (lire p. 32). À vous le plaisir de l’écoute de millions de ou par ces enseignes de vêtements bradés et pen- chansons, ou celui du doux endormissement sés pour s’étioler après deux lavages.
    [Show full text]
  • „Transcriptional Regulation of Defence Gene Expression by a VQ-Motif Containing Protein”
    „Transcriptional regulation of defence gene expression by a VQ-motif containing protein” Dissertation Zur Erlangung des Doktorgrades der Naturwissenschaften (Dr. rer. nat.) der Naturwissenschaftlichen Fakultät I – Biowissenschaften – der Martin-Luther-Universität vorgelegt von Herrn Martin Weyhe geb. am 14.03.1987 in Merseburg Gutachter: Prof. Dr. Dierk Scheel | Leibniz Institut für Pflanzenbiochmie, Halle Prof. Dr. Ulla Bonas | Martin-Luther-Universität Halle-Wittenberg Prof. Dr. Thorsten Nürnberger | Zentrum für Molekularbiologie der Pflanzen, Tübingen Verteidigung: 03.07.2019 Index Index List of abbreviations ................................................................................................................... VI 1. Introduction ........................................................................................................................ 1 1.1. Plant immunity ....................................................................................................................... 1 1.1.1 Pattern recognition........................................................................................................ 1 1.1.2. Early MTI responses ....................................................................................................... 3 1.1.3. Late MTI responses ........................................................................................................ 4 1.1.4 Pathogen effectors and effector-triggered immunity (ETI) ........................................... 5 1.2. MAPK cascades ......................................................................................................................
    [Show full text]
  • 100K Cars/Trucks Per Day Could Be Pushed Onto Already-Packed Routes Page 13
    TENNESSEE TITANS Let me help you take my job Veterans say it’s important for them to mentor younger players. Their coach disagrees. STREET LEVEL P27 Donuts, subs, the American dream Unlikely strip-center food DAVIDSONLedger • WILLIAMSON • RUTHERFORD • CHEATHAM WILSON SUMNER• ROBERTSON • MAURY • DICKSONcombo • MONTGOMERY helps Korean emigrants build a better life. P13 See our ad on page 13 June 8 – 14, 2018 The power of information.NASHVILLE Vol. 44 EDITION | Issue 23 www.TNLedger.com Can’t live with it, FORMERLY WESTVIEW SINCE 1978 can’t live Page 13 Dec.: Dec.: Keith Turner, Ratliff, Jeanan Mills Stuart, Resp.: Kimberly Dawn Wallace, Atty: Mary C Lagrone, 08/24/2010, 10P1318 In re: Jeanan Mills Stuart, Princess Angela Gates, Jeanan Mills Stuart, Princess Angela Gates,Dec.: Resp.: Kim Prince Patrick, Angelo Terry Patrick, without it Gates, Atty: Monica D Edwards, 08/25/2010, 10P1326 In re: Keith Turner, TN Dept Of Correction, www.westviewonline.com TN Dept Of Correction, Resp.: Johnny Moore,Dec.: Melinda Atty: Bryce L Tomlinson, Coatney, Resp.: Pltf(s): Rodney A Hall, Pltf Atty(s): n/a, 08/27/2010, 10P1336 In re: Kim Patrick, Terry Patrick, 10-month nightmare: Pltf(s): Sandra Heavilon, Resp.: Jewell Tinnon, Atty: Ronald Andre Stewart, 08/24/2010,Dec.: Seton Corp 10P1322 Insurance Company, Dec.: Regions Bank, Resp.: Leigh A Collins, In re: Melinda L Tomlinson, Def(s): Jit Steel Transport Inc, National Fire Insurance Company, Elizabeth D Hale, Atty: William Warner McNeilly, 08/24/2010, Def Atty(s): J Brent Moore, 08/26/2010, 10C3316 10P1321
    [Show full text]
  • A Presentation Service for Rapidly Building Interactive Collaborative Web Applications
    A Presentation Service for Rapidly Building Interactive Collaborative Web Applications SCIENTIA MANU E T MENTE A thesis submitted to the School of Computer Science University College University of New South Wales Australian Defence Force Academy for the degree of Doctor of Philosophy By Michael Joseph Sweeney 31 March 2008 c Copyright 2008 by Michael Joseph Sweeney i Certi¯cate of Originality I hereby declare that this submission is my own work and that, to the best of my knowledge and belief, it contains no material previously published or written by another person, nor material which to a substantial extent has been accepted for the award of any other degree or diploma at UNSW or any other educational institution, except where due acknowledgement is made in the thesis. Any contribution made to the research by colleagues, with whom I have worked at UNSW or elsewhere, during my candidature, is fully acknowledged. I also declare that the intellectual content of this thesis is the product of my own work, except to the extent that assistance from others in the project's design and conception or in style, presentation and linguistic expression is acknowledged. Michael Joseph Sweeney ii Abstract Web applications have become a large segment of the software development domain but their rapid rise in popularity has far exceeded the support in software engineer- ing. There are many tools and techniques for web application development, but the developer must still learn and use many complex protocols and languages. Products still closely bind data operations, business logic, and the user interface, limiting integration and interoperability.
    [Show full text]
  • Python Web Developer Appliance Users Guide Release DRAFT
    Python Web Developer Appliance Users Guide Release DRAFT James C. McDonald June 6, 2006 Email: [email protected] Abstract The objective for the Python Web Developer Appliance project is to facilitate both learning how to develop and developing web applications using Python. The Python Web Developer Appliance includes the leading Python web development frameworks and sup- porting libraries pre-installed and ready use, alongside a complete open-source software stack for building and deploying web applications. The appliance represents an attempt to take the ”batteries included” philosophy (http://www.python.org/dev/peps/pep-0206/) to another level with respect to web application development and de- ployment. The Python Web Developer Appliance is packaged as a VMware virtual machine. A ready-to-run virtual machine saves the time and the headache of selecting, assembling, building, and installing a coherent set of leading edge python oriented web application development and deployment tools. Copyright c 2006 James C. McDonald. All rights reserved. Note: This document was prepared using the standard Python documentation LATEX toolchain. Contents 1 Overview 2 2 Installation 3 2.1 VMware Virtual Machine Installation .................................. 3 2.2 Installation via Bootable ISO Image ................................... 3 2.3 Default root Password ........................................... 3 2.4 Other Default Passwords ......................................... 3 3 Configuration 4 3.1 VMware Machine Configuration ....................................
    [Show full text]
  • Practice Book B
    Grade 5 Spelling PRACTICE BOOK B 1VCMJTIFECZ.BDNJMMBO.D(SBX)JMM PG.D(SBX)JMM&EVDBUJPO BEJWJTJPOPG5IF.D(SBX)JMM$PNQBOJFT *OD 5XP1FOO1MB[B /FX:PSL /FX:PSL $PQZSJHIUªCZ.BDNJMMBO.D(SBX)JMM"MMSJHIUTSFTFSWFE/PQBSUPGUIJTQVCMJDBUJPONBZCFSFQSPEVDFEPS EJTUSJCVUFEJOBOZGPSNPSCZBOZNFBOT PSTUPSFEJOBEBUBCBTFPSSFUSJFWBMTZTUFN XJUIPVUUIFQSJPSXSJUUFO DPOTFOUPG5IF.D(SBX)JMM$PNQBOJFT *OD JODMVEJOH CVUOPUMJNJUFEUP OFUXPSLTUPSBHFPSUSBOTNJTTJPO PS CSPBEDBTUGPSEJTUBODFMFBSOJOH 1SJOUFEJOUIF6OJUFE4UBUFTPG"NFSJDB Contents Unit 1 • Challenges School Contests Pretest . .1 Miss Alaineus Practice . .2 Short Vowels Word Sort. 3 Word Meaning . 4 Proofreading . .5 Posttest . .6 American Legends Pretest . .7 Davy Crockett Saves Practice . .8 the World Word Sort. 9 Long Vowels Word Meaning . 10 Proofreading . 11 Posttest . .12 Trees for Life Pretest . .13 Time For Kids: Practice . .14 Forests of the World Word Sort. 15 Words with /ü/, /–u/, /u/ Word Meaning . 16 Proofreading . 17 Posttest . .18 Exploring Space Pretest . .19 Ultimate Field Trip 5: Practice . .20 Blasting Off to Space Word Sort. 21 Academy Word Meaning . .22 Words with /är/, /âr/, /ôr/ Proofreading . .23 Posttest . .24 Rescue Dogs Pretest . .25 Pipiolo and the Practice . .26 Roof Dogs Word Sort. .27 Words with /ûr/, / îr/ Word Meaning . .28 Proofreading . .29 Posttest . .30 Unit 1 Review Test . 31, 32 © Macmillan/McGraw-Hill iii Unit 2 • Discoveries People Helping Animals Pretest . .33 Shiloh Practice . .34 Compound Words Word Sort. .35 Word Meaning . .36 Proofreading . .37 Posttest . .38 Slithery Snakes! Pretest . .39 Rattlers! Practice . .40 Plurals Word Sort. 41 Word Meaning . .42 Proofreading . .43 Posttest . .44 Remembering the Past Pretest . .45 Time For Kids: Practice . .46 Maya Lin: Architect of Word Sort. 47 Memory Word Meaning . .48 Words with Infl ected Proofreading . .49 Endings -ed and -ing Posttest .
    [Show full text]
  • Detecting Security Vulnerabilities in Web Applications Using Dynamic Analysis with Penetration Testing
    Detecting Security Vulnerabilities in Web Applications Using Dynamic Analysis with Penetration Testing Andrey Petukhov, Dmitry Kozlov Computing Systems Lab, Department of Computer Science, Moscow State University [email protected], [email protected] Abstract. The number of reported web application vulnerabilities is increasing dramatically. The most of vulnerabilities result from improper input validation. This paper presents extensions to the Tainted Mode model which allows inter- module vulnerabilities detection. Besides, this paper presents a new approach to vulnerability analysis which incorporates advantages of penetration testing and dynamic analysis. This approach effectively utilizes the extended Tainted Mode model. Keywords: Web Applications, Second-order injection, Vulnerability Analysis, Penetration Testing, Dynamic Analysis, Taint Analysis. 1 Introduction Security vulnerabilities in web applications may result in stealing of confidential data, breaking of data integrity or affect web application availability. Thus the task of se- curing web applications is one of the most urgent for now: according to Acunetix sur- vey [1] 60% of found vulnerabilities affect web applications. The most common way of securing web applications is searching and eliminating vulnerabilities therein. Ex- amples of another ways of securing web application include safe development [38-40], implementing intrusion detection and/or protection systems [32, 35-36], and web application firewalls [37]. According to OWASP [8], the most efficient way of finding security vulnerabilities in web applications is manual code review. This technique is very time-consuming, requires expert skills, and is prone to overlooked errors. Therefore, security society actively develops automated approaches to finding security vulnerabilities. These ap- proaches can be divided into two wide categories: black-box and white-box testing.
    [Show full text]
  • NEAR EAST UNIVERSITY Faculty of Engineering
    NEAR EAST UNIVERSITY Faculty of Engineering Department of Computer Engineering AUTO GALLERY MANAGEMENT SYSTEM Graduation Project COM 400 Student: Ugur Emrah CAKMAK Supervisor : Assoc. Prof. Dr. Rahib ABIYEV Nicosia - 2008 ACKNOWLEDGMENTS "First, I would like to thank my supervisor Assoc. Prof. Dr. Rahib Abiyev for his invaluable advice and belief in my work and myself over the course of this Graduation Project.. Second, I would like to express my gratitude to Near East University for the scholarship that made the work possible. Third, I thank my family for their constant encouragement and support during the preparation of this project. Finally, I would like to thank Neu Computer Engineering Department academicians for their invaluable advice and support. TABLE OF CONTENT ACKNOWLEDGEMENT i TABLE OF CONTENTS ii ABSTRACT iii INTRODUCTION 1 CHAPTER ONE - PHP - Personal Home Page 2 1.1 History Of PHP 2 1.2 Usage 5 1.3 Security 6 1 .4 Syntax 7 1.5 Data Types 8 1.6 Functions 9 1.7 Objects 9 1.8 Resources 10 1.9 Certification 12 1 .1 O List of Web Applications 12 1.11 PHP Code Samples 19 CHAPTER TWO - MySQL 35 2.1 Uses 35 2.2 Platform and Interfaces 36 2.3 Features 37 2.4 Distinguishing Features 38 2.5 History 40 2.6 Future Releases 41 2.7 Support and Licensing .41 2.8 Issues 43 2.9Criticism 44 2.10 Creating the MySQL Database 45 2.11 Database Code of a Sample CMS 50 CHAPTER THREE - Development of Auto Gallery Management System 72 CONCLUSION 77 REFERENCES 78 APPENDIX 79 ii ABSTRACT Auto Gallery Management System is a unique Content Management System which supports functionality for auto galleries.
    [Show full text]
  • Python As a Tool for Web Server Application Development Sheetal Taneja1, Pratibha R
    JIMS 8i-International Journal of Information, Communication and Computing Technology(IJICCT) Python as a Tool for Web Server Application Development Sheetal Taneja1, Pratibha R. Gupta2 specific request, there is a program running at the server end ABSTRACT that performs this task. Such a program is termed Web application [2]. Thus, web applications are the programs With evolution of web, several competitive languages such running at application server and are invoked using browser as Java, PHP, Python, Ruby are catching the attention of the through the Internet. developers. Recently Python has emerged as a popular and the preferred web programming language, because of its Web applications offer several benefits over traditional simplicity to code and ease of learning. Being a flexible applications that are required to be installed at each host language, it offers fast development of web based computer that wishes to use them [3]. Web applications do applications. It offers development using CGI and WSGI. not incur publishing and distribution costs as opposed to Web development in Python is aided by the powerful traditional applications where the software (applications) frameworks such as Django, web2py, Pyramid, and Flask were published using CD’s and distributed. They need not be that Python supports. Thus Python promises to emerge as installed at each client host; rather they are placed at a one of the preferred choice language for web applications. central server and accessed by large number of clients. Since a web application is managed centrally, application updates KEYWORDS and data backups can be performed easily. The web Python, Web server application development, frameworks, applications are easily accessible irrespective of the WSGI, CGI, PHP, Ruby boundaries of space and time.
    [Show full text]
  • Web Application Framework
    UU - IT - UDBL 1 E-COMMERCE and SECURITY - 1DL018 Spring 2008 An introductury course on e-commerce systems alt. http://www.it.uu.se/edu/course/homepage/ehandel/vt08/ Kjell Orsborn Uppsala Database Laboratory Department of Information Technology, Uppsala University, Uppsala, Sweden Kjell Orsborn 4/24/08 UU - IT - UDBL 2 Web Servers ch 6, 7 Kjell Orsborn Department of Information Technology Uppsala University, Uppsala, Sweden Kjell Orsborn 4/24/08 UU - IT - UDBL 3 Web clients and Web servers Clients running browsers Web server Requests sent pages received Kjell Orsborn 4/24/08 UU - IT - UDBL 4 Web server • The term web server can mean one of two things: – A computer program that is responsible for accepting HTTP requests from clients, which are known as web browsers, and serving them HTTP responses along with optional data contents, which usually are web pages such as HTML documents and linked objects (images, etc.). – A computer that runs a computer program as described above. Kjell Orsborn 4/24/08 UU - IT - UDBL 5 Common features of Web servers • Web server programs might differ in detail, but they all share some basic common features: – HTTP: every web server program operates by accepting HTTP requests from the client, and providing an HTTP response to the client. • The HTTP response usually consists of an HTML document, but can also be a raw file, an image, or some other type of document (defined by MIME-types). – Logging: usually web servers have also the capability of logging some detailed information, about client requests and server responses, to log files; • this allows the webmaster to collect statistics by running log analyzers on log files.
    [Show full text]
  • Exploiting Similarity Patterns in Web Applications For
    View metadata, citation and similar papers at core.ac.uk brought to you by CORE provided by ScholarBank@NUS EXPLOITING SIMILARITY PATTERNS IN WEB APPLICATIONS FOR ENHANCED GENERICITY AND MAINTAINABILITY DAMITH CHATURA RAJAPAKSE (BSc.Eng (Hons), SL) A THESIS SUBMITTED FOR THE DEGREE OF DOCTOR OF PHILOSOPHY SCHOOL OF COMPUTING NATIONAL UNIVERSITY OF SINGAPORE Acknowledgments My profound thanks are due to the following persons. • My advisor A/P Stan Jarzabek, for the innumerable ways in which he made this thesis possible, and for guiding me with boundless patience, never shying away when help was needed. • Members of my thesis committee A/P Dong Jin Song and A/P Khoo Siau Cheng for their valuable advice throughout this journey of four years, and for spending their valuable time in various administration tasks related to my candidature. • Collaborators, advisors, and evaluators who gave feedback about my research: Dr. Bimlesh Wadhwa, Dr. Irene Woon, and Prof Kim Hee-Woong (NUS), Prof. Andrea De Lucia and Dr. Giuseppe Scanniello (Università di Salerno, Italy), Prof. Katsuro Inoue, Dr. Shinji Kusumoto, and Higo Yoshiki (Osaka Uni. Japan), Dr. Toshihiro Kamiya (PRESTO, Japan), Sidath Dissanayake (SriLogic Pvt Ltd, Sri Lanka), Ulf Pettersson (STE Eng Pte Ltd., Singapore), Yeo Ann Kian, Lai Zit Seng, and Chan Chee Heng (NUS), Prof. Athula Ginige (UWS, Sydney), Prof. San Murugesan (Southern Cross University, Australia). • My colleagues at NUS, Hamid Abdul Basit, Upali Sathyajith Kohomban, Vu Tung Lam, Sun Jun, Yuan Fang, David Lo, and Sridhar KN in particular, for the comradeship during the last four years. • Other friends at NUS, and back home in Sri Lanka (whom I shall not name for the fear of missing out one), for lightening my PhD years with your companionship.
    [Show full text]
  • A Web Application User Interface Specification Language Based On
    University of Pretoria etd – Vosloo, I (2006) Dissertation A web application user interface specification language based on statecharts by Iwan Vosloo September 2005 Submitted in partial fulfilment of the requirements for the degree Master of Science (Computer Science) in the Faculty of Engineering, Built Environment and Information Technology, University of Pretoria, Pretoria, South Africa University of Pretoria etd – Vosloo, I (2006) To Antoinette and Izak (in recognition of a debt impossible to settle in the currencies of this world) University of Pretoria etd – Vosloo, I (2006) A web application user interface specification language based on statecharts by Iwan Vosloo Abstract The Internet today has a phenomenal reach—right into the homes of a vast audience worldwide. Some organisations (and individuals) see this medium as a good opportunity for extending the reach of their computer systems. One popular approach used for such endeavours is to run an application on a server, using web technology for displaying its User Interface (UI) remotely. Developing such a web-based UI can be quite tedious—it is a concurrent, distributed program which has to run in a hostile environment. Furthermore, the platform on which it is implemented (the web) was not originally intended for such usage. A web framework is a collection of software components which provides its users with support for developing and executing web-based UIs. In part, web frameworks can be seen as being analogous to interpreters: given a specification of a UI using a specification technique dictated by the framework, server components of the framework can present the UI using web technology.
    [Show full text]