Λογότυπο αποθετηρίου
 

Ανάπτυξη και υλοποίηση επιθέσεων τύπου pollution σε C#/.NET

dc.aueb.departmentDepartment of Informatics
dc.aueb.programMSc in Information Systems Development & Security
dc.contributor.opponentΓκρίτζαλης, Δημήτριοςel
dc.contributor.opponentΝτούσκας, Θεόδωροςel
dc.contributor.thesisadvisorΣτεργιόπουλος, Γεώργιοςel
dc.creatorΚυριαζόπουλος, Ιωάννηςel
dc.date.accessioned2026-01-07T13:00:04Z
dc.date.available2026-01-07T13:00:04Z
dc.date.issued2025-12-16
dc.description.abstractΗ παρούσα διπλωματική εργασία πραγματεύεται την ανάπτυξη και ανάλυση επιθέσεων τύπου pollution σε σύγχρονες γλώσσες προγραμματισμού, με κύρια έμφαση στο οικοσύστημα C#/.NET και συγκριτική αναφορά στο prototype pollution της JavaScript. Το prototype pollution αποτελεί μία γνωστή κατηγορία επιθέσεων στη JavaScript, η οποία εκμεταλλεύεται τη δυναμική φύση των prototypes ώστε να τροποποιήσει κοινόχρηστες δομές αντικειμένων, οδηγώντας σε απρόβλεπτη συμπεριφορά εφαρμογών, παραβίαση λογικής ασφαλείας ή κλιμάκωση δικαιωμάτων. Σκοπός της εργασίας είναι να διερευνηθεί κατά πόσο αντίστοιχες επιθέσεις μπορούν να εμφανιστούν σε statically typed περιβάλλοντα όπως το C#, παρά την απουσία prototype-based inheritance. Αναλύονται μηχανισμοί και χαρακτηριστικά της πλατφόρμας .NET, όπως reflection, object deserialization, configuration binding, dynamic types και shared mutable state, τα οποία μπορούν να δημιουργήσουν συνθήκες «pollution-like» αλλοίωσης δεδομένων ή συμπεριφοράς σε επίπεδο εφαρμογής. Η προσέγγιση της εργασίας δεν περιορίζεται στην ανακάλυψη υπαρκτών vulnerabilities, αλλά εστιάζει στη θεωρητική και πρακτική μοντελοποίηση επιθετικών σεναρίων που μιμούνται τη λογική και τον αντίκτυπο του pollution. Μέσα από πειραματικές υλοποιήσεις και ανάλυση κώδικα, αναδεικνύονται τα όρια ασφαλείας της πλατφόρμας και οι κίνδυνοι που προκύπτουν από ακατάλληλη χρήση δυναμικών μηχανισμών. Τέλος, παρουσιάζονται συμπεράσματα και προτάσεις για ασφαλέστερο σχεδιασμό εφαρμογών C#/.NET, καθώς και σύγκριση των μοντέλων ασφάλειας μεταξύ δυναμικών και στατικά τυποποιημένων γλωσσών.el
dc.description.abstractThis thesis focuses on the analysis and implementation of pollution-type attacks in modern programming languages, with a primary emphasis on the C#/.NET ecosystem and a comparative study of JavaScript prototype pollution. Prototype pollution is a well-known attack vector in JavaScript that exploits the dynamic nature of prototype-based inheritance, allowing attackers to modify shared object structures and cause unexpected application behavior, security logic bypasses, or privilege escalation. The objective of this work is to investigate whether similar attack patterns can exist in statically typed environments such as C#, despite the absence of prototype-based inheritance. The study examines core .NET mechanisms including reflection, object deserialization, configuration binding, dynamic typing, and shared mutable objects, which may introduce conditions that resemble pollution in terms of state manipulation and behavioral impact. Rather than focusing solely on known vulnerabilities, the thesis adopts a broader perspective by modeling and implementing theoretical attack scenarios that imitate the conceptual logic of pollution attacks. These scenarios demonstrate how improper handling of shared state and dynamic object modification can lead to security weaknesses, even in strongly typed languages. Through practical experimentation and code-level analysis, the thesis highlights the security boundaries of the .NET platform and identifies risky design patterns that may facilitate pollution-like effects. The work concludes with a discussion on the fundamental security differences between dynamic and statically typed languages and proposes mitigation strategies and secure design principles for developing robust applications within the C#/.NET environment.en
dc.embargo.ruleOpen access
dc.format.extentσελίδες 59el
dc.identifier.urihttps://pyxida.aueb.gr/handle/123456789/12593
dc.identifier.urihttps://doi.org/10.26219/heal.aueb.9682
dc.languageel
dc.rightsAttribution-NonCommercial-NoDerivatives 4.0 Internationalen
dc.rights.urihttp://creativecommons.org/licenses/by-nc-nd/4.0/
dc.subjectPrototypeen
dc.subjectPollutionen
dc.subjectC#en
dc.subjectJavascripten
dc.subjectInheritanceen
dc.subjectΠρωτότυποel
dc.subjectΜόλυνσηel
dc.subjectΚληρονομικότηταel
dc.titleΑνάπτυξη και υλοποίηση επιθέσεων τύπου pollution σε C#/.NETel
dc.title.alternativeDevelopment and implementation of pollution-type attacks in C#/.NETen
dc.typeText

Αρχεία

Πρωτότυπος φάκελος/πακέτο

Τώρα δείχνει 1 - 4 από 4
Φόρτωση...
Μικρογραφία εικόνας
Ονομα:
Kyriazopoulos_2025.pdf
Μέγεθος:
1.74 MB
Μορφότυπο:
Adobe Portable Document Format
Περιγραφή:
Watermarked/Υδατογραφημένο
Δεν υπάρχει διαθέσιμη μικρογραφία
Ονομα:
Kyriazopoulos_2025_Presentation.ppt
Μέγεθος:
142 KB
Μορφότυπο:
Microsoft Powerpoint
Δεν υπάρχει διαθέσιμη μικρογραφία
Ονομα:
Kyriazopoulos_2025_PollutionInCSharp_v2.zip
Μέγεθος:
116.04 MB
Μορφότυπο:
Unknown data format
Δεν υπάρχει διαθέσιμη μικρογραφία
Ονομα:
Kyriazopoulos_2025_VulnerableApp.zip
Μέγεθος:
5.03 MB
Μορφότυπο:
Unknown data format