Σχεδίαση & υλοποίηση ενός ασφαλούς συστήματος CI/CD βασιζόμενου σε δοχεία
Design and implementation of a secure container-based CI/CD system
dc.contributor.advisor | Κρητικός, Κυριάκος | el_GR |
dc.contributor.author | Τριανταφυλλόπουλος, Λάμπρος | el_GR |
dc.contributor.author | Triantafyllopoulos, Lampros | en_US |
dc.coverage.spatial | Σάμος | el_GR |
dc.date.accessioned | 2024-05-23T08:40:56Z | |
dc.date.available | 2024-05-23T08:40:56Z | |
dc.date.issued | 2024-02-02 | |
dc.identifier.uri | http://hdl.handle.net/11610/26376 | |
dc.description.abstract | Στο σύγχρονο περιβάλλον ανάπτυξης εφαρμογών, με δεδομένο τον υψηλό ανταγωνισμό που υφίσταται ανάμεσα στους παρόχους εφαρμογών & ψηφιακών υπηρεσιών, έχει θεσπιστεί ως θεμελιώδης ανάγκη η ταχεία και αυτοματοποιημένη δημιουργία, παράδοση και εγκατάσταση κώδικα. Με τη σταδιακή εγκατάλειψη του μοντέλου καταρράκτη για την ανάπτυξη λογισμικού, και την εξάπλωση του ευέλικτου μοντέλου ανάπτυξης (agile software development model), η ανάγκη για συχνή και σταδιακή ενσωμάτωση αλλαγών στον κώδικα απαίτησε τη συσσωμάτωση δυο παραδοσιακά διαφορετικών χώρων της βιομηχανίας ανάπτυξης λογισμικού, αυτόν της ανάπτυξης κώδικα και αυτόν της λειτουργίας (operations) του κώδικα σε έναν ενιαίο, με τίτλο devops. Στον πυρήνα της λειτουργίας του devops βρίσκεται η έννοια των αγωγών (pipelines), μέσα από τους οποίους εκτελούνται οι κρίσιμες λειτουργίες της συνεχούς ενσωμάτωσης και συνεχούς παράδοσης (continuous integration & continuous delivery - CI/CD). Με αυτόν τον τρόπο, ο κώδικας αποθηκεύεται, ελέγχεται, δοκιμάζεται και τελικά διανέμεται στους καταναλωτές σε περιβάλλοντα παραγωγής. Γίνεται μεμιάς φανερό, ότι οποιαδήποτε επίθεση στους CI/CD αγωγούς, θέτει σε κίνδυνο όχι μόνο τους καταναλωτές του λογισμικού, αλλά και τις υποδομές πάνω από τις οποίες εκτελούνται οι αγωγοί. Στο πλαίσιο της παρούσας διπλωματικής εργασίας, θα γίνει μια βασική αναφορά στις τεχνολογίες που συνθέτουν το σύγχρονο περιβάλλον του κύκλου ζωής λογισμικού, θα αναλυθούν οι κίνδυνοι που ελλοχεύουν μέσα και έξω από τους αγωγούς, και τελικά θα προταθεί ένα σύστημα CI/CD βασισμένο σε δοχεία (containers), ικανό να προστατέψει τον κώδικα και τις υποδομές από επίδοξους εισβολείς. | el_GR |
dc.description.abstract | The current trends and standards of software development, given the high competition between the providers of applications and digital services, are all about rapid and automated code creation and installation. While the classic waterfall model of software development was being driven out, and its place ceded to the agile model, the need for frequent and gradual code implementation warranted the unification of two different fields of the software lifecycle, those of development and operations, under the newly created space of devops. At its core, one can find the notion of pipelines, constructs through which the pillars of devops, i.e., continuous integration and continuous delivery (CI/CD) are given shape and form. Alongside these pipelines, the code is stored, verified, tested and finally delivered to its consumers (in production environments). It becomes immediately obvious, that any successful attack upon the CI/CD pipelines, endangers not only the software consumers, but the infrastructure on which the pipelines are executed as well. As a part of this Master’s thesis, a brief introduction to the basic notions of current software development will be supplied, a catalogue of threats against pipelines will be defined, and finally we will propose a container-based CI/CD system, capable of fending off invaders while protecting the code, the pipelines and their infrastructure. | en_US |
dc.format.extent | 161 σ. | el_GR |
dc.language.iso | el_GR | el_GR |
dc.rights | Attribution-NonCommercial-NoDerivatives 4.0 Διεθνές | |
dc.rights.uri | https://creativecommons.org/licenses/by-nc-nd/4.0/ | |
dc.subject | δοχεία | el_GR |
dc.subject | αγωγοί | el_GR |
dc.subject | ασφάλεια | el_GR |
dc.subject | devops | en_US |
dc.subject | CI/CD | en_US |
dc.subject | containers | en_US |
dc.subject | pipelines | en_US |
dc.subject | security | en_US |
dc.subject.lcsh | Agile software development | en_US |
dc.subject.lcsh | Computer software--Development. | en_US |
dc.title | Σχεδίαση & υλοποίηση ενός ασφαλούς συστήματος CI/CD βασιζόμενου σε δοχεία | el_GR |
dc.title | Design and implementation of a secure container-based CI/CD system | en_US |
dcterms.accessRights | free | el_GR |
dcterms.rights | Πλήρες Κείμενο - Ελεύθερη Δημοσίευση | el_GR |
heal.type | masterThesis | el_GR |
heal.recordProvider | aegean | el_GR |
heal.committeeMemberName | Κοκολάκης, Σπυρίδων | el_GR |
heal.committeeMemberName | Σκιάνης, Χαράλαμπος | el_GR |
heal.academicPublisher | Πανεπιστήμιο Αιγαίου - Πολυτεχνική Σχολή - Τμήμα Μηχανικών Πληροφοριακών και Επικοινωνιακών Συστημάτων | el_GR |
heal.academicPublisherID | aegean | el_GR |
heal.fullTextAvailability | true | el_GR |
dc.contributor.department | Ασφάλεια Πληροφοριακών και Επικοινωνιακών Συστημάτων | el_GR |