Στις 22 Δεκεμβρίου 2010 9:13 π.μ., ο χρήστης Alexios Zavras <zvr+foss [ at ] zvr [ dot ] gr> έγραψε: > Nick Kossifidis wrote [edited]: >> Να 'στε καλά ρε παιδιά, ευχαριστώ πολύ ! >> Ελπίζω να το δει κανένας OpenBSDας μπας και κόψουν τις μ@#$κίες... > > νίκο, > > ως από τους πιο σχετικούς εδώ μέσα, > μας δίνεις το σχόλιο σου για την υπόθεση > του openssh backdoor που βγήκε κι είπε ο Theo; > > αρχικό mail: > http://marc.info/?l=openbsd-tech&m=129236621626462 > Καταρχάς υπάρχουν πολύ ποιο σχετικοί στη λίστα αλλά whatever :P Αρχικά τα backdoors δεν είναι στο openssh αλλά στο crypto framework του πυρήνα του OpenBSD (το αντίστοιχο στο Linux είναι αν έχετε δει στο make menuconfig του πυρήνα, το "Cryptographic API" ή απλά CryptoAPI). Με λίγα λόγια αυτό που κάνει το crypto framework στον πυρήνα είναι να παρέχει υπηρεσίες κρυπτογράφησης σε διάφορα modules που το χρειάζονται πχ. wi-fi drivers για software wep, modules που αφορούν hardware crypto accelerators και random number generators, encrypted partitions, tpm devices, γενικώς χρησιμοποιείται σε πολλά τμήματα. Το ποιο κλασσικό από αυτά και το ποιο σύνηθες είναι σε modules που παίζουν με encrypted network traffic, με κυριότερο παράδειγμα το IPSEC (γι' αυτό εκεί αναφέρεται ο Theo πρώτα απ' όλα).Το αρχικό IPSEC implementation του OpenBSD βγήκε απ' το release των Ιωαννίδη, Κερομύτη και Provos (www1.cs.columbia.edu/~angelos/Papers/ipsec.pdf), που ήταν και το πρώτο open implementation (αξίζει να αναφερθεί ότι έβγαλαν κώδικα και για Linux και για OpenBSD ταυτόχρονα -αυτό για όσους λένε ότι στο OpenBSD το είχαν πρώτοι :P). Το implementation στο Linux, τόσο το open/freeswan (που παίζει σε FreeBSD/OSX/Linux) όσο και το υπάρχον (που γράφτηκε απ' τον davem -David Miller- και τον Alexey Kuznetsov) δεν βασίστηκαν απ' όσο ξέρω σε αυτό το implementation και σε κάθε περίπτωση διαφέρουν απ' το implementation του OpenBSD, κοινώς δε νομίζω ότι τα backdoors που ενδεχομένως μπήκαν στο IPSEC implementation του OpenBSD μετά το αρχικό implementation μεταφέρθηκαν αλλού. Ομοίως και το Crypto framework του OpenBSD είναι ολοδικό τους, δεν έχουμε πάρει απ' όσο ξέρω κάτι στο Linux (δε ξέρω αν έχουν πάρει στο FreeBSD). Επίσης έχουν περάσει χρόνια από τότε που υποτίθεται ότι μπήκαν τα backdoors, όλο και κάποιος θα πέτυχε κάτι (τουλάχιστον στο IPSEC implementation είναι σχετικά εύκολο να καταλάβεις τι παίζει, στο crypto API υπάρχουν κάποια κομμάτια που ο άλλος πρέπει να έχει μαθηματικό κλπ υπόβαθρο για να τα καταλάβει), δε νομίζω ότι είναι τόσο σοβαρό το πρόβλημα, αν και η προσέγγιση του Χρήστου είναι αρκετά ρεαλιστική, δεν λήγουν έτσι τα NDA, πόσο μάλιστα με το FBI κλπ, ή είναι μούφα η όλη υπόθεση ή όντως θέλουν να ξαναβάλουν το χέρι τους. Ωστόσο είναι αρκετές οι εταιρίες που επειδή το OpenBSD είναι BSD licensed και είχε πλασαριστεί και από την Αμερικάνικη κυβέρνηση ως "super secure" (είχαν πάρει και funding απ' το DARPA κλπ), πήραν πολύ κώδικα από εκεί στα δικά τους crypto frameworks και ipsec implementations και πιθανόν να μην ακολούθησαν τα ενδεχόμενα updates του OpenBSD, οπότε να είναι ακόμα tainted. Γι' αυτό η κίνηση του Theo να βγει και να πει δημόσια το ενδεχόμενο να έχει συμβεί κάτι τέτοιο ήταν πολύ σωστή (κι ας του τα 'χω μαζεμένα :P). Υπάρχει ένα θέμα αρχικά για το κατά πόσο εμπιστευόμαστε εταιρίες και κυβερνητικές υπηρεσίες να συνεισφέρουν στο ελεύθερο λογισμικό σε τέτοια τμήματα και κατά πόσο είναι δυνατό το review τους από πολύ κόσμο. Πιστεύω ότι στο Linux δε θα μπορούσε ποτέ να γίνει έστω και η προσπάθεια για κάτι τέτοιο. Ακόμα και το Selinux που το έγραψε η NSA (και δεν έχει μέσα crypto τμήματα, ποιο πολύ authentication κλπ framework είναι, κοινώς μπορεί να γίνει review και χωρίς να είσαι crypto expert) ουδέποτε έγινε enabled by default στο Linux παρά τις πιέσεις, ενώ αν δείτε τώρα έχουμε τουλάχιστον 3-4 in kernel security frameworks και 2 εκτός (που διαφωνούν με την αρχιτεκτονική των Linux Security Modules και τα παρακάμπτουν), το Grsecurity και το Rsbac. Επίσης το Linux το κοιτάει πολύς κόσμος, πολύ περισσότερος σε σχέση με το OpenBSD και παρ' όλα αυτά έχει ποιο strict policy για το πώς μπαίνει ένα patch στον kernel (μόνο απ' τον maintainer του subsystem, ενώ στο BSD έχει αρκετός κόσμος access στο cvs) + στο Linux δεν υπάρχει αυτή η έννοια του αρχηγού/ειδήμονα κλπ (γι' αυτό θα μου πεις πλακωνόμαστε συχνά :P) όπως στο OpenBSD όπου ότι πει ο master οι υπόλοιποι απλά συμφωνούν (αν ο master/ειδήμονας τη κάνει τη δουλειά δεν θα τον αμφισβητήσουν ιδιαίτερα -πόσο μάλλον αν τον "πάει" ο Theo-). Αν δείτε επίσης έρευνα γίνεται κατά βάση στο Linux όχι στο BSD, στην Αμερική ίσως υπάρχουν κάποιοι που προτιμούν το BSD (λόγω του ότι είναι "δικό τους παιδί") αλλά ακόμα κι εκεί κυρίως στο Linux κάνουν δουλειά, άρα αν υπάρχει πιθανότητα κάποιος crypto expert να κάνει review τον κώδικα, αυτή η πιθανότητα είναι σαφώς μεγαλύτερη στο Linux. Τέλος στο Linux έχουμε τις διανομές, όπου ο καθένας κάνει τα δικά του (και με τη καλή έννοια -βλ. openwall που πέταξαν τελείως τα SUID προγράμματα και έχουν κάνει και άλλα ωραία- και την όχι τόσο καλή -βλ. την ιστορία με την OpenSSL στο debian/ubuntu-), δεν είναι όπως στο BSD που είναι ένα πακέτο με σαφώς λιγότερη ευελιξία και άρα κάποιος μπορεί να έχει καλύτερο έλεγχο για το τι γίνεται. Με άλλα λόγια αν κάποιος πήγαινε να βάλει ένα backdoor στο Linux δε θα ήταν σίγουρος ότι θα το έκαναν enable όλοι ή ότι θα κρατήσει για πάνω από μήνα, στο OpenBSD μπορεί να είναι ποιο σίγουρος (ειδικά αν ταυτόχρονα βγαίνει και τους φουσκώνει τα μυαλά ότι είναι super secure και επαναπαύονται). > προφανώς για τα δικά σου, > ισχύει κι από μένα ό,τι ειπώθηκε μέχρι τώρα: > keep up the good work! > Να 'σαι καλά ρε φίλε ;-) -- GPG ID: 0xD21DB2DB As you read this post global entropy rises. Have Fun ;-) Nick