Ο διακομιστής μεσολάβησης outline-ss-server 1.4 έχει κυκλοφορήσει, χρησιμοποιώντας το πρωτόκολλο Shadowsocks για την απόκρυψη μοτίβων κυκλοφορίας, την παράκαμψη τείχους προστασίας και την παραπλάνηση συστημάτων επιθεώρησης πακέτων. Ο διακομιστής αναπτύσσεται από το έργο Outline, το οποίο παρέχει επιπλέον ένα πλαίσιο εφαρμογών-πελατών και μια διεπαφή διαχείρισης, επιτρέποντας την ταχεία ανάπτυξη συστημάτων πολλαπλών χρηστών. Shadowsocks-διακομιστές που βασίζονται στο outline-ss-server σε δημόσια περιβάλλοντα cloud ή σε υλικό εσωτερικής εγκατάστασης, διαχειρίζονται αυτούς τους διακομιστές μέσω μιας διεπαφής ιστού και οργανώνουν την πρόσβαση των χρηστών χρησιμοποιώντας κλειδιά. Ο κώδικας αναπτύσσεται και συντηρείται από την Jigsaw, ένα τμήμα της Google που δημιουργήθηκε για την ανάπτυξη εργαλείων για την παράκαμψη της λογοκρισίας και τη διευκόλυνση της ελεύθερης ανταλλαγής πληροφοριών.
Το Outline-ss-server είναι γραμμένο σε Go και διανέμεται με την άδεια χρήσης Apache 2.0. Βασίζεται στον κώδικα proxy.υπηρέτης go-shadowsocks2, δημιουργήθηκε από την κοινότητα προγραμματιστών ShadowsocksΠρόσφατα, η κύρια δραστηριότητα του έργου Shadowsocks επικεντρώνεται στην ανάπτυξη ενός νέου διακομιστή στη γλώσσα Rust, ενώ η υλοποίηση Go δεν έχει ενημερωθεί για πάνω από ένα χρόνο και υστερεί αισθητά σε λειτουργικότητα.
Οι διαφορές μεταξύ του outline-ss-server και του go-shadowsocks2 πηγάζουν από την υποστήριξη για σύνδεση πολλών χρηστών μέσω μίας θύρας δικτύου, τη δυνατότητα ανοίγματος πολλαπλών θυρών δικτύου για λήψη συνδέσεων, υποστήριξη επανεκκίνησης και ενημερώσεις διαμόρφωσης χωρίς διακοπή συνδέσεων, ενσωματωμένη παρακολούθηση και εργαλεία τροποποίησης κυκλοφορίας βασισμένα στην πλατφόρμα prometheus .io.

Το Outline-ss-server προσθέτει επίσης προστασία από επιθέσεις που περιλαμβάνουν την αποστολή αιτημάτων επαλήθευσης και την επανάληψη της κυκλοφορίας. Μια επίθεση αιτήματος επαλήθευσης στοχεύει στην ανίχνευση της παρουσίας ενός διακομιστή μεσολάβησης. Για παράδειγμα, ένας εισβολέας μπορεί να στείλει ένα αίτημα στον στόχο. Shadowsocks-σύνολα δεδομένων διακομιστή διαφόρων μεγεθών και ανάλυση του όγκου δεδομένων που θα διαβάσει ο διακομιστής πριν εντοπίσει ένα σφάλμα και κλείσει τη σύνδεση. Μια επίθεση επανάληψης κυκλοφορίας βασίζεται στην κατάληψη της συνεδρίας μεταξύ του πελάτη και υπηρέτης ακολουθούμενη από μια προσπάθεια εκ νέου αποστολής των υποκλαπέντων δεδομένων για να προσδιοριστεί η παρουσία ενός διακομιστή μεσολάβησης.
Για προστασία από επιθέσεις μέσω αιτημάτων επαλήθευσης, ο διακομιστής outline-ss-server, όταν φτάνουν εσφαλμένα δεδομένα, δεν τερματίζει τη σύνδεση και δεν εμφανίζει σφάλμα, αλλά συνεχίζει να λαμβάνει πληροφορίες, λειτουργώντας ως ένα είδος μαύρης τρύπας. Για προστασία από την επανάληψη, τα δεδομένα που λαμβάνονται από τον πελάτη ελέγχονται επιπλέον για επαναλήψεις από αθροίσματα ελέγχου που είναι αποθηκευμένα για τις τελευταίες χιλιάδες ακολουθίες χειραψίας (μέγιστο 40 χιλιάδες, το μέγεθος ορίζεται κατά την εκκίνηση του διακομιστή και καταναλώνει 20 byte μνήμης ανά ακολουθία). Για τον αποκλεισμό επαναλαμβανόμενων απαντήσεων από τον διακομιστή, όλες οι αλληλουχίες χειραψίας διακομιστή χρησιμοποιούν κωδικούς ελέγχου ταυτότητας HMAC με ετικέτες 32 bit.
Με βάση το επίπεδο του πρωτοκόλλου απόκρυψης κυκλοφορίας Shadowsocks Στην υλοποίησή του, το outline-ss-server είναι παρόμοιο με το pluggable transport του Obfs4 στο δίκτυο ανωνυμίας Tor. Το πρωτόκολλο δημιουργήθηκε για να παρακάμψει το Great Firewall της Κίνας και επιτρέπει την αρκετά αποτελεσματική απόκρυψη της κίνησης που δρομολογείται μέσω ενός άλλου διακομιστή (η κίνηση είναι δύσκολο να αναγνωριστεί χάρη στην συμπερίληψη ενός τυχαίου seed και την προσομοίωση μιας συνεχούς ροής).
Το SOCKS5 χρησιμοποιείται ως πρωτόκολλο proxy για αιτήματα. Ένας proxy με δυνατότητα SOCKS5 εκκινείται στο τοπικό σύστημα, ο οποίος διοχετεύει την κυκλοφορία στον απομακρυσμένο διακομιστή από τον οποίο εκτελούνται τα αιτήματα. Η κυκλοφορία μεταξύ του προγράμματος-πελάτη και του διακομιστή τοποθετείται σε μια κρυπτογραφημένη σήραγγα (υποστηρίζεται η κρυπτογράφηση με έλεγχο ταυτότητας AEAD_CHACHA20_POLY1305, AEAD_AES_128_GCM και AEAD_AES_256_GCM), με κύριο στόχο την απόκρυψη του γεγονότος ότι η σήραγγα δημιουργείται. ShadowsocksΥποστηρίζεται η διοχέτευση TCP και UDP, καθώς και η δημιουργία προσαρμοσμένων διοχετεύσεων που δεν περιορίζονται στο SOCKS5, μέσω της χρήσης πρόσθετων (plugins) παρόμοιων με τις συνδέσεις μεταφοράς του Tor.
Πηγή: opennet.ru
