Failisüsteemi hägutestimise raamistik

Date

2017

Journal Title

Journal ISSN

Volume Title

Publisher

Abstract

Tarkvara testimine muutub järjest tähtsamaks seoses koodi keerukuse kasvuga. Isegi asjatundjate poolt koostatud rakendused võivad sisalda vigu juhul, kui tegemist on keskmisest keerukamate ja mahukamate programmidega. Tarkvarast vigade otsimine on raske ja ajakulukas ülesanne, kuid seda tööd saab testimisvahendite abil lihtsustada. Käesoleva töö eesmärgiks oli ehitada raamistik, millega saab hägutestimise abil otsida Linuxi failisüsteemides vaheletrügimisnõrkusi.Koostatud raamistik erineb olemasolevatest lahendustest selle poolest, et testimist sooritatakse tavapärasest kihist allpool, failisüsteemi tasemel. Töö tulemuseks on paindlik testimisraamistik, mis lahendab andmevahetuse probleemi ning lihtsustab erinevate häguritüüpide implementeerimist. Vaatamata sellele, et arenduses keskenduti Ext4 failisüsteemile, on pandud alus võimalikule edasisele arendusele.
The need for software testing increases in proportion to the software's cyclomatic complexity. Even expert programmers might make mistakes while developing complex software. Discovering those mistakes is a difficult and time consuming task which can be simplified through different instruments. In the present thesis a fuzz testing framework was built, which can be used for finding time-of-check-to-time-of-use type bugs in Linux filesystems. The main difference between this framework and already existing fuzzing tools, is that this framework executes its testing on filesystem level. As a result of this work, a flexible framework was constructed, which solves the data transfer problem and simplifies the implementation of different types of fuzzers. Despite the fact that the development was focused on Ext4 filesystem, it is possible to extend the tool to include other filesystems.

Description

Keywords

Citation