Laboratorní úlohy k zranitelnosti kompilovaných jazyků

Loading...
Thumbnail Image

Date

Authors

Kluka, Peter Milan

Mark

A

Journal Title

Journal ISSN

Volume Title

Publisher

Vysoké učení technické v Brně. Fakulta elektrotechniky a komunikačních technologií

ORCID

Abstract

Táto diplomová práca sa venuje podrobnej analýze zraniteľností vo voľne šíriteľných programoch s otvoreným zdrojovým kódom. Súčasťou práce je popis rôznych typov zraniteľností, ktoré sú často spojené s útokmi na softvér. Detailne je preskúmané statické a dynamické testovanie kódu, ako aj nástroje používané na odhaľovanie zraniteľností v zdrojovom kóde. Práca obsahuje vytvorenie troch laboratórnych úloh vrátane podrobných návodov, ktoré demonštrujú dôsledky chybných implementácií. Laboratórne úlohy sú zamerané na zraniteľnosti typu pretečenie vyrovnávacej pamäte (buffer overflow), prechádzanie adresárov (path/directory traversal) a čítanie nad rámec vyrovnávacej pamäte (buffer over-read). V rámci každej laboratórnej úlohy je súčasťou ukážka chybného kódu, ktorý bol zodpovedný za danú zraniteľnosť a taktiež aj ukážka opraveného kódu, s ktorým sa podarilo danú zraniteľnosť odstrániť. Tieto úlohy poskytujú praktické príklady, ktoré ilustrujú riziká spojené s nevhodným návrhom a implementáciou softvéru a poukazujú na dôležitosť efektívnych bezpečnostných postupov pri softvérovom vývoji.
This graduation thesis is devoted to a detailed analysis of vulnerabilities in freely distributed open-source programs. The thesis includes a description of different types of vulnerabilities that are often associated with software attacks. Static and dynamic code testing are examined in detail, as well as the tools used to detect vulnerabilities in source code. The thesis includes the development of three lab exercises, including detailed tutorials that demonstrate the consequences of incorrect implementations. The lab tasks focus on buffer overflow, path/directory traversal, and buffer over-read vulnerabilities. Every lab task includes a demonstration of the flawed code that was responsible for the vulnerability, as well as demonstration of the patched code that was used to fix the vulnerability. These tasks provide practical examples that illustrate the risks associated with inappropriate software design and implementation and demonstrate the importance of effective security techniques in software development.

Description

Citation

KLUKA, P. Laboratorní úlohy k zranitelnosti kompilovaných jazyků [online]. Brno: Vysoké učení technické v Brně. Fakulta elektrotechniky a komunikačních technologií. 2024.

Document type

Document version

Date of access to the full text

Language of document

cs

Study field

bez specializace

Comittee

prof. Ing. Jan Hajný, Ph.D. (předseda) Ing. Josef Vojtěch, Ph.D. (člen) Ing. Jan Látal, Ph.D. (člen) Ing. Martin Štůsek, Ph.D. (člen) doc. Ing. Petr Münster, Ph.D. (člen) doc. Ing. Jiří Hošek, Ph.D. (člen) prof. JUDr. Radim Polčák, Ph.D. (místopředseda)

Date of acceptance

2024-06-06

Defence

Student prezentoval výsledky své práce a komise byla seznámena s posudky. Otázky oponenta: Kam byste dle vašeho dělení v diplomové práci zařadil jednotkové (unit) testy? - Student dostatečně vysvětlil otázku. Lze mezi nástroje pro detekci a prevenci zranitelností zařadit dekompilační nástroje typu Ghidra? V případě že ano, kam by zapadali v rámci dělení ve vaší práci? - Student dostatečně vysvětlil otázku. Student obhájil diplomovou práci a odpověděl na otázky členů komise a oponenta.

Result of defence

práce byla úspěšně obhájena

DOI

Collections

Endorsement

Review

Supplemented By

Referenced By

Citace PRO