Dipende.
Di quale tipo di applicazione stiamo parlando?
- Molte altre applicazioni / siti dipendono da questo e devono aggiornarsi alle versioni più recenti?
(se usano la tua API, devi solo ridistribuirla e tutti usano la nuova versione Se devono scaricare e installare una nuova versione della tua app, la maggior parte di essi lo farà in un secondo momento o mai)
- È pubblico? (cioè visibile pubblicamente su internet?)
- Il codice sorgente è pubblico?
Se le risposte a tutte le domande sono "sì", probabilmente non dovresti esporre il tuo numero di versione.
Se la maggior parte o tutte le risposte sono "no", probabilmente non è che pericoloso.
Esempio 1: nginx
Una delle altre risposte utilizza nginx come esempio.
Per nginx, la risposta a tutte e tre le domande precedenti è "sì".
Questo è chiaramente un esempio in cui il numero di versione dovrebbe non essere esposto:
- nessuno ha bisogno di conoscere il numero di versione di un server alimentato da nginx eccetto il suo amministratore, quindi non è necessario renderlo pubblico
- un lotto di siti esegue nginx, quindi le vulnerabilità riguardano fondamentalmente la metà di Internet
- se viene rilevata una vulnerabilità, ogni hacker può scoprire come sfruttarlo controllando il codice sorgente
(e quando è corretto, tutti possono vedere come è stato fatto)
- quando viene risolta una vulnerabilità, ci sono ancora milioni di server che eseguono versioni vulnerabili di nginx e alcuni di essi non saranno mai aggiornati
Esempio 2: scambio di stack
Scorri verso il basso questo stesso sito (o qualsiasi altro sito nella rete SE), e vedrai questo:
LoStackOverflowetuttiisuoisitigemellisonovisibilipubblicamente,maillorocodicesorgenteèprivatoecontrollanotutteleistanzepubbliche.
- èpiùdifficiletrovarevulnerabilitàsenzailcodicesorgente
- anchesevienerilevataunavulnerabilità:ilteamSEdevesolorisolverloeridistribuiretuttiisiti,quindisannochec'èancorailsitonosuInternetcheesegueancoralaversionevulnerabile.
Quindimostrareilnumerodiversionenondovrebbeessereungrossorischio,eapparentementehannodecisodimostrarlo.
(d'altraparte,probabilmenterendepiùfacileladistribuzioneeiltest:distribuiscisuunodidieciserverconbilanciamentodelcarico,apriilsitoinunbrowserevediqualeversionestaiutilizzando)
Esempio3:softwareinterno
Lamiagiornatadilavoroèun'applicazioneclosed-source,nonweb,LOBperusointernoallasocietà.
- l'appsiauto-aggiornaautomaticamenteall'avvio
- lepersoneinizianoalavorareinmomentidiversi(turnidinotte!)
- spessoimplementiamoduranteilgiorno
Questosignificachenonpossiamoassicurarcichetuttistianosempreutilizzandolaversionepiùrecentee,quandoarrivanosegnalazionidibug,vogliamosaperequaleversionestavanousando.
QuindilebarreinaltodellafinestraprincipaleetuttelefinestredimessaggiodiconoqualcosacomeOurLOBApp(Versione1.23,29marzo2017),quindiquestainformazioneègarantitaperesserepresentesututtigliscreenshotchericeviamo.
L'apphasolocirca200utentielamaggiorpartediessinonsonotecnici...quindimostrareilnumerodiversioneinquestoambientenonhaassolutamentealcunrischioperchéquasinessunosachecos'èuna"vulnerabilità" o "codice sorgente" : -)