Alcuni derivati VT100 si basano sulla sicurezza lato client?

3

I terminali VT100 sono "terminali stupidi": visualizzano solo i dati dal server e inviano i tasti, senza elaborazione locale. In questa configurazione, possono esserci difetti di applicazione sul lato server e la connessione di solito non è crittografata. Ma il client non è invocato per i controlli di sicurezza.

Derivati più recenti come VT220 hanno introdotto più codici di controllo: colori, controllo del cursore, grafica primitiva. Dalla lettura di base su Wikipedia non riesco a vedere come hanno inviato i dati al server. Sono ancora solo tratti di chiave diretti o un protocollo più strutturato?

Qualcuno mi ha detto informalmente che alcuni di questi protocolli introducono controlli di sicurezza lato client. Per esempio. lo schermo avrebbe diversi campi, alcuni dei quali sono di sola lettura - e il controllo è applicato sul client. Ciò sarebbe interessante per le persone di sicurezza, perché un client malintenzionato potrebbe ignorare tali controlli. Tuttavia, non riesco a trovare alcuna informazione online per dimostrare che questo era effettivamente un problema.

Chiedo solo interesse storico. Conosci i protocolli relativi a stupidi terminali in cui il client esegue i controlli di sicurezza?

    
posta paj28 29.10.2016 - 15:08
fonte

2 risposte

2

Sebbene, come osservato nei commenti, alcuni terminali, in particolare la serie 3270 dell'IBM (soprannominata 327X), eseguissero un significativo "editing" locale al fine di ridurre la trasmissione e soprattutto il tempo di elaborazione e, come comodità per gli utenti / operatori, questo non era progettato o usato come controllo di sicurezza.

La cosa più vicina a cui posso pensare è che quasi tutti i terminali di "time-sharing" quindi, come i dispositivi e la maggior parte dei siti web oggi, si aspettavano che tu avessi accesso con una password o simili una volta e in seguito ti hanno permesso di fare vari comandi ecc. definito dal tuo login / userid per un periodo di tempo abbastanza lungo, in modo che se il tuo terminale non si trovasse in un'area fisicamente protetta e l'avessi lasciato per andare in bagno o altro durante l'accesso qualcuno potrebbe usare il tuo in sessione per fare cose che non erano autorizzati a fare. Ma questo sembra così ovvio che non sono sicuro che sia una risposta alla tua domanda.

    
risposta data 04.11.2016 - 08:21
fonte
3

Ai vecchi tempi, il nonno di tutti i terminali era il Teletype model 33 , uno dei primi in grado di ASCII terminale. AFAIK, l'unico protocollo era:

  • invia il codice ASCII per ogni tasto premuto
  • stampa il carattere per qualsiasi codice ricevuto

È ancora ciò che viene fornito per gli emulatori dumb . Nessuna sicurezza coinvolta qui.

Sono arrivati al terminal con gli schermi. Il produttore ha implementato vari codici di controllo per consentire il posizionamento del cursore sullo schermo e per consentire alcuni effetti: lampeggiante, attenuato o ad alta intensità, video inverso e infine colori. Più possibilità di presentazione, ma ancora nessun posto per la sicurezza.

Con quei terminali è stato possibile utilizzare la modifica a schermo intero (nel senso di ciò che è consentito con curses e editor come emacs e vi), ma tutta la presentazione è stata fatta dal server. Alcuni produttori di terminali hanno deciso di implementare un modello transazionale: il server ha inviato una pagina, contrassegnando alcune zone come di sola lettura e altre come modificabili, il terminale lo ha visualizzato e ha consentito all'operatore di riempire i campi modificabili localmente e solo quando tutta la pagina è stata completata, l'operatore ha premuto un tasto Invia e tutti i campi modificabili sono stati inviati al server in un'unica operazione. Ciò ha permesso a un singolo server di accettare molto più terminale.

Ma nessuna sicurezza era coinvolta: il terminale era locale (cablato) o connesso tramite semplici modem. L'utente doveva effettuare il login quando ha collegato per la prima volta, punto e basta. Tutta la sicurezza era a livello di applicazione sul server, perché l'equivalente di Javascript per inviare codice da eseguire sul terminale non esisteva.

    
risposta data 29.10.2016 - 19:41
fonte

Leggi altre domande sui tag