Security testing aims at verifying that the software meets its security properties. In modern Web systems, however, this often entails the verification of the outputs generated when exercis- ing the system with a very large set of inputs. Full automation is thus required to lower costs and increase the effectiveness of security testing. Unfortunately, to achieve such automation, in addition to strategies for automatically deriving test inputs, we need to address the oracle problem, which refers to the challenge, given an input for a system, of distinguishing correct from incorrect behavior (e.g., the response to be received after a specific HTTP GET re- quest). In this paper, we propose Metamorphic Security Testing for Web-interactions (MST-wi), a metamorphic testing approach that integrates test input generation strategies inspired by mutational fuzzing and alleviates the oracle problem in security testing. It enables engineers to specify metamorphic relations (MRs) that capture many security properties of Web systems.
To facilitate the specification of such MRs, we provide a domain-specific language accompanied by an Eclipse editor. MST-wi automatically collects the input data and transforms the MRs into executable Java code to automatically perform security testing. It automatically tests Web systems to detect vulnerabilities based on the relations and collected data. We provide a catalog of 76 system-agnostic MRs to automate security testing in Web systems. It covers 39% of the OWASP secu- rity testing activities not automated by state-of-the-art techniques; further, our MRs can automatically discover 102 different types of vulnerabilities, which correspond to 45% of the vulnerabilities due to violations of security design principles according to the MITRE CWE database. We also define guidelines that enable test engineers to improve the testability of the system under test with respect to our approach.
We evaluated MST-wi effectiveness and scalability with two well-known Web systems (i.e., Jenkins and Joomla). It automatically detected 85% of their vulnerabilities and showed a high specificity (99.81% of the generated inputs do not lead to a false positive); our findings include a new security vulnerability detected in Jenkins. Finally, our results demonstrate that the approach scale, thus enabling automated security testing overnight.
Replication package: https://zenodo.org/record/7702754#.ZCrt1_bMKUk
Wed 13 SepDisplayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change
10:30 - 12:00 | Web Development 2Industry Showcase (Papers) / Research Papers / NIER Track / Journal-first Papers at Room E Chair(s): Hadar Ziv University of California, Irvine | ||
10:30 12mTalk | Metamorphic Testing for Web System Security Journal-first Papers Nazanin Bayati Chaleshtari University of Ottawa, Fabrizio Pastore University of Luxembourg, Arda Goknil SINTEF Digital, Lionel Briand University of Luxembourg; University of Ottawa Link to publication DOI Pre-print | ||
10:42 12mTalk | JavaScript Dead Code Identification, Elimination, and Empirical Assessment Journal-first Papers Ivano Malavolta Vrije Universiteit Amsterdam, Kishan Nirghin Vrije Universiteit Amsterdam, Gian Luca Scoccia Gran Sasso Science Institute, Simone Romano University of Salerno, Salvatore Lombardi University of Basilicata, Giuseppe Scanniello University of Salerno, Patricia Lago Vrije Universiteit Amsterdam File Attached | ||
10:54 12mTalk | PTdetector: An Automated JavaScript Front-end Library Detector Research Papers Link to publication | ||
11:06 12mTalk | Revealing Performance Issues in Server-side WebAssembly Runtimes via Differential Testing Research Papers Shuyao Jiang The Chinese University of Hong Kong, Ruiying Zeng Fudan University, Zihao Rao Fudan University, Jiazhen Gu Chinese University of Hong Kong, Yangfan Zhou Fudan University, Michael Lyu The Chinese University of Hong Kong Pre-print | ||
11:18 12mTalk | Dramatically Improving Design Reviews at Google Industry Showcase (Papers) Link to publication | ||
11:30 12mTalk | Characterizing Flaky Tests in Node.js ApplicationsRecorded talk NIER Track Xiaoning Chang Institute of Software, Chinese Academy of Sciences, Zheheng Liang Joint Laboratory on Cyberspace Security of China Southern Power Grid, Guoquan Wu Institute of Software at Chinese Academy of Sciences; University of Chinese Academy of Sciences; University of Chinese Academy of Sciences Nanjing College; China Southern Power Grid, Yu Gao Institute of Software, Chinese Academy of Sciences, China, Wei Chen Institute of Software at Chinese Academy of Sciences; University of Chinese Academy of Sciences; University of Chinese Academy of Sciences Nanjing College, Jun Wei Institute of Software at Chinese Academy of Sciences; University of Chinese Academy of Sciences; University of Chinese Academy of Sciences Chongqing School, Zhenyue Long , Lei Cui Joint Laboratory on Cyberspace Security of China Southern Power Grid, Tao Huang Institute of Software Chinese Academy of Sciences Media Attached |