Μια νέα ευπάθεια στο Punk OAuth2 για Perl επιτρέπει σε κακόβουλους να ανακατευθύνουν χρήστες σε εξωτερικό ιστότοπο αμέσως μετά την επιτυχή σύνδεσή τους. Το ζήτημα, που καταγράφεται ως CVE-2026-75628, αφορά τον έλεγχο της παραμέτρου return και διορθώθηκε στην έκδοση 0.03.

Η αδυναμία δεν επιτρέπει από μόνη της την κλοπή κωδικών πρόσβασης ή κωδικών εξουσιοδότησης. Δημιουργεί όμως ένα αξιόπιστο μονοπάτι παραπλάνησης: ο χρήστης ξεκινά τη σύνδεση από τη σωστή εφαρμογή, ολοκληρώνει την αυθεντικοποίηση και στη συνέχεια μεταφέρεται σε διεύθυνση που ελέγχει ο επιτιθέμενος.
Δείτε επίσης: Οι επιθέσεις ηλεκτρονικού ψαρέματος μέσω OAuth εξελίσσονται
Punk OAuth2: η ευπάθεια στην παράμετρο return
Το Punk OAuth2 χρησιμοποιεί τη συνάρτηση oauth2_login για να διαβάσει την παράμετρο return από το αίτημα έναρξης της σύνδεσης. Η τιμή περνά από τη same_origin_path, η οποία αποθηκεύει τον προορισμό στη ροή της συνεδρίας ώστε ο χρήστης να επιστρέψει στην αρχική σελίδα μετά την αυθεντικοποίηση.
Ο έλεγχος απέρριπτε διευθύνσεις που δεν ξεκινούσαν με κάθετο, διευθύνσεις με δεύτερο χαρακτήρα επίσης κάθετο, καθώς και χαρακτήρες αλλαγής γραμμής. Δεν απέκλειε όμως τον ανάστροφο κάθετο ή τον οριζόντιο στηλοθέτη. Οι φυλλομετρητές χειρίζονται τον ανάστροφο κάθετο ως κάθετο σε ειδικά σχήματα URL και αφαιρούν τους στηλοθέτες πριν από την ανάλυση της διεύθυνσης.
Έτσι, ένας σύνδεσμος προς τη νόμιμη σελίδα σύνδεσης μπορούσε να περιέχει ειδικά διαμορφωμένη τιμή, όπως /\\evil.example. Μετά την ολοκλήρωση της αυθεντικοποίησης, η διεύθυνση μπορούσε να αναλυθεί ως εξωτερικός προορισμός. Η επίσημη καταγραφή του CVE διευκρινίζει ότι η ανακατεύθυνση δεν μεταφέρει κωδικό εξουσιοδότησης ή διακριτικό πρόσβασης στον τρίτο ιστότοπο.

Τι σημαίνει το CVE-2026-75628 για τις εφαρμογές
Ο κίνδυνος αφορά κυρίως εφαρμογές που χρησιμοποιούν το Punk OAuth2 και αποδέχονται την παράμετρο return χωρίς πρόσθετη πολιτική λίστας επιτρεπόμενων προορισμών. Για να πετύχει η επίθεση, ο χρήστης πρέπει να ακολουθήσει τον ειδικά κατασκευασμένο σύνδεσμο και να ολοκληρώσει κανονικά τη σύνδεση. Το αποτέλεσμα μοιάζει με νόμιμη μετάβαση, γεγονός που μπορεί να ενισχύσει μια επόμενη προσπάθεια ηλεκτρονικού ψαρέματος.
Η καταγραφή του CVE δεν αποδίδει βαθμολογία CVSS και δεν αναφέρει δημόσιο κώδικα εκμετάλλευσης. Αυτό δεν σημαίνει ότι η αδυναμία πρέπει να αγνοηθεί. Οι ανακατευθύνσεις μετά τη σύνδεση συχνά λειτουργούν ως κρίκος σε αλυσίδες κοινωνικής μηχανικής, ειδικά όταν η εφαρμογή χρησιμοποιείται από πολλούς οργανισμούς ή όταν οι χρήστες έχουν συνηθίσει να εμπιστεύονται το αρχικό domain.
Η ιδιαιτερότητα βρίσκεται στο χάσμα ανάμεσα στη γραμματική ενός URL και στην τελική ερμηνεία του από τον φυλλομετρητή. Ένας έλεγχος που βλέπει μόνο τα πρώτα bytes μπορεί να θεωρήσει ασφαλή μια διαδρομή, ενώ ο parser του URL μετατρέπει αργότερα τους χαρακτήρες σε διαφορετική δομή. Για αυτό οι έλεγχοι πρέπει να γίνονται με αξιόπιστη βιβλιοθήκη και να ακολουθούν την ίδια προδιαγραφή με τον client.
Σε περιβάλλοντα με ενιαία σύνδεση, το πρόβλημα χρειάζεται πρόσθετη προσοχή. Ένας χρήστης που μεταφέρεται σε σελίδα με παρόμοια εμφάνιση μπορεί να πληκτρολογήσει ξανά στοιχεία ή να εγκαταστήσει κακόβουλο περιεχόμενο. Η εφαρμογή οφείλει να διατηρεί σαφή πολιτική για το πού επιτρέπεται η επιστροφή και να απορρίπτει οποιαδήποτε εξωτερική προέλευση.
Δείτε επίσης: Grav API plugin: ευπάθεια και διαρροή JWT tokens μέσω URL
Η διορθωμένη έκδοση του Punk OAuth2
Οι συντηρητές διόρθωσαν το πρόβλημα στην έκδοση 0.03, η οποία κυκλοφόρησε στις 18 Αυγούστου 2026. Σύμφωνα με τις σημειώσεις της έκδοσης, η αλλαγή απορρίπτει όλους τους χαρακτήρες ελέγχου C0 και τον χαρακτήρα DEL, ενώ αποκλείει τους ανάστροφους καθέτους σε οποιοδήποτε σημείο της διαδρομής.

Οι διαχειριστές πρέπει να αναβαθμίσουν άμεσα κάθε εγκατάσταση του Punk OAuth2 που βρίσκεται σε έκδοση πριν από την 0.03 και να επανεξετάσουν τυχόν δικές τους συναρτήσεις επικύρωσης URL. Παράλληλα, είναι προτιμότερο οι εφαρμογές να χρησιμοποιούν προκαθορισμένους εσωτερικούς προορισμούς αντί να εμπιστεύονται αυθαίρετες τιμές από αιτήματα χρηστών.
Μέχρι να ολοκληρωθεί η αναβάθμιση, μπορεί να εφαρμοστεί προσωρινός κανόνας που απορρίπτει κάθε τιμή με ανάστροφο κάθετο, χαρακτήρα ελέγχου ή διπλό αρχικό κάθετο. Το μέτρο δεν αντικαθιστά την επίσημη διόρθωση, επειδή διαφορετικές βιβλιοθήκες μπορούν να κανονικοποιούν τις διευθύνσεις με διαφορετικό τρόπο. Αποτελεί όμως χρήσιμο περιορισμό για εφαρμογές που δεν μπορούν να ενημερωθούν αμέσως.
🔒 Προστατέψτε την ιδιωτικότητά σας με Proton VPN
Ελβετικό VPN από τους δημιουργούς του Proton Mail — αυστηρή πολιτική no-logs, ισχυρή κρυπτογράφηση και ενσωματωμένο NetShield που μπλοκάρει διαφημίσεις, trackers & malware.
- ✔ No-logs, με έδρα την Ελβετία (εκτός 14-Eyes)
- ✔ NetShield: φραγή διαφημίσεων, trackers & κακόβουλων domains
- ✔ Καλύπτει όλες τις συσκευές — δωρεάν έκδοση διαθέσιμη
Ο σύνδεσμος είναι συνεργατικός (affiliate) — το SecNews ενδέχεται να λάβει προμήθεια χωρίς επιπλέον κόστος για εσάς. Δεν επηρεάζει την ανεξαρτησία της αρθρογραφίας μας.
Η τεχνική ομάδα του SecNews προτείνει επίσης έλεγχο των αρχείων καταγραφής για ασυνήθιστες παραμέτρους return, όπως τιμές με ανάστροφους καθέτους, στηλοθέτες ή διπλό αρχικό κάθετο. Η αναζήτηση δεν αποδεικνύει από μόνη της επιτυχημένη επίθεση, μπορεί όμως να βοηθήσει στον εντοπισμό συνδέσμων που χρειάζονται περαιτέρω διερεύνηση.
Δείτε επίσης: WordPress: backdoor σε plugin ανακατεύθυνσης σελίδων

Το CVE-2026-75628 είναι ένα παράδειγμα του γιατί η επικύρωση διευθύνσεων πρέπει να ακολουθεί τον τρόπο με τον οποίο τις ερμηνεύουν πραγματικά οι φυλλομετρητές και όχι μόνο μια απλή σύγκριση χαρακτήρων. Η αναβάθμιση στο Punk OAuth2 0.03 και ο περιορισμός των επιτρεπόμενων προορισμών μειώνουν σημαντικά τον κίνδυνο.
