Τα βιομηχανικά PLC παγκοσμίως επηρεάζονται από ελαττώματα CODESYS V3 RCE
Εκατομμύρια PLC (προγραμματιζόμενοι λογικοί ελεγκτές) που χρησιμοποιούνται σε βιομηχανικά περιβάλλοντα παγκοσμίως διατρέχουν κίνδυνο για 15 ευπάθειες στο κιτ ανάπτυξης λογισμικού CODESYS V3, επιτρέποντας επιθέσεις απομακρυσμένης εκτέλεσης κώδικα (RCE) και άρνησης υπηρεσίας (DoS).
Περισσότεροι από 500 κατασκευαστές συσκευών χρησιμοποιούν το CODESYS V3 SDK για προγραμματισμό σε περισσότερα από 1.000 μοντέλα PLC σύμφωνα με το πρότυπο IEC 61131-3, επιτρέποντας στους χρήστες να αναπτύξουν προσαρμοσμένες ακολουθίες αυτοματισμού.
Το SDK παρέχει επίσης μια διεπαφή διαχείρισης των Windows και έναν προσομοιωτή που επιτρέπει στους χρήστες να δοκιμάσουν τη διαμόρφωση και τον προγραμματισμό του PLC πριν το αναπτύξουν στην παραγωγή.
Τα δεκαπέντε ελαττώματα στο CODESYS V3 SDK ήταν
ανακαλύφθηκε από τη Microsoft
ερευνητές, οι οποίοι τα ανέφεραν στην CODESYS τον Σεπτέμβριο του 2022. Ο προμηθευτής κυκλοφόρησε ενημερώσεις ασφαλείας για την αντιμετώπιση των προβλημάτων που εντοπίστηκαν τον Απρίλιο του 2023.
Λόγω της φύσης αυτών των συσκευών, δεν ενημερώνονται συχνά για την επίλυση προβλημάτων ασφαλείας, επομένως η ομάδα ασφαλείας της Microsoft δημοσίευσε μια λεπτομερή ανάρτηση χθες για να αυξήσει την ευαισθητοποίηση σχετικά με τους κινδύνους και να βοηθήσει τις επιδιορθώσεις να επιταχύνουν.

Συσκευές CODESYS που εκτίθενται στο διαδίκτυο
Πηγή: Microsoft
Τα τρωτά σημεία CODESYS
Η Microsoft εξέτασε δύο PLC από τη Schnieder Electric και την WAGO που χρησιμοποιούν CODESYS V3 και ανακάλυψε 15 ευπάθειες υψηλής σοβαρότητας (CVSS v3: 7.5 – 8.8).
Τα ελαττώματα είναι: CVE-2022-47378, CVE-2022-47379, CVE-2022-47380, CVE-2022-47381, CVE-2022-47382, CVE-2022-47383, CVE-73202- 47385, CVE-2022-47386, CVE-2022-47387, CVE 2022-47388, CVE-2022-47389, CVE-2022-47390, CVE-2022-47392, CVE-2393.
Το κύριο ζήτημα είναι στον μηχανισμό αποκωδικοποίησης ετικετών του SDK, συγκεκριμένα στο γεγονός ότι οι ετικέτες αντιγράφονται στο buffer της συσκευής χωρίς να επαληθεύεται το μέγεθός τους, δίνοντας στους εισβολείς μια ευκαιρία υπερχείλισης buffer.
Αυτές οι ετικέτες είναι φορείς δεδομένων ή δομών δεδομένων που παρέχουν κρίσιμες οδηγίες για τη λειτουργία του PLC.
Το πρόβλημα υπερχείλισης buffer δεν είναι μεμονωμένο, καθώς η Microsoft το εντόπισε σε 15 στοιχεία CODESYS V3 SDK, συμπεριλαμβανομένων των CMPTraceMgr, CMPapp, CMPDevice, CMPApp, CMPAppBP, CMPAppForce και CMPFileTransfer.
Αν και τα ελαττώματα απαιτούν έλεγχο ταυτότητας για την εκμετάλλευση, η Microsoft λέει ότι αυτή η απαίτηση μπορεί να παρακαμφθεί με χρήση
CVE-2019-9013
ένα άλλο ελάττωμα που επηρεάζει το CODESYS V3 που εκθέτει τα διαπιστευτήρια χρήστη κατά τη μεταφορά σε μορφή καθαρού κειμένου, όπως φαίνεται παρακάτω.
Σε 12 από τις 15 περιπτώσεις, οι αναλυτές της Microsoft κατάφεραν να αξιοποιήσουν το ελάττωμα για να αποκτήσουν απομακρυσμένη εκτέλεση κώδικα στο PLC.
του CODESYS
συμβουλευτική για την ασφάλεια
παραθέτει τα ακόλουθα προϊόντα ως επηρεάζονται εάν εκτελούν εκδόσεις πριν από την 3.5.19.0, ανεξάρτητα από το υλικό και τη διαμόρφωση του λειτουργικού συστήματος:
- CODESYS Control RTE (SL)
- CODESYS Control RTE (για Beckhoff CX) SL
- CODESYS Control Win (SL)
- CODESYS Control Runtime System Toolkit
- Εργαλειοθήκη CODESYS Safety SIL2 Runtime
- CODESYS Safety SIL2 PSP
- CODESYS HMI (SL)
- Σύστημα Ανάπτυξης CODESYS V3
- Χρόνος εκτέλεσης προσομοίωσης CODESYS Development System V3
Εκτός από τα παραπάνω, τα ακόλουθα προϊόντα επηρεάζονται σε εκδόσεις πριν από την 4.8.0.0:
- CODESYS Control για BeagleBone SL
- CODESYS Control για emPC-A/iMX6 SL
- CODESYS Control για IOT2000 SL
- CODESYS Control για Linux SL
- CODESYS Control για PFC100 SL
- CODESYS Control για PFC200 SL
- CODESYS Control για PLCnext SL
- CODESYS Control για Raspberry Pi SL
- CODESYS Control για WAGO Touch Panels 600 SL
Συνιστάται στους διαχειριστές να κάνουν αναβάθμιση σε CODESYS V3 v3.5.19.0 το συντομότερο δυνατό, ενώ η Microsoft συνιστά επίσης την αποσύνδεση των PLC και άλλων κρίσιμων βιομηχανικών συσκευών από το διαδίκτυο.


