Come vengono realizzati i prodotti per la sicurezza - Una discussione con Bitdefender

Uno degli argomenti di interesse di 7 Tutorial(7 Tutorials) è la sicurezza. Non solo scriviamo articoli e tutorial su come avere un'esperienza di elaborazione(computing experience) sicura, ma esaminiamo anche regolarmente i prodotti per la sicurezza. Una delle cose su cui volevamo saperne di più, è come vengono realizzati i prodotti di sicurezza: quali sono i passaggi coinvolti? le sfide più importanti? ecc. La fortuna(Luck) ha avuto l'opportunità di incontrare Alexandru Constantinescu - Social Media Manager di Bitdefender , che ha subito detto: "Ehi! Perché non ci fai visita e scopri di più dal nostro team? Abbiamo accettato l' invito e oggi(invite and today)possiamo condividere con voi un'ampia discussione su come vengono realizzati i prodotti di sicurezza."

I nostri partner di discussione

BitDefender è una società di sicurezza(security company) che non dovrebbe richiedere molte presentazioni. O almeno non ai nostri lettori. Sono la principale azienda di sicurezza(security company) in Romania e sviluppano prodotti per la sicurezza che hanno ricevuto molti elogi e apprezzamenti(praise and appreciation) . I loro prodotti vengono costantemente visualizzati negli elenchi delle migliori soluzioni di sicurezza.

BitDefender - Cătălin Coșoi

Siamo andati al quartier generale di BitDefender(BitDefender headquarters) a Bucarest(Bucharest) e abbiamo avuto una lunga discussione con Cătălin Coșoi - Chief Security Researcher (nella foto sopra) e Alexandru Bălan - Senior Product Manager . Sono entrambe persone molto competenti e amichevoli, con le quali ci è piaciuto avere questa conversazione.

Logo BitDefender

Come vengono realizzati i prodotti di sicurezza

Non abbiamo perso molto tempo con le presentazioni e abbiamo subito iniziato la nostra conversazione.

Quali sono le fasi che attraversi durante lo sviluppo di una nuova versione di un prodotto di sicurezza, come Internet Security Suite?(What are the stages you go through, while developing a new version of a security product, such as an Internet Security Suite?)

L'approccio non è molto diverso dal tipico progetto di sviluppo software(software development project) . Diciamo che abbiamo appena lanciato la versione 2012 dei nostri prodotti. Non appena il lancio termina, iniziamo a lavorare sulla versione 2013. Innanzitutto(First) , decidiamo l'insieme di funzionalità e modifiche che verranno introdotte in questa prossima versione.

Al fine di identificare le funzionalità che avranno un grande impatto per la prossima versione, abbiamo discussioni con diversi tipi di pubblico: revisori, esperti di sicurezza, esperti tecnici e utenti che sono in grado di fornirci approfondimenti su cosa funziona, cosa no e cosa potrebbe funzionare bene nella prossima versione. Inoltre, il nostro team tecnico fornisce input in base alla propria esperienza e visione(expertise and vision) di dove vorrebbe portare il prodotto. Eseguiamo anche un'analisi di mercato(market analysis) per comprendere meglio la direzione o le direzioni in cui si stanno dirigendo le altre società. Sulla base di tutti questi input, facciamo una chiamata su cosa verrà incluso nella prossima versione e cosa no.

Poi, abbiamo la fase di sviluppo(development stage) , con diverse fasi di test incluse. Innanzitutto(First) , abbiamo un'anteprima interna quando testiamo il nostro software pre-beta. Successivamente, abbiamo diverse fasi beta:

  • Una beta interna,(beta –) proprio come l'anteprima interna, ma con un pubblico leggermente più ampio che testa il prodotto;
  • Una beta privata, in cui scegliamo una cerchia ristretta di utenti esterni all'azienda per testare il prodotto. Coinvolgiamo fino a qualche migliaio di utenti e scegliamo persone il cui feedback riteniamo utile. Includiamo utenti informati, persone con cui abbiamo avuto una collaborazione più lunga, esperti tecnici di cui apprezziamo l'opinione, ecc.;
  • Una beta pubblica:(beta –) si svolge da 2(place 2) a 3 mesi prima del lancio effettivo. In questo momento, chiunque sia interessato può ritirare il prodotto, testarlo e fornire feedback.

Durante le fasi beta perfezioniamo il prodotto su base continua e, poco prima del lancio, abbiamo una piccola finestra temporale per apportare gli ultimi ritocchi. Quindi ha luogo il lancio, in cui il marketing, le PR, le vendite e altri team sono coinvolti nella creazione del ronzio richiesto, mentre il team di sviluppo(development team) gestisce eventuali problemi che potrebbero sorgere.

In effetti, non suona diversamente da altri progetti di sviluppo software. Tuttavia, ci sono sfide specifiche per questa nicchia di sviluppo di software di sicurezza?(Indeed, it doesn't sound different from other software development projects. However, are there any challenges specific to this niche of developing security software?)

Questa dovrebbe essere la necessità di agilità nel vero senso della parola. È la chiave della nostra nicchia, più che in qualsiasi altra linea di sviluppo software(software development) . Per proteggere i computer, le reti e i dispositivi dei nostri clienti, dobbiamo essere molto veloci nel rispondere alle nuove minacce. In genere, non hai molti nuovi tipi di minacce che appaiono in un giorno. La maggior parte dei malware è semplicemente un'evoluzione del malware più vecchio e generalmente è facile gestirli. Tuttavia, quando viene fuori qualcosa di veramente nuovo, dobbiamo agire molto velocemente. In poche ore devi fornire almeno un aggiornamento alle tue definizioni o euristiche che manterranno i tuoi clienti al sicuro.

È ancora più difficile quando, per rispondere a una nuova minaccia, non è sufficiente aggiornare le nostre definizioni e dobbiamo sviluppare una nuova funzionalità nel nostro prodotto. Ciò ha un impatto non solo sui prodotti attualmente utilizzati dai nostri clienti, ma anche sui nuovi prodotti che stiamo sviluppando.

Prendiamo ad esempio Facebook . Man mano che cresceva in popolarità, divenne uno strumento frequente per la distribuzione di spam e malware(spam and malware) . Come ci si aspetterebbe, abbiamo sempre tenuto d'occhio questo social network e monitorato i collegamenti ai malware che venivano diffusi attraverso di esso e li abbiamo inclusi nel nostro database cloud. Tuttavia, abbiamo sentito la necessità di sviluppare un nuovo strumento che gestisca meglio il malware su Facebook . È così che abbiamo creato il concept per BitDefender SafeGo (un prodotto recensito anche in 7 Tutorial(7 Tutorials) ). Nell'autunno del 2010 abbiamo lanciato la prima versione di questo prodotto e in seguito è diventato parte integrante dei nostri prodotti di sicurezza, come BitDefender Internet Security Suite 2012 .

In effetti, un ottimo esempio. A proposito di BitDefender SafeGo, hai intenzione di tenerlo disponibile anche come prodotto gratuito per i clienti non paganti, come lo è oggi?(Indeed, a great example. Speaking of BitDefender SafeGo – do you intend to keep it available also as a free product for non-paying customers, as is today?)

Sì, questo prodotto sarà disponibile sia nei nostri prodotti per la sicurezza commerciale che come app gratuita per Facebook e Twitter(Facebook and Twitter app) . Questo perché i problemi di sicurezza su Facebook continueranno a esistere ea diffondersi. Questo prodotto ci aiuta a identificare il malware più velocemente e a proteggere sia i nostri clienti paganti che quelli non paganti. Inoltre, riteniamo che rendere disponibile questo strumento gratuitamente aiuti a sensibilizzare i clienti su BitDefender che potrebbero non aver sentito parlare di noi. Se gli piace BitDefender SafeGo , abbiamo maggiori possibilità che considerino altri prodotti di sicurezza che sviluppiamo.

Qualche altro esempio di quando è necessaria una grande agilità?(Any other examples of when great agility is needed?)

Un'altra cosa che facciamo del nostro meglio per fare è cercare di individuare opportunità per soddisfare altri tipi di esigenze di sicurezza delle persone, non solo il rilevamento e la protezione antivirus(virus detection and protection) standard . Ad esempio, se ricordi la controversia su Carrier IQ , un software installato da molti fornitori di dispositivi mobili, che registrava informazioni come la posizione senza avvisare gli utenti o consentire loro di rinunciare. Anche se questo non era un malware ed era preinstallato sul tuo telefono dal tuo operatore di telefonia mobile(mobile carrier) , molte persone volevano sapere se lo avevano installato sui loro telefoni o meno. Quando l'abbiamo saputo, era sabato(Saturday) . Un membro del nostro team è andato in ufficio, ha trascorso circa 3 o 4 ore e ha sviluppato un prodotto gratuito da zero, perUtenti Android(Android) . Si chiama Bitdefender Carrier IQ Finder e consente agli utenti Android di apprendere rapidamente se vengono monitorati o meno.

Parliamo un po' di cloud computing. Lo vediamo utilizzato sempre di più nei prodotti di sicurezza. Alcuni fornitori offrono anche solo sicurezza basata su cloud nei loro prodotti. Cosa ne pensi di questo approccio?(Let's talk a bit about cloud computing. We see it used more and more in security products. Some vendors even offer only cloud-based security in their products. What do you think about this approach?)

Il cloud(Cloud) computing ha sicuramente un ruolo importante nello spazio delle soluzioni di sicurezza. Tuttavia, riteniamo che un approccio ibrido che utilizza sia i database di definizione che il cloud offra i migliori risultati. Quando si utilizza solo il cloud, si dipende dalla connessione Internet(Internet connection) . Se non c'è più, il sistema rimane non protetto. Avere un mix di definizioni di malware e cloud, offre risultati migliori nella maggior parte degli scenari informatici.

Prevedi di utilizzare ancora di più il cloud computing in futuro? Forse anche adottare lo stesso approccio solo cloud?(Do you plan to use cloud computing even more in the future? Maybe even take the same cloud-only approach?)

Non proprio. Crediamo nell'utilizzo di quelle tecnologie che meglio si adattano allo scopo. Ad esempio, se vogliamo proteggere il browser web di un utente, utilizziamo solo il cloud. I siti Web dannosi sono gli stessi, indifferenti ai sistemi operativi e ai browser utilizzati dalle persone per accedervi. Inoltre, se non è disponibile l'accesso a Internet(Internet access) , l'utente non può navigare sul Web. Pertanto, non ci sono problemi se anche la protezione cloud(cloud protection) non è disponibile.

Per l'antivirus riteniamo sia meglio utilizzare sia le definizioni classiche che il cloud. Le definizioni aiutano a fornire protezione quando il cloud non è disponibile a causa di un'interruzione della connessione Internet(Internet connection) . Inoltre, rendono l'analisi comportamentale di file e applicazioni più veloce rispetto a quando si tenta di utilizzare il cloud per lo stesso scopo. Quando il nostro software esegue qualsiasi tipo di analisi comportamentale e dell'azione(action analysis) , le definizioni forniscono una velocità maggiore rispetto al cloud.

Dicci qualcosa in più sulle tecnologie che BitDefender usa per proteggere un sistema.(Tell us a bit more about the technologies BitDefender uses to protect a system.)

In generale, nei prodotti BitDefender ci sono tre tecnologie principali che vengono utilizzate per proteggere i sistemi:

  • Comportamento(Behave) : monitora e apprende il comportamento generale delle tue applicazioni;
  • Active Virus Control : monitora le azioni intraprese da un'applicazione e blocca(application and blocks) quelle sospette o malintenzionate.
  • Cloud : raccoglie informazioni da molte fonti sul malware e si aggiorna continuamente. I dati del cloud vengono utilizzati da quasi tutti i moduli di protezione inclusi nei nostri prodotti.

Quali sono le tue fonti per trovare e conoscere nuove forme di malware?(What are your sources for finding and learning about new forms of malware?)

Abbiamo molte fonti per conoscere nuovi virus e malware in generale:

  • Honeypots;
  • BitDefender SafeGo , con il suo supporto sia per Facebook che per Twitter(Facebook & Twitter) ;
  • I dati inviati(data sent) dai computer dei nostri clienti su infezioni e attività sospette;
  • La nostra collaborazione con altri fornitori di sicurezza;
  • Database di malware pubblici.

Honeypot. Sembra interessante. Raccontaci qualcosa in più su di loro. Cosa sono esattamente?(Honeypots. That sounds interesting. Tell us a bit more about them. What exactly are they?)

Gli Honeypot(Honeypots) sono sistemi che abbiamo distribuito sulla nostra rete, che agiscono come vittime. Il loro ruolo è quello di sembrare obiettivi vulnerabili, che hanno dati preziosi su di loro. Monitoriamo continuamente questi honeypot e raccogliamo tutti i tipi di malware e informazioni(malware and information) sulle attività dei black hat.

Un'altra cosa che facciamo è trasmettere indirizzi e-mail falsi che vengono raccolti automaticamente dagli spammer da Internet . Quindi, utilizzano questi indirizzi per distribuire e-mail di spam, malware o phishing. Raccogliamo tutti i messaggi che riceviamo su questi indirizzi, li analizziamo ed estraiamo i dati necessari per aggiornare i nostri prodotti e mantenere i nostri utenti al sicuro e privi di spam.

Supponiamo che tu abbia appena identificato un nuovo malware. Cosa ne fai? Come scoprire a cosa serve e come disinfettare al meglio un impianto?(Let's assume you just identified a new piece of malware. What do you do with it? How do you find out what it does and how to best disinfect a system?)

Almeno inizialmente non siamo così interessati a sapere cosa fa quel pezzo di malware. Siamo interessati a sapere se il suo comportamento è sospetto o meno, se è un virus o meno. Ciò consente ai nostri prodotti di agire e fare cose come tagliare l'accesso alla rete o mettere(network or place) in quarantena quel pezzo di malware.

Tutti i nuovi malware identificati vengono inviati automaticamente al nostro laboratorio di ricerca(research lab) a Iaşi . Il team si occupa di decostruire i virus, capire cosa fanno e aggiornare il nostro database delle definizioni con le informazioni appropriate.

Parlando del team di ricerca, raccontaci qualcosa in più su di loro e sul loro lavoro sull'"hacking" dei virus.(Speaking of the research team, tell us a bit more about them and their work on "hacking" viruses.)

Bene, sono un team molto specializzato che lavora in un ambiente molto chiuso, da tutti i punti di vista. Ad esempio, non vogliamo che i virus su cui funzionino, che si diffondano in natura o si diffondano(wild or spread) nella nostra stessa rete. Tutti loro sono esperti di sicurezza esperti in cose che variano dalla crittografia all'essere fluenti con più linguaggi di programmazione (incluso il linguaggio Assembly(Assembly language) ), conoscenza dei protocolli Internet, tecniche di hacking, ecc.

Sono incaricati di decifrare il codice di un virus e di aggiornare i nostri database di definizioni con le informazioni appropriate. Tuttavia, prima di iniziare a lavorare sulla creazione di un aggiornamento(definition update) delle definizioni da soli, devono passare attraverso un lungo processo di formazione e specializzazione(training and specialization) che richiede 9 mesi. Non sono autorizzati a lavorare da soli con i nostri database di definizione fino a quando non hanno seguito tutta la formazione richiesta e hanno dimostrato di sapere cosa devono fare.

BitDefender - Ufficio

Inoltre, vorremmo chiarire una leggenda metropolitana, se così la volete chiamare: molti credono che i migliori hacker e produttori di virus vengano assunti da società di sicurezza, tra cui BitDefender . Almeno quando si tratta della nostra azienda, questo non è vero. Durante il processo di assunzione(hiring process) , filtriamo tutti i candidati che hanno creato malware o che hanno effettuato qualsiasi tipo di black-hat hacking.

Preferiamo essere raggiunti da membri del team di cui possiamo fidarci. Vogliamo che le persone si uniscano a noi perché amano una grande sfida alla sicurezza(security challenge) e non usano le loro capacità e intelligenza per scopi egoistici. Tutti nel nostro team di ricerca(research team) possono almeno creare il proprio virus se non addirittura hackerare un sistema più complesso. Tuttavia, non lo fanno perché credono che non sia la cosa giusta da fare e non il corretto uso dei loro talenti. Inoltre, la nostra azienda non tollererebbe questo tipo di comportamento.

Con quale frequenza i tuoi prodotti cercano nuove definizioni sui tuoi server?(How often do your products look for new definitions on your servers?)

Una volta ogni 45-60 minuti. Per noi è molto importante ricevere nuove definizioni il prima possibile. A volte, se una determinata situazione lo richiede, inviamo anche notifiche push, in modo che i nostri prodotti di sicurezza si aggiornino immediatamente e non aspettino l'aggiornamento pianificato. Vorremmo essere in grado di inviare dati non appena apprendiamo qualcosa di nuovo. Tuttavia, ciò non è fattibile dal punto di vista tecnico e rovinerebbe l'esperienza informatica dei nostri utenti. Ecco perché manteniamo le notifiche push e gli aggiornamenti al minimo e li usiamo solo quando ha davvero senso.

Collabori con altre aziende e condividi conoscenze e informazioni sulle ultime minacce alla sicurezza?(Do you collaborate with other companies and share knowledge and information about the latest security threats?)

Sì, lo facciamo. Collaboriamo con altre 6 società, inclusi i nostri partner a cui abbiamo concesso in licenza la nostra tecnologia, come F-Secure o G-Data(F-Secure or G-Data) . Tuttavia, non possiamo rivelare i nomi delle altre società.

BitDefender - Ufficio

Quanto investi nelle funzionalità più secondarie, che non contribuiscono necessariamente a migliorare la sicurezza di un sistema? Mi riferisco a funzionalità incluse principalmente in Total Security Suites, come: Parental Control, File Backup, File Synchronization, ecc.(How much do you invest in the more secondary features, that don't necessarily contribute to enhancing the security of a system? I'm referring to features included mostly in Total Security Suites, such as: Parental Controls, File Backup, File Synchronization, etc.)

Ovviamente, le caratteristiche classiche di una suite di sicurezza(security suite) come antivirus, firewall, antispam, ecc. sono al centro del lavoro del nostro team e ricevono la maggior parte delle risorse di sviluppo della nostra azienda. Tuttavia, disponiamo di team dedicati per ciascuna delle funzionalità secondarie che offriamo nei nostri prodotti e sono dotati di personale in base alle esigenze, a seconda della quantità di lavoro richiesta per mantenere questi moduli. Puoi immaginare che non abbiamo bisogno di tante persone che lavorano su Parental Control(Parental Controls) come sul motore di protezione antivirus(antivirus protection engine) .

BitDefender ha una linea di prodotti classica: BitDefender Antivirus, Internet Security Suite, Total Security Suite e Sphere, che offre una licenza per un massimo di 3 utenti che possono utilizzare la suite di sicurezza migliore che fornisci, su qualsiasi piattaforma supportata, su un numero illimitato di dispositivi. Quale di questi concetti è più popolare tra i tuoi utenti? Preferiscono le funzionalità aggiuntive di una suite Total Security oi prodotti di sicurezza più classici?(BitDefender has a classic line-up of products: BitDefender Antivirus, Internet Security Suite, Total Security Suite and Sphere, which offers a license for up to 3 users that can use the top security suite you provide, on any platform you support, on an unlimited number of devices. Which of these concepts is most popular with your users? Do they prefer the added features of a Total Security suite or the more classic security products?)

BitDefender Internet Security Suite è sicuramente il nostro prodotto più popolare. Ci sono persone che apprezzano le funzionalità aggiuntive di una Total Security Suite ma sono in minoranza. Tuttavia, siamo rimasti piacevolmente sorpresi dal successo e dal feedback positivo che abbiamo ricevuto per il nostro nuovo prodotto BitDefender Sphere(BitDefender Sphere product) . Sembra che a molte persone piaccia avere una soluzione di sicurezza(security solution) unificata in grado di proteggere i propri PC, Mac(Macs) e smartphone o tablet basati su Android. Apprezzano molto la flessibilità di acquistare solo una licenza più conveniente per proteggere tutti i dispositivi informatici nelle loro case.

Ultimo ma non meno importante, parliamo un po' di Windows 8 e della sua nuova interfaccia Metro. Prevedi di offrire soluzioni di sicurezza progettate per la nuova interfaccia touch? Fornirai prodotti di sicurezza separati per i tablet Windows 8?(Last but not least, let's talk a bit about Windows 8 and its new Metro interface. Do you plan to offer security solutions designed for the new touch interface? Will you provide separate security products for Windows 8 tablets?)

Stiamo sicuramente lavorando per fornire alcuni prodotti interessanti per Windows 8 e la nuova interfaccia Metro(Metro interface) . La sfida con Metro è che le applicazioni vengono eseguite con restrizioni e autorizzazioni limitate. Non hanno pieno accesso al sistema come fanno le applicazioni desktop . Pertanto, dobbiamo trovare il modo per aggirare questo problema e fornire una protezione efficace.

Sfortunatamente, tuttavia, non siamo autorizzati a discutere di ulteriori dettagli sui nostri piani con i prodotti di sicurezza per Windows 8 . Saremo in grado di fornire ulteriori informazioni più vicino(information closer) alla finalizzazione e alla messa a disposizione di Windows 8 .

Conclusione

Come puoi vedere da questa discussione, lo sviluppo di una buona soluzione di sicurezza(security solution) non è un compito facile. Implica molto lavoro, conoscenza di diversi aspetti dell'informatica, delle reti e della sicurezza(networking and security) . Ci auguriamo che tu abbia trovato questa conversazione interessante(conversation interesting) e utile per saperne di più sull'intero processo coinvolto.

Prima di chiudere questo articolo, vorremmo ringraziare BitDefender per averci inviato questo invito e averci dato l'opportunità di avere una conversazione molto interessante con alcuni dei loro migliori specialisti.



About the author

Sono un ingegnere informatico con oltre 10 anni di esperienza nel settore del software. Sono specializzato nella creazione e manutenzione di applicazioni software individuali e aziendali, nonché nello sviluppo di strumenti di sviluppo per piccole imprese e grandi organizzazioni. Le mie capacità risiedono nello sviluppo di una solida base di codice, negli strumenti di debug e test e nel lavorare a stretto contatto con gli utenti finali per garantire che le loro applicazioni funzionino perfettamente.



Related posts