Password management - the script

Pavlos Parissis p_pavlos at freemail.gr
Wed Dec 21 20:21:20 EET 2005


On Wed, 21 Dec 2005 16:21:06 +0200
"Nick Demou (enLogic)" <ndemou at enlogic.gr> wrote:

> Pavlos Parissis wrote:
> > ...
> > 
> > Αν και δεν έχω ιδέα απο python είπα να κάνω ένα απλό τέστ απο
> > περιέργεια , δίνοντας echo "dddd" |python show-pass.py 
> > 
> > Password DB
> > Don't use this programm if you are not authorized to do so (hit
> > ctrl-C to exit)
> > 
> > ?word, number, +, * >******Bad Command******
> > ?word, number, +, * >Traceback (most recent call last):
> >   File "show-pass.py", line 126, in ?
> >     cmd=left(raw_input(colst+'?word, number, +, * '+colend
> > +'>').strip(),255) EOFError: EOF when reading a line
> > 
> > και έχοντας στο μυαλό μου ότι αυτό τρέχει σαν κέλυφος, θα ήθελα να
> > ρωτήσω αν μια τέτοια συμπεριφορά μπορεί να προκαλέσει πρόβλημα.
> > 
> > Προσωπικά δεν θα επέτρεπα να δέχομαι options/args που δεν έχουν
> > νόημα για το πρόγραμμα. Μπορεί να μη δημιουργούν πρόβλημα αλλά εφ'
> > όσον δεν είναι σωστή πληροφορία δεν θα επέτρεπα να την κάνει parse
> > το πρόγραμμα μου.
> 
> 
> Χτύπησε η raw_input της python. Πρόκειτε για μία εντελώς απλή ρουτίνα 
> για interaction με τον χρήστη - περιμένει να γράψεις κάτι και να 
> πατήσεις enter και μετά επιστρέφει το string που έγραψες. Στην
> περίπτωση σου ουσιαστηκά δεν πάτησες enter (έδωσες EndOfFile) οπότε η
> raw_input εκάνε παραπονέθηκε.
> 
> Επηδή όμως αυτό το script τρέχει ως shell του χρήστη κάθε python 
> unhandled error (σαν αυτό) καταλήγει απλά στο να σε κάνει logout
> (δηλαδή να σου κόψει το ssh connection στην περίπτωση μας)
> 
> Δεν νομίζω λοιπόν ότι ή συμπεριφορά αυτή υποδηκνήεί κάποιο πρόβλημα
> (θα μπορούσα να την αποφύγω με έναν απλο error handler αλλά για πιο
> λόγο?)

Για το λόγο που έγραψα στο αρχικό μου γράμμα, δεν είναι ότι καλύτερο να επιτρέπεις
άσχετες πληροφορίες να περνάνε στον κώδικά σου.

> Κατά τα άλλα προσπαθώ κι εγώ σε αυτό το script να μη δέχομε μπούρδες
> από τον χρήστη (είναι ευτηχώς απλό στην περιπτωσή μου)

Μάλλον όχι και πολύ, διότι σα χρήστης έδωσα άχρηστες πληροφορίες και αυτές ταξίδεψαν ως τη
γραμμή 126 από τις 208 συνολικά γραμμές του προγράμματος.

Για να μην παρεξηγηθώ, αναφέρομαι στον τρόπο διαχείρισης της πληροφορίας διότι είχες πει,
διόρθωσέμαι αν κάνω λάθος, ότι θέλεις να γράψεις ένα πρόγραμμα με όσο το δυνατον λιγότερες τρύπες ασφαλείας. Πιστεύω πως ένα πρόγραμμα που είναι πολύ αυστηρό στο τι πληροφορία δέχεται, έχει πολυ λιγότερες πιθανότητες να έχει τρύπες ασφαλείας από ένα που δεν είναι.

> Και πάλι ευχαριστώ για το beta testing

Τίποτα, ελπιζώ να φανούν χρήσιμα τα σχόλια μου.
 
Παύλος

Υ.Γ. Είμαι μέλος της λίστας και διαβάζω τα γράμματα που μου έρχονται δε χρειάζεται να μου
στέλνεις και προσωπικό γράμμα σε κάθε απάντησή σου.




More information about the Linux-greek-users mailing list