<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:cc="http://cyber.law.harvard.edu/rss/creativeCommonsRssModule.html">
    <channel>
        <title><![CDATA[Stories by Luigi Morelli on Medium]]></title>
        <description><![CDATA[Stories by Luigi Morelli on Medium]]></description>
        <link>https://medium.com/@luigimorelli?source=rss-8549109f4d62------2</link>
        <image>
            <url>https://cdn-images-1.medium.com/fit/c/150/150/0*4ricmp_POV5EdJIv.jpg</url>
            <title>Stories by Luigi Morelli on Medium</title>
            <link>https://medium.com/@luigimorelli?source=rss-8549109f4d62------2</link>
        </image>
        <generator>Medium</generator>
        <lastBuildDate>Fri, 29 May 2026 17:55:31 GMT</lastBuildDate>
        <atom:link href="https://medium.com/@luigimorelli/feed" rel="self" type="application/rss+xml"/>
        <webMaster><![CDATA[yourfriends@medium.com]]></webMaster>
        <atom:link href="http://medium.superfeedr.com" rel="hub"/>
        <item>
            <title><![CDATA[WannaCry? No, grazie…]]></title>
            <link>https://medium.com/@luigimorelli/wannacry-no-grazie-900cba45163a?source=rss-8549109f4d62------2</link>
            <guid isPermaLink="false">https://medium.com/p/900cba45163a</guid>
            <category><![CDATA[security]]></category>
            <category><![CDATA[operating-systems]]></category>
            <category><![CDATA[information-technology]]></category>
            <category><![CDATA[information-security]]></category>
            <category><![CDATA[ransomware]]></category>
            <dc:creator><![CDATA[Luigi Morelli]]></dc:creator>
            <pubDate>Wed, 17 May 2017 13:17:29 GMT</pubDate>
            <atom:updated>2017-05-17T13:17:29.141Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/770/1*7lWSNhZWHJnz_wI74tjHdQ.jpeg" /><figcaption>La caratteristica immagine del ransomware</figcaption></figure><p>La notizia è fresca ma non più attuale, tende a scomparire dai notiziari e lascia la maggior parte degli interessati con il desiderio impellente di saperne di più, di capire cosa si nasconda realmente dietro al sedicente “attacco al cuore di Internet”. E magari desidera apprendere in che modo evitare che simili avvenimenti accadano di nuovo.</p><p>Perché è accaduto? Chi è suscettibile di infezione? Di chi è la colpa? Chi o cosa si nasconde dietro questo “attacco”? E’ possibile prevedere simili azioni in futuro? A chi giova un simile stato di cose? Queste (e molte altre) le domande che serpeggiano tuttora irrisolte tra gli utenti di computer, domande alle quali nessuno ancora ha saputo dare una risposta univoca.</p><p>Conscio di una simile colpevole negligenza negli organi di pubblica informazione, mi accingo umilmente a condividere i miei dati e le mie conoscenze al riguardo, sperando di fare cosa gradita.</p><h3>Ransomware: un nome, un programma</h3><p>Ransomware è un neologismo (un tecnicismo, ad essere pignoli) composto dai termini inglesi <em>ranso</em>m, riscatto, e <em>ware</em>, merce, e per estensione suffisso utilizzato per indicare qualcosa che abbia a che fare con un computer (software, hardware, firmware e così via).</p><p>Nel caso specifico, ci troviamo davanti ad un programma che attua le azioni seguenti: blocco del computer, cifratura dei file, richiesta di un riscatto per riottenere l’usabilità dei file.</p><p>Programmi simili sono stati già isolati ed analizzati in passato.</p><p>Popolare inizialmente in Russia, l’utilizzo di ransomware è in seguito cresciuto a livello internazionale: già nel giugno 2013 la software house McAfee ha reso pubblici i dati i cui veniva mostrato come nel primo quarto del 2013 ne fossero stati isolati 250.000 diversi esemplari, più del doppio del primo quarto dell’anno precedente. L’utilizzo di programmi <em>trojan</em> (programmi che forniscono accesso indiretto ad un computer, come un cavallo di troia) consentirono attacchi di larga diffusione con ransomware basati su cifratura <em>come </em><strong>Cryptolocker</strong>, che ha provocato perdite stimate in 3 milioni di dollari prima di essere bloccato dalle autorità, e <strong>CryptoWall</strong>, che secondo l’FBI è costato 18 milioni di dollari in danni sino a giugno 2015.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/500/1*atD1lp6wavEcPxD4_y8ilw.png" /><figcaption>La schermata di CryptoLocker</figcaption></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/500/1*-ZCO8Xp5sRLUu61AbpeMzA.png" /><figcaption>La schermata di CryptoWall</figcaption></figure><h3>Breve storia di WannaCry(pt)</h3><p>Di seguito la trascrizione delle tappe fondamentali dello sviluppo del ransomware in oggetto, così come sono state descritte nello splendido articolo “WannaCry about Business Models” di Ben Thompson, presentato al link <a href="https://stratechery.com/2017/wannacry-and-the-power-of-business-models/">https://stratechery.com/2017/wannacry-and-the-power-of-business-models/</a> .</p><p>Il Presidente della Microsoft e capo degli affari legali Brad Smith non sminuisce il problema sul <a href="https://blogs.microsoft.com/on-the-issues/2017/05/14/need-urgent-collective-action-keep-people-safe-online-lessons-last-weeks-cyberattack/#sm.0001073229cgeeznzsj2526jzi8w2">The Microsoft Blog</a> (“WannaCrypt” è un nome alternativo per WannaCry”):</p><p>“<em>Starting first in the United Kingdom and Spain, the malicious “WannaCrypt” software quickly spread globally, blocking customers from their data unless they paid a ransom using Bitcoin. The WannaCrypt exploits used in the attack were drawn from the exploits stolen from the National Security Agency, or NSA, in the United States. That theft was publicly reported earlier this year. A month prior, on March 14, Microsoft had released a security update to patch this vulnerability and protect our customers. While this protected newer Windows systems and computers that had enabled Windows Update to apply this latest update, many computers remained unpatched globally. As a result, hospitals, businesses, governments, and computers at homes were affected.</em>”</p><p>In breve, Thompson riassume in questo modo le date che caratterizzano lo sviluppo della situazione critica:</p><ul><li><strong>2001:</strong> Il bug in questione viene introdotto involontariamente in Windows XP, e da esso si diffonde in tutte le release successive</li><li><strong>2001–2015:</strong> Ad un dato momento NSA (probabilmente l’ <a href="https://arstechnica.com/security/2015/02/how-omnipotent-hackers-tied-to-the-nsa-hid-for-14-years-and-were-found-at-last/">Equation Group</a>, presumibilmente una sezione di NSA) ha scoperto il bug ed ha predisposto un <em>exploit</em> (programma che ne consente l’utilizzo malevolo) chiamato <strong>EternalBlue</strong>, che potrebbe o potrebbe non aver utilizzato</li><li><strong>2012–2015:</strong> Un contraente NSA ruba presumibilmente più del 75% della libreria NSA’s di strumenti di hacking</li><li><strong>Agosto 2016:</strong> Un gruppo chiamato “ShadowBrokers” pubblica <a href="https://arstechnica.com/security/2016/08/group-claims-to-hack-nsa-tied-hackers-posts-exploits-as-proof/">strumenti di hacking</a> che dichiarano essere di provenienza NSA; gli strumenti sembrano giungere dall’<a href="https://arstechnica.com/security/2016/08/code-dumped-online-came-from-omnipotent-nsa-tied-hacking-group/">Equation Group</a></li><li><strong>Ottobre 2016:</strong> Il contraente NSA di cui sopra viene accusato di aver rubato dati di proprietà NSA</li><li><strong>Gennaio 2017:</strong> ShadowBrokers mettono in vendita un buon numero di strumenti per l’attacco a sistemi Windows, tra questi un exploit zero-day SMB simile ad “EternalBlue” utilizzato in WannaCry per 250 BTC (intorno ai $225.000 di allora)</li><li><strong>Marzo 2017:</strong> Microsoft, senza fanfara, <a href="https://technet.microsoft.com/en-us/library/security/ms17-010.aspx">corregge una serie di bugs</a> evitando di specificare chi li abbia scoperti; tra questi l’<em>exploit</em> EternalBlue; sembra alquanto probabile che la stessa <a href="https://www.emptywheel.net/2017/04/14/the-shadow-brokers-vulnerability-equities-process-nsa-has-had-at-least-96-days-to-warn-microsoft-about-these-files/">NSA li abbia avvertiti</a></li><li><strong>Aprile 2017:</strong> ShadowBrokers <a href="https://arstechnica.com/security/2017/04/purported-shadow-brokers-0days-were-in-fact-killed-by-mysterious-patch/">rilasciano una nuova serie di exploits</a>, compreso EternalBlue, probabilmente perché la Microsoft li aveva già corretti, riducendo in tal modo drasticamente il valore degli zero-day exploits in particolare</li><li><strong>Maggio 2017:</strong> WannaCry, basato sull’<em>exploit</em> EternalBlue, viene rilasciato e si diffonde su circa 200.000 computer prima che il suo <em>kill-switch</em> (un sistema per “spegnerlo” online) venga inavvertitamente attivato da un ricercatore ventiduenne; nuove versioni di WannaCry, prive del kill-switch sono già state segnalate</li></ul><h3>Under the hood: il funzionamento</h3><p>Il ransomware sfrutta un buco nella sicurezza di Windows, connesso con il sottosistema SMB.</p><p>La nostra fida Wikipedia ci spiega che “Nelle reti di computer, Server Message Block (<strong>SMB</strong>), una versione del quale è nota come Common Internet File System (CIFS, /ˈsɪfs/), opera come un protocollo di rete di livello applicativo utilizzato soprattutto per condividere l’accesso a file, stampanti, porte seriali ed altre comunicazioni generiche tra i nodi di una rete.”</p><p>In parole più “umane”, è un programma che consente di “vedere” file e periferiche posti su di un altro computer in rete. Ovviamente tale <em>protocollo</em> non è unico (Unix ne utilizza spesso uno differente, e per tale ragione risulta praticamente immune a WannaCry). Sfruttando un errore di implementazione del protocollo, è possibile inserire sul computer in rete un programma in grado di agire come una spia (trojan) e rilasciare un carico (payload) nocivo che cifra i file contenuti nella macchina e chiede un riscatto. Decifrare il file risulta praticamente impossibile (e comunque in genere più dispendioso, in funzione di tempo macchina e risorse richieste, del pagamento del riscatto).</p><h3>Un attacco in piena regola?</h3><p>Si è parlato ovunque di “attacco massiccio sferrato nei confronti del sistema ospedaliero inglese”, di “sistema di comunicazione spagnolo messo in ginocchio” e via discorrendo. Dimenticando un paio di nozioni fondamentali di tattica: ogni attacco viene contraddistinto da un target nemico e da una mission da compiere.</p><p>Nel nostro caso (ma lo stesso può dirsi del fenomeno scatenato da <strong>mirai</strong>, il malware diffusosi nella Internet of Things sulla costa occidentale degli USA qualche mese fa) non abbiamo nessuna delle due caratteristiche: non c’è un target specifico (vengono attaccati tutti i computer con sistema operativo Microsoft Windows privi della specifica patch correttiva distribuita da Microsoft nello scorso Marzo) né una mission specifica (del tipo: mettere fuori uso le centrali di controllo elettrico, disabilitare il sistema di riconsocimento aereo). Quindi, strategicamente, <strong>non si è trattato di un attacco</strong>.</p><p>Alcune voci si sono immediatamente levate ad indicare la somiglianza del codice decompilato con altre “firme” note: si è detto che era stata riconosciuta la traccia della Corea del Nord, della Russia, della Siria, si è persino affermato che si si trattato di una mossa di tattica politica con la quale la NSA abbia tentato di sensibilizzare le agenzie di sicurezza nazionale a metodologie maggiormente cotnrollate ed a protocolli di sicurezza più stringenti. Ho potuto analizzare superficialmente il sorgente in oggetto, e da quel che ho visto non sussiste alcuna prova che possa avvalorare simili affermazioni; di certo partedel codice appare “clonata” da altri ransomware, ed è ovvio, dal momento che si tratta di programmi che agiscono allo stesso modo sui medesimi target.</p><h3>Cui prodest?</h3><p>I laboratori NSA (National Security Agency) hanno come mission la protezione della Sicurezza Nazionale, ad ogni costo: per tale ragione in molti (perlopiù <em>complottisti</em>) si sono scagliati contro l’Agenzia-che-non-esiste incolpandola del problema. In realtà la mission dell’agenzia consiste (tra le altre cose) nell’analisi del software alla ricerca di possibili falle nella sicurezza, e nella creazione di <em>exploits</em>, programmi che ne sfruttano le debolezze, per giocare digitalmente d’anticipo nei confronti di hacker in tutto il mondo. L’unica vera colpa di NSA è stata quella di non aver saputo impedire il furto di materiale sensibile.</p><p>Microsoft gestisce un codice elefantiaco, sviluppando moduli diversi in uffici diversi, ed evitare la creazione involontaria di falle nel sistema risulta praticamente impossibile. Non appena venuto a conoscenza della debolezza, il gigante di Redmond ha prontamente rilasciato un software correttivo, quasi due mesi prima dello scatenarsi dell’infezione digitale.</p><p>Gli avversari di Microsoft non sembrano coivolti nell’attacco a Windows: Apple ha avuto i suoi problemi con FBI per l’utilizzo di un sistema di cifratura inattaccabile, è maggiormente interessata allo sviluppo di apparati mobile ed utilizza un protocollo di condivisione delle risorse quasi proprietario; Linux (in qualsiasi distribuzione lo si voglia utilizzare) offre un sistema operativo gratuito ed auto-aggiornantesi, il software è visibile a chiunque e viene costantemente <em>patchato</em> da specialisti. Offrendo a pagamento eventualmente solo un service di configurazione, non ha nulla su cui competere con Microsoft, e nulla da guadagnare da una sua debacle.</p><p>Gli ShadowBrokers, che hanno rilasciato il ransomware, hanno guadagnato intorno ai 30.000 dollari in tutto dai “riscatti” (dati acquisiti tenendo sotto controllo i movimenti in bitcoins), praticamente nulla in confronto al mercato virtualmente accessibile.</p><p>Ma allora, chi è stato a trarre giovamento da questo sedicente “attacco”?</p><p>Apparentemente nessuno, e questa considerazione distrugge definitivamente il concetto di “attacco informatico”, trasformandolo in “pasticcio informatico”. Vediamo per quale ragione.</p><h3>Il duro lavoro del Security Manager</h3><p>Come abbiamo visto, non appena l’agenzia nazionale per la sicurezza ha realizzato di aver perso il codice faticosamente estrapolato in anni di studi, e con esso una notevole dose di capacità di controllo e previsione degli attacchi informatici, ha verosimilmente avvertito Microsoft del rischio connesso a tale perdita.</p><p>Microsoft, dal canto suo, ha immediatamente provveduto a riconsocere e correggere quei bachi del proprio sistema così esposti ad un <em>exploit</em> esterno: nel mese di Marzo 2017 rilascia la Windows patch MS17–010, un service pack di sicurezza indicato come indispensabile nella lista degli aggiornamenti consigliati. Con tale manutenzione correttiva vengono affrontati e risolti diversi problemi legati alla sicurezza e all’instabilità del sistema.</p><p>Cosa significa questo, per un’azienda che lavora nel ramo dell’Information Technology? E’ molto semplice: quando appare una segnalazione del genere da parte di Microsoft, il responsabile della sicurezza informatica ha l’obbligo di porre al primo posto nelle azioni da intraprendere sul sistema un backup completo dei dati e l’installazione del nuovo software, “scalando” a priorità inferiori tutti gli altri interventi programmati (ciò significa che aggiornamenti hardware, software applicativo, aggiornamento di licenze, allineamento di versione-release, audit del parco installato, manutenzione applicativa dei server, estensione del parco installato e qualsiasi altra attività prevista <em>deve essere posticipata</em>).</p><p>Immediatamente ha qui il significato di “appena possibile”, un tempo compreso tra poche ore e (al massimo) un paio di giorni, pena un possibile attacco informatico: quando un aggiornamento di sicurezza viene rilasciato, infatti, vengono indicate su di una lista pubblica tutte le falle ed i bachi di sicurezza che tale aggiornamento corregge; chiunque abbia le capacità tecniche e la malizia necessaria per interpretare le correzioni sarà quindi in grado di creare un codice malevolo in grado di sfruttare le falle a proprio vantaggio prima che esse vengano chiuse. Di qui l’urgenza estrema nell’applicare le security patches.</p><p>Tale urgenza non è però stata ravvisata negli oltre 100.000 casi di infezione verificatisi nel mondo. Vediamo perché.</p><h3>L’insostenibile leggerezza dell’essere</h3><p>Le ragioni del disastro sono da imputarsi alla mancata manutenzione correttiva dei server. Come abbiamo visto, l’attacco ha sfruttato una debolezza del protocollo di condivisione delle risorse, oggettivamente al centro di ogni sistema di controllo di rete, sia essa locale, estesa o metropolitana. Ma per quale motivo gli amministratori di rete dei sistemi colpiti non hanno ravvisato, in due mesi, la necessità di installare l’aggiornamento di sicurezza?</p><h4>Gli aggiornamenti sono lenti e penosi</h4><p>Installare una patch di sicurezza su un computer, o a maggior ragione su un server o un cluster, è una questione delicata, occorre eseguire una serie di operazioni sia prima che dopo l’installazione: backup del sistema, sostituzione del server con una macchina temporanea, messa offline (fuori rete) della macchina da aggiornare, pulizia dei file obsoleti e deframmentazione (quando ciò non sia stato predisposto automaticamente da un sysadmin scrupoloso), installazione della patch (può richiedere ore a seconda del sistema), controllo della correttezza dell’operazione, eventuale rollback in caso di completamento errato della procedura, controllo (e correzione!) delle ragioni per le quali l’installazione non è andata a buon fine, reinstallazione della patch, nuovo controllo sulle funzionalità aggiunte. A questo punto il manager scrupoloso controlla che i bachi corretti dall’aggiornamento siano <em>effettivamente</em> stati chiusi, lanciando una serie di attacchi software da una propria rete di test isolata, quindi controlla la macchina su di una rete di correzione per verificare che il computer funzioni ancora come prima, e che gli aggiornamenti non abbiano avuto una cattiva influenza sul software applicativo preinstallato: se tutto fiunziona per il meglio, si riaggiunge il computer alla rete, si ricontrollano gli indirizzi IP, i permessi, il profilo nel Directory Server, l’audit sugli aggiornamenti installati, gli instradamenti dei router, la configurazione del firewall, il passaggio attraverso IDS/IPS (sistemi anti-intrusione, se presenti), la raggiungibilità esterna, la funzionalità delle applicazioni, e infine si prepara una relazione scritta sulle attività svolte, relazione che avrà il significato di “missione compiuta” fornendo l’autorizzazione all’uso del computer con la nuova patch di sicurezza.</p><h4>Microsoft ce l’ha su con me…</h4><p>Come è facile intendere, la gestione di un aggiornamento per la sicurezza non è una classica passeggiata di salute. A tutto questo si aggiunga che la manutenzione degli aggiornamenti Microsoft non è lineare: i nomi delle <em>patches</em> sono criptici, la descrizione degli aggiornamenti in esse contenuti è spesso oscura, è necessario mantenere una lista di (in)compatibilità software (vedremo più avanti cosa ciò significhi), sovente per installare un dato aggiornamento è necessario avere già installato altri aggiornamenti in precedenza ai quali quest’ultimo fa riferimento nel codice. Inoltre quando per una qualsiasi ragione un aggiornamento finisce in modo errato, l’unica possibilità di decodifica dell’errore appare in una finestra di dialogo, e risulta essere un codice alfanumerico ed una stringa descrittiva generica che spesso rimanda alla “Knowledge Base”, una sorta di enciclopedia dei sistemi operativi Microsoft ove è spiegato tutto in dermini dettagliatissimi e spesso incomprensibili. Altrimenti è necessario contattare il centro di assistenza Microsoft.</p><p>Il centro di assistenza Microsoft (ma tutte le multinazionali del Software si comportano allo stesso modo) merita un paragrafo a parte. Una volta superata la barriera telefonica, l’addetto chiede il numero di licenza del sistema operativo relativo al computer su cui intervenire; già a questo punto iniziano i problemi, dal momento che in realtà industriali medio-grandi si possono trovare centinaia di computer: in tali casi spesso si ricorre ad un numero di licenza globale per l’Azienda, che copre 100, 500, 1000 macchine. Tale numero viene in genere conservato nella cassaforte dell’Economo Capo, che invariabilmente il giorno in cui vi occorre il numero di licenza si trova in ferie. In seconda battuta si ricorre al Responsabile del Magazzino, che vi fornirà il numero agognato: ovviamente errato, con conseguente diniego di servizio del Centro Microsoft. Ottenuto infine il numero corretto, dopo aver richiesto, minacciato, pregato, ricattato di volta in volta, il vostro superiore, il responsabile del laboratorio di test, il vostro compagno di corso all’Università, che ora lavora in Microsoft, l’operatore di sala macchine o contact center che procede alle installazioni e via discorrendo, vi sedete davanti ad un caffè doppio, con la tastiera ed il telefono a portata di mano, e vi accingete a richiamare Microsoft. Che dopo (almeno) un paio d’ore trascorse in amorevole scambio di opinioni (“Cosa c’entra Oracle con la patch?”, “Si, la KB372934–0987.21 è già installata!”, “No, non è un computer stand-alone, la patch devo installare per proteggere l’azienda!”, “No, non conosco Giorgio Rossi!” “Sì, è con me che dovete parlare!”) vi offrirà una soluzione quasi perfetta per risolvere il vostro problema.</p><h4>Controllo del sistema operativo</h4><p>Come tutti i prodotti da banco, anche i sistemi operativi hanno una loro scadenza. La scadenza di un sistema operativo dipende da diversi fattori: l’obsolescenza del sistema, il livello di supporto della casa madre, il numero di matricola o codice operativo.</p><p><strong>Obsolescenza</strong>. Un sistema operativo diviene obsolescente quando non risponde più ai requisiti minimi richiesti dall’ambiente di sviluppo o applicativo; ad esempio, un sistema privo di protocollo TCP/IP come Windows 3.1 è inutilizzabile oggi. Allo stesso modo un sistema sviluppato per operare in modalità monotask reale a 16 bit (senza quindi la possibilità di utilizzare threads, multitasking, programmazione parallela, distribuita o concorrente) non è utilizzabile in ambienti attuali (tranne che rari casi di utilizzo nei sistemi embedded di cui, però, non ci occupiamo in questa sede).</p><p><strong>Livello di supporto</strong>. Può capitare che un’azienda di sviluppo del software produca diverse versioni di sistema operativo: le diverse versioni vengono offerte per ambienti diversi (32 e 64 bit), diverse famiglie di processori (Intel, AMD, Atom, ARM), diversi tagli (Home, Pro, Server, Enterprise), creando una serie quasi infinita di <em>flavours</em>. A ciò si aggiunga che, per questioni di marketing, spesso a scadenze fisse viene offerto un sistema con una nuova veste grafica e nuovi gadgets, ovviamente con un nome diverso.</p><p>Oltre che per invogliare nuovi acquirenti, le nuove versioni sono distribuite per garantire che l’utente medio abbia un sistema il più possibile aggiornato: abbiamo visto in precedenza che gli aggiornamenti di sistema producono spesso emicranie ai possessori di computer, e vengono per tal motivo talvolta “evitati”; installando un sistema nuovo, l’utente pigro installa in tal modo anche tutti gli aggiornamenti della versione precedente in un colpo solo.</p><p>Quando però aggiornamenti, versioni, releases, <em>flavours</em> diventano troppi da gestire e mantenere, la Software House decide di <strong>cessare il supporto</strong> di alcuni, e di <strong>ritirare</strong> i più vecchi. Cessare il supporto significa smettere di distribuire aggiornamenti correttivi e di sicurezza, sconsigliandone quindi l’utlizzo, mentre ritirare indica che il prodotto non dovrebbe più essere utilizzato a prescindere.</p><p><strong>Scadenza del codice operativo</strong>. Ogni sistema operativo ha un numero di licenza per l’utilizzo; tale codice viene inserito nel proprio computer per “sbloccare” una serie di garanzie tra le quali l’utilizzo dell’help desk Microsoft, del servizio di aggiornamento gratuito e così via.</p><p>Purtroppo è sovente accaduto che utenti smaliziati e poco etici abbiano distribuito su Internet liste interminabili di numeri di licenza, in parte trafugati dai posti di lavoro, in parte “ricreati” clonando l’algoritmo utilizzato da Microsoft. Dal momento che ciascun computer durante l’attivazione “telefona a casa”, contattando il sito Microsoft, talvolta si verifica l’increscioso incidente di vedersi rifiutare il servizio a causa di un numero di matricola errato, in quanto già assegnato ad altro PC. Il codice operativo in tal caso risulta scaduto.</p><p>Qualcosa di simile accade con le licenze aziendali. Si acquistano 100 licenze, si installano 70 computer, si “spengono” 50 dei computer installati, si installano altri 70 computer, per un ttale di 140 computer per 100 licenze. Ovviamente tale sistema non funziona, e non appena il 101mo computer viene rimesso in rete, scatta il messaggio di errore. Ma senza voler necessariamente agire in modo non etico, può sicuramente capitare a chi gestisce un parco di 1000 computer, di fare confusione con le licenze, ed assegnarne qualcuna in più “per dimenticanza”. Purtroppo (o per fortuna), quando questi casi diventano troppo numerosi, specie per le licenze più vecchie, i codici vengono annullati, e la Software House propone una offerta di upgrade che l’Azienda “non può rifiutare”.</p><h4>Dio (o il produttore del SW applicativo) lo vuole!</h4><p>Il software applicativo dovrebbe essere indifferente al sistema sul quale si trova a funzionare: un programma di gestione per paghe e contributi <em>dovrebbe</em> funzionare all stesso modo su Unix, MAC, Windows XP o Windows 8.1. Purtroppo però la realtà è diversa.</p><p>La ragione di questa diversità è duplice: SW applicativo legato al sistema operativo e sistema operativo incompatibile con le versioni precedenti.</p><p><strong>SW applicativo legato al sistema operativo</strong>. Scrivere software è semplicissimo. Scrivere software che funzioni è difficile. Scrivere software che funzioni bene è dannatamente arduo. In un periodo legato mani e piedi alla programmazione ad oggetti, il concetto di <em>astrazione</em> è sovente il più trascurato: è semplice scrivere un programma utilizzando funzioni di libreria precompilate, senza rendersi conto se e quanto tali funzioni dipendono da chiamate al sistema operativo inferiore. Quando il sistema operativo cambia, e alcune funzioni vengono modificate o abbandonate, il programma applicativo semplicemente cessa di funzionare. In questi casi il responsabile IT ha tre possibili strade da percorrere: a) Richiamare il progettista del software applicativo e facendo leva sulla corretta lettura delle specifiche di progettto <em>obbligarlo</em> a fornire una nuova versione funzionante, invocando una <em>manutenzione correttiva</em>, pena lo scatto delle clausole penali del contratto; b) Richiamare il progettista del software applicativo e <em>pregarlo</em> di eseguire una <em>manutenzione evolutiva</em> dietro pagamento di lauto compenso, per consentire all’azienda di continuare a lavorare; c) Tornare al vecchio sistema operativo e <em>fingere</em> che non sia successo nulla.</p><p>E’ evidente che la soluzione c) è quella che ha favorito l’attacco informatico.</p><p><strong>Sistema operativo incompatibile con le versioni precedenti</strong>. Talvolta l’aggiornamento di un sistema operativo richiede risorse hardware non indifferenti a causa delle aggiunte e dei nuovi controlli effettuati con la modifica, in misura tale da obbligare all’acquisto di una macchina più nuova e performante, pena il deterioramento delle performances e in ultima analisi delle prestazioni lavorative. E’ altresì possibile che l’aggiornamento <em>modifichi completamente</em> alcune sezioni del <em>core</em> (il nucleo più interno del sistema), rendendolo incompatibile con le versioni precedenti e obbligando quindi al’update di tutte le macchine in contatto con la nuova in seguito all’aggiornamento.</p><p><strong>Risultato netto</strong>: in tutti i casi esaminati in precedenza, ci si trova di fronte al dilemma se l’aggiornamento sia più o meno dannoso del mantenimento dello stato attuale. L’ovvia risposta, in mancanza di attacco informatico, è “Ma sì, tanto cosa vuoi che accada? E poi, su milioni di server installati, deve capitare qualcosa proprio a noi?”.</p><p>Occorre a questo punto spezzare una lancia a favore di Microsoft. Nonostante, infatti, Windows XP non fosse più supportato da Microsoft, la software house di Redmond ha predisposto e distribuito su Internet un aggiornamento correttivo anche per Windows XP. Sono ora evidenti le ragioni per le quali ancora tanti computer avessero XP installato nonostante la mancanza di supporto della casa madre, ed è giusto comunque riconoscere che il comportamento di Microsoft abbia impedito che il risultato dell’attacco informatico fosse ben più pesante.</p><h3>E’ possibile prevedere simili azioni in futuro?</h3><p>No. Un sistema operativo è un software eccezionalmente complesso, sviluppato in team da diversi programmatori, e nonostante i test di regressione effettuati, è sempre possibile che un baco s’intrufoli nel codice.</p><p>E’ tuttavia possibile (e necessario, aggiungerei) gestire la sicurezza informatica aziendale in modo meno “artigianale”, seguendo politiche, procedure e processi di sicurezza stabiliti e inderogabili. Come abbiamo visto, attività apparentemente innocue come la scelta di un software applicativo, di un contraente, di un sistema operativo o di sviluppo, dei tempi di aggiornamento, del team di controllo possono avere pesantissime ricadute sulla sicurezza aziendale: lavorare con la testa sulle spalle significa anche saper prevedere brecce nella politica e nel comportamento aziendale, ed avere la forza di opporvicisi.</p><p>Vorrei qui aggiungere e far notare come non sia un caso che gli ultimi episodi di aggressione informatica internazionale siano <em>tutti</em> dovuti a malcostume nella gestione della sicurezza personale e aziendale. Molti utenti hanno forse imparato a non cliccare su tutto ciò che si muove o arriva nella propria casella postale, alcuni stanno imparando ad utilizzare password più robuste o passphrases semplici da ricordare (“laAmaiuscola!1” è una password piuttosto forte e semplice da ricordare e da cambiare senza modificarne la struttura, ad esempio, si veda <a href="http://www.passwordmeter.com/">http://www.passwordmeter.com/</a> ). Ora è il caso che i dirigenti d’azienda smettano di richiedere “specialisti della sicurezza” alle cooperative, o di pescarli tra i neolaureati senza esperienza e i programmatori web.</p><p>WannaCry? No, grazie, preferisco sorridere. Posso permettermelo. E voi?</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=900cba45163a" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Caro amico, ti scrivo…]]></title>
            <link>https://login.infomedia.it/caro-amico-ti-scrivo-8d4b9d1f00ed?source=rss-8549109f4d62------2</link>
            <guid isPermaLink="false">https://medium.com/p/8d4b9d1f00ed</guid>
            <category><![CDATA[etiquette]]></category>
            <category><![CDATA[computer-science]]></category>
            <category><![CDATA[information-technology]]></category>
            <category><![CDATA[social-media]]></category>
            <category><![CDATA[networking]]></category>
            <dc:creator><![CDATA[Luigi Morelli]]></dc:creator>
            <pubDate>Sat, 04 Mar 2017 09:12:16 GMT</pubDate>
            <atom:updated>2017-03-04T09:12:16.138Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/630/1*UDWaH-IxWmmkjY2vIXmzMA.jpeg" /><figcaption>Internet lenta: vediamo perché</figcaption></figure><p>Ci si lamenta sempre più spesso per la “lentezza di Internet”, della banda passante sempre meno “passante”, dei tempi da attendere nello scaricare le pagine dei nostri siti preferiti. Si tende spesso a dar la colpa al sempre maggiore affollamento della Rete: oggi un motore di ricerca che si rispetti riesce ad indicizzare miliardi e miliardi di pagine Web, ed a fornire indicazioni relative ad innumerevoli oggetti, azioni, notizie ed immagini presenti online. Ciò che invece si tende ad ignorare è che anche le tecnologie di accesso vengono modificate ed aggiornate prontamente: tanto per fare un paragone, 25 anni fa un modem viaggiava a 300 bit/ secondo; 20 anni fa si potevano raggiungere comunemente i 2.400 bit/ secondo con compressione<br>e correzione d’errore hardware. Quindici anni fa si viaggiava tra 28.800 e 33.600 bit/secondo. Oggi con una connessione ADSL privata possiamo raggiungere svariati Megabit al secondo. La velocità di trasmissione dei dati aumenta in misura di circa dieci volte ogni cinque anni, mille volte in 15 anni.</p><h3>Facciamo due conti</h3><p>Venticinque anni fa avevamo circa mezzo milione di host connessi ad Internet. Si potrebbe obbiettare che la crescita degli utenti di Internet sia stata superiore al fattore 1000 visto prima, ed abbia superato il mezzo miliardo. Se anche questo fosse vero, tuttavia, la tecnologia ha avuto tutto il tempo per cercare di ottimizzare le risorse a disposizione: mentre una ventina di anni fa un backbone a 2 Mbps era sufficiente a servire le richieste di tutta la nazione, oggi abbiamo linee e hardware in grado di gestire flussi di traffico mille volte maggiori.</p><p>Perché, allora, viaggiare in Internet risulta così spesso deprimente?</p><p>Le ragioni fondamentali, a mio avviso, sono due: la scarsa attenzione dei gestori verso l’ottimizzazione delle risorse e la altrettanto scarsa attenzione dell’utente finale nei confronti dei diritti degli altri utenti di Internet. Analizziamo il secondo caso.</p><h3>Qualità del Servizio? No, Qualità dell’utente</h3><p>La seconda ragione della lentezza della connessione ad Internet risiede nella maleducazione dell’utente quadratico medio. Venticinque anni or sono le richieste su Internet venivano lanciate in batch, con una serie di comandi contenuta in un e-mail inviato a Gopher od a Veronica; la risposta arrivava nelle ore successive o addirittura il mattino dopo, sempre attraverso posta elettronica.</p><p>Il tutto rigorosamente in formato testo. Certo, era meno divertente, non c’erano colori, non esistevano animazioni. Però era estremamente efficiente. Oggi, tra sfondi, immagini, filmati, script e stili, l’informazione richiesta è limitata ai minimi termini, circondata da un rumore di fondo inutile che ciascun browser interpreta a modo suo.<br>Gli stessi messaggi di posta elettronica sono spesso duplicati in HTML, appesantiti da enormi immagini e sfondi multicolori solo per dire “Ciao”. Tra file multimediali, immagini di sfondo, abbellimenti e tag HTML si calcola che venga inutilmente occupato almeno un 60% della banda disponibile. Vale la pena, dunque, di lamentarsi per la lentezza di Internet, quando si è quasi sempre la causa indiretta di tale lentezza?</p><h3>Conclusioni</h3><p>Anche in questo articolo si riconosce il dualismo, caratteristico di Internet, tra dati e informazioni.<br>Fermi restanti gli obblighi dello Stato a fornire una banda trasmissiva coerente con lo sviluppo del Paese, è opportuno interrogarsi sulle reali necessità di poter accedere alla Rete con velocità superiore al megabit per secondo: ai tempi delle telescriventi, la velocità trasmissiva massima era 110 bit/secondo, dal momento che nessun telegrafista era in grado di digitare più di tre tasti al secondo, e un tasto era codificato con 5 bit, ma il contenuto di un telegramma era informazione pura.<br>Oggi oltre il 60% della banda su Internet viene utilizzato per il file-sharing più o meno legale, e fortunatamente le aziende si sono decise a bloccare i protocolli peer-to-peer al loro interno. Il risultato netto è una fruibilità della rete interna ed esterna molto maggiore di dieci anni fa, a fronte di un aumento di banda passante irrisorio.<br>Ma il Progresso è in movimento continuo, ed i problemi riscontrati due decenni or sono su Internet li abbiamo oggi con gli smartphone…</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=8d4b9d1f00ed" width="1" height="1" alt=""><hr><p><a href="https://login.infomedia.it/caro-amico-ti-scrivo-8d4b9d1f00ed">Caro amico, ti scrivo…</a> was originally published in <a href="https://login.infomedia.it">L O G I N</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Riflessioni di una tecnologia ottuagenaria]]></title>
            <link>https://dev.infomedia.it/riflessioni-di-una-tecnologia-ottuagenaria-c7783dd337a6?source=rss-8549109f4d62------2</link>
            <guid isPermaLink="false">https://medium.com/p/c7783dd337a6</guid>
            <category><![CDATA[software-development]]></category>
            <category><![CDATA[future]]></category>
            <category><![CDATA[business-analysis]]></category>
            <category><![CDATA[electronics]]></category>
            <category><![CDATA[information-technology]]></category>
            <dc:creator><![CDATA[Luigi Morelli]]></dc:creator>
            <pubDate>Sat, 25 Feb 2017 13:57:00 GMT</pubDate>
            <atom:updated>2017-02-25T13:57:00.811Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/730/1*GMppq16qBRtKzX95gtryyg.png" /><figcaption>Viaggio alla ricerca di un criterio di valutazione per l’uso di informazioni nascoste</figcaption></figure><p>Il titolo vi potrà a prima vista suonare conosciuto, complice magari l’ultimo termine oramai desueto ed indice di una scuola letteraria oramai lontana nel tempo, in un grazioso incastro di sintassi e semantica autoreferenziali. Il riferimento è d’obbligo: ho voluto infatti parafrasare l’insigne Norberto Bobbio, autore di un’appendice autobiografica intitolata per l’appunto “Riflessioni di un ottuagenario” appartenente al suo De Senectute; In esso Bobbio tratta il problema dei diritti nel mondo contemporaneo da profondo conoscitore del pensiero filosofico e sociale del suo secolo, complice la propria autorevole esperienza sul campo. A dire il vero lo stesso Bobbio<br>aveva scelto il titolo ricordando con una punta di malcelato compiacimento il suo illustre predecessore Ippolito Nievo, autore delle “Confessioni di un ottuagenario” pubblicato postumo.</p><p>Sembrerebbe in pratica che l’accumulo dell’esperienza comporti invariabilmente la nascita di un senso di malinconica tenerezza nei confronti di un passato ricco di errori (sovente anche propri) ma definitivamente irraggiungibile, come se cullare la propria memoria potesse aiutare l’Uomo a raggiungere il termine della propria esistenza con una tranquillità acquisita e metabolizzata. Negazione dunque del concetto di esperienza confuciana, vista essenzialmente come lanterna che portiamo appesa alla schiena e che illumina esclusivamente la strada già percorsa, ed accettazione di una<br>visione quasi Junghiana di gruppo in continuo cammino verso un ideale collettivo.</p><h3>Dall’ideale al particolare</h3><p>Walter Schottky nacque a Zurigo verso la fine del XIX secolo. Suo padre Friedrich era un eminente matematico, allievo prima e collaboratore poi di Weierstrass, al quale diede una mano per formalizzare importanti ipotesi algebriche inerenti gruppi abeliani e insiemi di Cantor; Walter, dal canto suo, ebbe come tutore quel Max Planck ideatore della teoria quantistica, e giovanissimo ottenne una cattedra a Berlino per la propria tesi sulla Relatività Speciale proposta da Einstein appena sette anni prima. Attorno al 1920 Schottky incontrò Wien, che aveva appena vinto un premio Nobel per i suoi lavori sulla radiazione di corpo nero, e divenne professore di fisica teorica a Rostock.</p><p>Il campo di studi di Schottky può essere suddiviso in due settori anche temporalmente differenziati: un iniziale momento in cui studiò a fondo le caratteristiche delle elettroniche a vuoto (valvole termoioniche) ed un successivo passaggio, dopo il 1929, alla teoria dei semiconduttori.</p><p>Dotato di eccezionale intuito, valutò l’effetto-rumore prodotto dalle valvole amplificatrici, confermato poi matematicamente da Nyquist; ma ciò per cui oggi viene affettuosamente ricordato dal “popolo del computer” è il diodo, parente stretto del transistor, negli Anni Trenta.</p><p>Studi approfonditi sulla Termodinamica, un mentore di gran fama ed un padre con una notevole capacità logico-matematica condussero il nostro eroe all’ideazione di quel preziosissimo strumento oramai indispensabile per la nostra tecnologia.</p><p>La domanda del lettore curioso ed attento a questo punto potrebbe essere: “Come mai allora abbiamo dovuto attendere gli Anni Cinquanta per poter vedere le prime applicazioni del transistor alla consumer electronics?” Le risposte possono essere diverse: la Seconda Guerra Mondiale e la stasi della produzione commerciale, ad esempio, l’utilizzo di infrastrutture tecnologiche a beneficio del potere militare o la necessità di approfondire il know-how industriale necessario per creare componenti affidabili… Ma il colonnello Philip Corso, deceduto pochi anni fa, era di tutt’altro avviso.</p><h3>Retroingegneria aliena</h3><p>Nel libro citato in bibliografia [3], Corso ci racconta che nel 1947 a Roswell, New Mexico, avvenne qualcosa di assolutamente “fuori dal mondo”. Documenti alla mano, e con la carica di Capo della Divisione Tecnologia Straniera, Philip Corso gestì i materiali alieni recuperati a Roswell nel contesto di un programma di retroingegneria che ha portato agli odierni microcircuiti integrati, alle fibre ottiche, al laser, alle fibre super-resistenti ed “impiantò” la ricaduta della tecnologia extraterrestre di Roswell nei colossi dell’industria statunitense.</p><p>Tiriamo ora un bel respiro, cerchiamo di nascondere quel sorriso di scherno apparso sul nostro volto ed armiamoci del più profondo spirito critico di cui disponiamo; tutto ciò può apparire quantomeno fantasioso al tecnico medio, conscio delle scoperte scientifiche della propria razza, e sono io il primo ad ammettere l’assurdità iniziale di una simile affermazione, tuttavia per quanto incredibile esiste tutta una serie di fonti documentali che descrivono il passaggio di “idee e concetti innovativi” provenienti da fonti militari o associate alle forze armate statunitensi (ad esempio i laboratori Rand) verso le strutture tecnologiche statunitensi come i Bell Laboratories, ed è inconfutabile sia l’incredibile accelerazione subita dal progresso tecnologico nella seconda metà del XX Secolo, sia la provenienza dei più importanti brevetti nel settore da soli quattro o cinque grossi istituti americani legati a doppio filo con progetti militari.</p><p>La domanda che nasce spontanea semmai è la seguente: come mai la fornitura di piani e idee partiva dal servizio militare USA verso le grandi aziende tecnologiche anziché compiere il cammino inverso? In altre parole chi dava ai militari le spinte necessarie per ottenere risultati tanto approfonditi ed avanzati, tenendo presente che gli istituti di ricerca negli USA tendono a consentire lo sfruttamento dei brevetti in essi registrati alle equipe responsabili, accontentandosi di vantare la fama di aver consentito lo sviluppo di tali brevetti? Potremo parlare in questo caso di retroingegneria della produzione di idee, in quanto stiamo cercando di valutare a<br>posteriori le ragioni di un comportamento evidente ma forse mai del tutto sviscerato pubblicamente, ricercando le possibili cause attraverso la valutazione degli effetti provocati.</p><h3>Principi della retroingegneria</h3><p>Negli Analitici Secondi Aristotele ci parla di induzione e deduzione, processi<br>oramai vincolati indissolubilmente al nostro pensiero logico critico (tranne rari casi). Si tratta di una ingegnosa formalizzazione dei concetti del pensiero, che consente di giungere ad una tesi vera basandosi su assiomi verificabili qualora il ragionamento si basi su concetti di coerenza e non contraddizione. Tuttavia, come soleva affermare Cartesio divertendo gli astanti, “senza dubbio il ragionamento è infondato”, illustrando in particolare i pericoli degli strani anelli logici che mutano a piacere il significato di una affermazione qualora essa contenga elementi<br>semantico-concettuali legati all’affermazione stessa o alla sua interpretazione.</p><p>Il problema fondamentale della retroingegneria è dato proprio da tale difficoltà nel backtracking: non ci è dato sapere se una affermazione di arrivo sia stata provocata da una induzione vera o sia un effetto collaterale di un assioma ancora ignoto, sin quando non abbiamo completamente decodificato l’apparato che produce quell’affermazione; in altri termini, la complessità del modello di decodifica per il sistema risulta spesso pari alla complessità del sistema stesso. Fortunatamente i sistemi studiati hanno un limite di complessità non esagerato, e gli ultimi studi sulla teoria del caos permettono di aiutarci in tal senso. Vorrei soffermarmi su un particolare tipo di analisi che normalmente non viene associata alla retroingegneria, ma che potrebbe a buon bisogno avere qualcosa a che vedere con essa: l’analisi delle<br>specifiche di un pacchetto software.</p><h3>Navigar per l’alto mare</h3><p>Chiunque si sia trovato almeno una volta alle prese con un committente per un lavoro legato in qualche modo alla IT avrà avuto modo di constatare quanto difficoltoso sia capire ciò che il committente vorrebbe (ammesso che lo sappia): si parte da un progetto di massima, una sorta di scatola nera priva di qualificazioni o quantificazioni, e man mano che l’analisi si sviluppa vengono aggiunti i particolari, ovviamente obbedendo alla legge di Murphy secondo la quale i concetti-base del progetto sono quelli che verranno enunciati per ultimi. Questo lavoro di analisi è necessario per evitare di fornire al committente un prodotto che non lo soddisfi appieno, per ridurre i costi di sviluppo e manutenzione, ma è riconducibile al processo maieutico di Socrate; gli analisti più bravi riusciranno in questo modo a condurre per<br>mano il committente verso un cammino che lo porterà ad esclamare “Era proprio così che lo desideravo!”</p><p>Ora soffermiamoci un istante a pensare: abbiamo utilizzato una serie di informazioni provenienti da un input ignoto (il committente) elaborate attraverso una scatola nera (l’idea del committente) per trarne un progetto funzionante, applicando all’analisi un minimo di logica di programmazione. Sorpresa: abbiamo intrapreso il medesimo percorso che avremmo dovuto fronteggiare per compiere una azione di retroingegneria! Mantenendo basse le molteplicità dell’input siamo in grado di fornire un output coerente e funzionante attraverso i principi di un sistema che non conosciamo ma possiamo modellare attraverso le sue risposte.</p><p>Si potrebbe obiettare che le nozioni necessarie per operare modifiche all’interno di un software scritto e compilato da terzi siano molto più difficili da padroneggiare rispetto a quelle necessarie ad un analista che intervisti un committente; la risposta è immediata: quante interviste alle quali avete partecipato sono risultate definitive al primo incontro?</p><p>Questo perché lavorare con gli esseri umani rappresenta un problema di tipo<br>fondamentalmente diverso: l’utilizzo di una logica non binaria crea nel migliore dei casi una serie di deadlock dai quali è necessario uscire, senza peraltro urtare la suscettibilità del committente… Al contrario, un eseguibile disassemblato è sempre uguale: abbiamo le variabili puntuali, la loro tipizzazione, il codice assembly immutabile (a meno di averlo decompilato con un allineamento errato…) ma soprattutto una serie di baluardi caratteristici che ci indicano la strada da percorrere come fari nella tempesta.</p><h3>Analisi etica e morale</h3><p>L’enorme, capillare diffusione del personal computer è stata mutuata, innegabile nasconderlo, dalla disponibilità di software “pirata” sia a livello di sistema che a livello applicativo. Chi oggi si pone il dilemma etico sulla liceità della retroingegneria del software commette a mio modesto avviso peccato di ipocrisia: senza software pirata non avremmo avuto Internet, libertà di informazione sul Web o reti locali e neurali distribuite; non avremmo in altri termini potuto godere dei benefici tecnologici offerti dalla diffusione di queste infernali apparecchiature. Sia ben chiaro che io non sto esortando a legalizzare la distribuzione di software pirata, intendo solo<br>affermare che chi se ne lamenta dovrebbe avere almeno la correttezza di ammettere che senza tale “barbara usanza” non avrebbe sicuramente potuto vendere il proprio software a più di un decimo delle persone che attualmente lo usano e ne pagano i prodotti satelliti.</p><p>Se avessi la possibilità di scegliere il comportamento in un mercato “libero”, propenderei per la distribuzione gratuita del software, con una serie di servizi aggiuntivi che ne garantiscano l’affidabilità, l’allineamento e lo sfruttamento ottimizzato a pagamento; un software “aperto” consentirebbe una scelta corretta a chiunque avesse effettive capacità di analisi, eviterebbe di imporre noiose e fastidiosissime protezioni hardware alla propria macchina, protezioni che mentre inibiscono le capacità di lavoro dell’utente possono venire scardinate in breve tempo da chi veramente abbia intenzione di compiere un danno; sarebbe la fine dei “tecnici faccio-tutto-io”, dei pasticcioni sedicenti esperti del computer e, forse, l’inizio di un’era di effettivo sfruttamento delle risorse e dei servizi attualmente disponibili e trascurati dell’Informatica.</p><h3>Conclusioni</h3><p>Ho recentemente letto un articolo di Roberto Vacca, relativo alla espansione esponenziale dei controlli relativi alla gestione della complessità. Rispetto ai primi Altos, Sinclair, Commodore, i sistemi informatici attuali hanno complessità enormemente maggiori, ed è particolarmente difficile gestirli utilizzando il modello di una macchina a stati: troppi di questi stati, infatti, tendono ad interagire nei modi più bizzarri, mostrando comportamenti a prima vista del tutto inesplicabili.</p><p>Nel presente articolo mi schiero apertamente a favore del software libero: pur essendo favorevole, tuttavia, mi rendo conto anche che è difficile mantenere il controllo di ciascun modulo, gestendone le interazioni con gli altri, e garantire un funzionamento perfetto: ciascun sistema complesso, infatti, risente fortemente delle cosiddette “condizioni al contorno”, e queste ultime sono sovente gestite attraverso sistemi caotici in cui un minimo scostamento dei parametri iniziali comporta una enorme variazione nel risultato.</p><p>La gestione di un sistema complesso è tuttavia possibile (e, aggiungerei, necessaria) attraverso una accurata ed estensiva documentazione di ciascuna fase di progetto, interfaccia e use-case. Purtroppo queste caratteristiche sono quelle più trascurate dai giovani programmatori, dai burocrati e dai manager commerciali: questa è la ragione principale per cui più un sistema aumenta in complessità più esso ci appare non responsivo rispetto agli scopi che ci siamo prefissi.</p><p>Ma la soluzione a tale problema esiste, non lasciatevi fuorviare da coloro che, per scopi personali, si giustificano incolpando gli altri…</p><h3>Bibliografia</h3><p>[1] N.Bobbio, “De Senectute”, Einaudi, 1996</p><p>[2] <a href="http://bit.ly/1D7f4yT">http://bit.ly/1D7f4yT</a></p><p>[3] Philip Corso, “Il giorno dopo Roswell”, Pocket Books, 1998 ISBN 067101756X</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=c7783dd337a6" width="1" height="1" alt=""><hr><p><a href="https://dev.infomedia.it/riflessioni-di-una-tecnologia-ottuagenaria-c7783dd337a6">Riflessioni di una tecnologia ottuagenaria</a> was originally published in <a href="https://dev.infomedia.it">DEV. developing software solutions</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Fattori di un prodotto]]></title>
            <link>https://cp.infomedia.it/fattori-di-un-prodotto-11432ded05e5?source=rss-8549109f4d62------2</link>
            <guid isPermaLink="false">https://medium.com/p/11432ded05e5</guid>
            <category><![CDATA[information-technology]]></category>
            <category><![CDATA[solutions]]></category>
            <category><![CDATA[digital-marketing]]></category>
            <category><![CDATA[innovation]]></category>
            <category><![CDATA[project-management]]></category>
            <dc:creator><![CDATA[Luigi Morelli]]></dc:creator>
            <pubDate>Thu, 02 Feb 2017 16:14:33 GMT</pubDate>
            <atom:updated>2017-02-02T16:14:33.145Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/980/1*s9-BtprVeGF42vm20rCMmQ.jpeg" /><figcaption>Cosa lega il marketing, la stupidità, il genio, la semplicità ed il potere?</figcaption></figure><h3>Il paradiso può attendere</h3><p>Nonostante l’accenno alla stupidità, non ho ancora perso del tutto le mie capacità cognitive, ed anche se intendo parlare di una nota e per molti versi toccante situazione mediatica sulla forza dei sentimenti nei confronti del potere intransigente, non mi riferisco all’omonimo film. Il paradiso, nel nostro caso, non è infatti un luogo dove il bravo programmatore potrà finalmente trovare la propria pace al termine dell’agonia quotidiana all’interno delle strutture lavorative: piuttosto si tratta di un miraggio, una idilliaca rappresentazione di come il nostro mondo potrebbe apparire<br>se solo…<br>Ma noi oggi non abbiamo un paradiso da lasciare attendere, vale la pena pertanto rimboccarsi le maniche e cercare di mettercela tutta per rendere questa valle di lacrime quanto più simile sia possibile ad un luogo ameno in cui lavorare.</p><h3>Ricercato per avversione al regime</h3><p>Da ciò che è stato scritto si deduce una mia visione non particolarmente favorevole del presente informatico, anche se i punti salienti del problema non sono ancora stati messi in luce; la mia formazione scientifica e tecnica, quand’anche solo lontanamente completa, mi porta comunque a tentare di analizzare le ragioni dell’incoerenza di fondo rappresentata dal comportamento di un vasto settore dell’IT management nostrano e mondiale. Analizzare, ho scritto, perché è proprio sull’analisi brutale che<br>ho trovato la maggior parte delle lacune nei ragionamenti dei miei interlocutori.</p><p>Stiamo parlando ovviamente delle ragioni per le quali gli enti statali, le grandi società, le piccole e medie aziende si trovano a pagare fior di milioni (di Euro) per garantirsi un ingresso valido nel mondo dell’ICT senza nemmeno chiedersi se non valga invece la pena di investire quei capitali ingenti in altre forme di avanzamento tecnologico. Il problema fondamentale è che aziende alimentari, gruppi editoriali, cantieri edili, meccanici o chimici si sono occupati nell’arco della propria esistenza, ed<br>a ragione, esclusivamente del proprio settore di competenza, osservando il mercato, spiando le mosse degli avversari, giocando d’anticipo negli investimenti o nelle riconversioni, ma quasi mai hanno dotato le proprie linee direttive di specialisti informatici, preferendo legarsi spesso a società di consulenza esterne. A questo punto però si verifica il paradosso per cui una medesima azienda di consulenza (o di body rental tecnologico) si trova spesso a fornire consulenza e personale a società avversarie tra loro.</p><p>Capita così che per mantenere basso il costo delle risorse umane investite, diversi consulenti vengano alle prese con sistemi server, password e politiche di sicurezza di entrambe le società; poi, nei giorni di assenza di alcuni di loro (siamo umani e possiamo ammalarci) le risorse vengono rimescolate tra le aziende. E se pensate che nessuna azienda permetterebbe l’ingresso al proprio interno di personale che possa in qualche modo carpire segreti industriali e riproporli ai propri nemici giurati del settore, siete in errore: ne ho conosciute personalmente almeno cinque nell’ambito della mia relativamente breve permanenza sul campo.</p><h3>Crescita esponenziale dei problemi</h3><p>“Ma se non possiamo fidarci della consulenza esterna, come potremo far parte del gotha informatico?”</p><p>L’analisi ci viene di nuovo incontro: sarebbe infatti sufficiente creare nel cuore dell’azienda una struttura giovane, agile, dinamica e motivata, in grado di seguire gli sviluppi del mercato informatico mondiale e riproporli all’interno della società interpretando i problemi e fornendo risposte ad hoc alla classe dirigente; costoro tuttavia con illuminata decisione prenderanno in considerazione ciascun progetto e successivamente bocceranno ad una ad una tutte le proposte più innovative, tagliando i fondi per la ricerca e la formazione, riducendo il personale più qualificato (e quindi costoso) adducendo classici motivi di budget, ed infine chiudendo la struttura giovane ed agile, per tornare ad affidarsi a più costose, pachidermiche ed<br>insicure società esterne… nelle quali hanno però una partecipazione azionaria.</p><p>E queste società di consulenza esterne, nutrite e coccolate dall’alta dirigenza, si guarderanno bene dal fornire ai propri mecenati soluzioni troppo innovative o, peggio, tecnologicamente avanzate (in altre parole, care), e finiranno con il riconoscersi nel comportamento dello staff direttivo delle aziende cui offrono consulenza, perdendo via via lucidità, prestigio ed efficacia tecnologica, e subappaltando i lavori oramai troppo complessi per le loro oramai involute capacità a nuove, piccole aziende.</p><p>Esisterebbe un freno a questa spirale perversa, qualora con l’avvicinarsi delle<br>capacità medie allo zero i progetti non riuscissero più a reggersi sui propri bit; la pianificazione di una rete di trasmissioni internazionale, la creazione di una serie di cluster server suddivisi in ambito geografico, la necessità di mantenere le prestazioni al di sopra di una data soglia (che per intenderci non è mai cresciuta, bensì solo rinnovata di contratto in contratto, ma il cui raggiungimento risulta all’azienda sempre più problematico a causa delle intrinseche carenze viste prima), l’incapacità in altre parole di garantire sviluppo e gestione di un progetto che non crollasse sotto il proprio peso han reso infine necessario il ricorso a fornitori di software dotati di soluzioni applicative pronte all’uso.</p><h3>Giganti dai piedi d’argilla</h3><p>I grossi nomi dell’informatica oramai sono noti a tutti, così come noti sono gli slogan più comuni: facilità d’uso, disponibilità di personalizzazioni, help desk online, technical services, aggiornamenti costanti, rappresentano tutti una stessa ipocrita faccia della medaglia; a cosa serve infatti la facilità d’uso se la macchina installata si blocca?</p><p>A cosa le personalizzazioni se come si esce dall’installazione canonica per tentare una soluzione disegnata sul proprio problema si viene caldamente sconsigliati dal fornitore? Si può chiamare help desk un sistema che smisti le richieste di assistenza a tecnici “momentaneamente non presenti in sala — richiami più tardi” (quando risponde)? Ed infine cos’ha di tecnico un servizio che tiene l’utente bloccato decine di minuti in interurbana per controllare il numero di licenza del software mentre il sistema dell’improvvido chiamante sta andando arrosto sotto il fuoco di fila dei pirati informatici?</p><p>Non mi sto, naturalmente, riferendo ad un unico fornitore globale di servizi o soluzioni integrate, mi riferisco a tutti: come abbiamo visto nei primi paragrafi, qualsiasi azienda che cercasse di eccellere in tutti i campi dell’ambito tecnico e commerciale sarebbe soggetta a crollare sotto il proprio stesso peso. Purtroppo è il mondo occidentale che obbliga a non fermarsi, a crescere sempre, magari a scapito di avversari meno scaltri (o di prestazioni meno valide, o di sicurezza meno controllata); crescere, rafforzare la propria posizione di monopolio o cercare di raggiungerla, perfezionare l’immagine del proprio prodotto e solo in seguito curarne i dettagli implementativi. Ma soprattutto, consci della pratica mutuata dal Judo e nota come “tecnica dello sbilanciamento”, far trovare sempre e comunque l’avversario non in equilibrio rispetto a te ed al tuo prodotto. Poco importa che il tuo avversario sia un’altra società o il tuo miglior cliente: l’importante è farlo sentire in difetto. Ma attenzione ai contraccolpi…</p><h3>KISS, ovvero keep it simple, stupid</h3><p>La situazione attuale vede quindi colossi commerciali incapaci di fornire un prodotto tecnicamente stabile ed efficiente, e giganti tecnologici senza una valida ed efficace strategia di marketing che si spartiscono un mercato in cui le prestazioni dei prodotti tendono pericolosamente verso lo zero. Entrambi intenti a legare mani e piedi di un utente non smaliziato e privo delle capacità di discernere il bello dal vero in un mondo in cui, con buona pace di Keats, verità e bellezza non esistono più. Il paradiso può attendere, dicevamo.</p><p>O forse no.</p><p>Esistono fortunate eccezioni nel mondo dell’Information Technology; fedeli al contrappasso precedente abbiamo nuovamente due gruppi: i nuovi pionieri dell’Informatica ed i fornitori di soluzioni integrate a costo zero.</p><p>I primi rappresentano un agguerrito nucleo di programmatori e sistemisti, in parte delusi dal proprio lavoro attuale e desiderosi di proporre le proprie potenzialità all’intero gruppo degli utenti di computer: riuniti spesso in gruppi di studio approfondiscono tematiche d’avanguardia per accrescere la propria cultura professionale e mettono poi il frutto del loro lavoro a disposizione di chiunque creda nelle loro idee, gratuitamente. In genere sono professionisti che non vogliono denaro o potere (le loro abilità sono evidenti ed il loro futuro sicuro) quanto piuttosto ammirazione, fama.</p><p>Una fama costruita sulla solidità e sull’efficacia delle soluzioni proposte e “regalate” al pubblico dominio. I prodotti ed i servizi offerti sono in genere di una spanna almeno superiori a quelli commerciali, e vengono aggiornati di continuo per difendere il buon nome del pool di sviluppo che li ha presentati; spesso vengono forniti completi di codice sorgente, per dimostrare che il software realizzato non contiene bachi o backdoor.</p><p>Il codice sorgente a disposizione rende il più delle volte l’applicazione portabile su più piattaforme, consentendo una standardizzazione dei codici di configurazione ed un livello di personalizzazione decisamente superiore a quello dei prodotti “commerciali”, ed il fatto che il progettista non prenderà un soldo dalla distribuzione del proprio software testimonia l’assenza di parti poco sviluppate a causa magari di un time to market sbagliato.</p><p>Il secondo gruppo al quale si è accennato parte dalle mosse del primo, ed offre alle aziende prodotti “chiavi in mano” a costo zero, occupandosi invece esclusivamente della fornitura dei servizi di configurazione ed assistenza.</p><p>Consci della robustezza del prodotto, forti del possesso del codice sorgente e<br>della disponibilità degli sviluppatori, possono così garantire un prodotto gratuito, costantemente aggiornato, ben noto e configurabile all’estremo, focalizzando la propria attenzione esclusivamente sul settore dell’assistenza all’utente. Praticamente l’uovo di Colombo.</p><h3>Inerzia e incapacità</h3><p>Mentre il settore delle piccole e piccolissime aziende vede molto favorevolmente l’avvicinarsi di questo nuovo modo di “fare informatica”, i grandi enti non si fidano. L’incapacità oramai radicata di diversi dipartimenti dell’IT di prendere decisioni controcorrente, avveniristiche o visionarie, le connivenze esistenti un po’ ovunque nel settore commerciale, l’imposizione di uno standard de facto che, pur non aggiungendo nulla (o piuttosto sottraendo molto) in termini di funzionalità, lega<br>pesantemente lo sviluppo e la distribuzione degli standard de jure, obbligherebbe comunque diversi responsabili a tornare sui libri per studiare sistemi meno noti e soluzioni proposte da società dotate di divisioni giuridiche e di comunicazione meno efficienti.</p><p>Ma perché dover studiare nuove proposte quando la soluzione è a portata di mano con pochi semplici clic? Poco importa se poi, sotto il cofano, bielle e pistoni non sono sincronizzati… Attenzione: non si sta in questa sede dichiarando che qualsiasi scelta sia meglio della scelta standard, tutt’altro! Si vorrebbe al contrario evitare di dare per scontato che tutte le soluzioni alternative siano inferiori solo perché così dicono le caratteristiche riportate sui pieghevoli, dimenticando sistematicamente che l’Informatica è una scienza tecnica, non commerciale e che due più due potrebbe non<br>fare necessariamente quattro, bensì undici: tutto dipende dalla base di partenza.</p><h3>A costo zero</h3><p>Questo è ciò che, a mio modesto avviso, frena pesantemente l’introduzione di nuove tecnologie “a zero Euro” nelle grandi aziende. La paura della mancanza di assistenza vuole mascherare l’incapacità di seguire un mercato non omogeneo, il timore dell’uscita dagli standard persegue il rafforzarsi dello standard. D’altro canto non mi si venga a dire che mettere in comunicazione sistemi basati su diversi database relazionali via SQL sia assolutamente trasparente, standard o meno. L’unico punto sul quale mi potrei sentire in accordo con gli IT manager è la riconversione delle<br>risorse umane, abituate a lavorare con determinati strumenti… almeno sino alla domanda successiva: chi ha voluto trasformare individui dotati di cervello e volontà in scimmie-robot che schiacciano incessantemente bottoni virtuali senza capire cosa ci sia sotto?</p><h3>Conclusione</h3><p>Siamo alle solite: quando la progettazione tecnica viene gestita attraverso i canali commerciali, massime in tempi di crisi, il risultato finale risulterà inaffidabile. Questi ultimi cinque anni hanno mostrato una strettissima correlazione tra il risanamento economico dei paesi UE e la loro tendenza ad investire su ricerca e sviluppo. Il paradigma R&amp;D risulta sempre vincente quando il momento storico presenta un ristagno nei consumi: è la solita, antichissima storia del cercare idee nuove ed applicazioni inedite per favorire lo sviluppo di nuovi mercati.</p><p>In Italia il settore IT subisce, oltre alla crisi, anche l’ingessatura di una burocrazia elefantiaca, mentre la classe dirigente sempre più anziana e conservatrice cerca di risucchiare le ultime gocce di linfa possedute da un settore in fase terminale; quando il Cliente (per lo più la Pubblica Amministrazione) chiede un Service, il Fornitore lo accontenta, anche a costo zero.</p><p>Ricordo che invece, venti anni or sono, la Pubblica Amministrazione chiedeva assistenza nel risolvere un problema, e schiere di tecnici e progettisti sulla cresta dell’onda fornivano soluzioni avanzatissime, riformulando completamente la specifica iniziale (spesso farraginosa e dipendente da un antiquato sistema di valutazione dei flussi informativi) ed offrendo valore aggiunto (a peso d’oro). E se il Cliente si impuntava nel volere per il proprio problema proprio la soluzione valutata in casa,<br>spesso il progetto veniva rifiutato.</p><p>Oggi il crollo del mercato ha comportato un totale abbassamento del livello<br>professionale della consulenza, e anche a parità di problemi da risolvere, l’ottanta per cento delle sedicenti società di consulenza informatica attuali china il capo e accetta di lavorare per poche briciole sul progetto e sulle soluzioni proposte dal Cliente per mancanza di skill professionale adeguato.</p><p>In altre parole, continuiamo ad offrire gli stessi servizi di venti anni fa, ad un prezzo pari ad un quarto, e senza le medesime garanzie di successo.</p><p>E sin quando non si provvederà ad infliggere una brusca sterzata al settore, il futuro peggiorerà. Spero solo che quando ciò accadrà non sia troppo tardi.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=11432ded05e5" width="1" height="1" alt=""><hr><p><a href="https://cp.infomedia.it/fattori-di-un-prodotto-11432ded05e5">Fattori di un prodotto</a> was originally published in <a href="https://cp.infomedia.it">Infomedia Computer Programming</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Tempi moderni]]></title>
            <link>https://dev.infomedia.it/tempi-moderni-bda25c022a22?source=rss-8549109f4d62------2</link>
            <guid isPermaLink="false">https://medium.com/p/bda25c022a22</guid>
            <category><![CDATA[tech]]></category>
            <category><![CDATA[future]]></category>
            <category><![CDATA[information-technology]]></category>
            <category><![CDATA[movies]]></category>
            <category><![CDATA[meritocracy]]></category>
            <dc:creator><![CDATA[Luigi Morelli]]></dc:creator>
            <pubDate>Sat, 03 Dec 2016 12:31:49 GMT</pubDate>
            <atom:updated>2016-12-03T12:31:49.731Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/700/1*7vIXQvSLQaEbnhGrsOntoQ.jpeg" /></figure><blockquote>Breve e salace descrizione di una burocrazia tecnologica</blockquote><p>Tutti noi conosciamo l’opera di Charlie Chaplin che presta il nome alle divagazioni di questo racconto. Nella sua sottile vena satirica, l”’uomo preso nell’ingranaggio” viene magistralmente rappresentato con una capacità mediatica e medianica non comune.<br>Il povero Charlot si ritrova suo malgrado a subire un trattamento degradante ed assurdo nonostante (o forse proprio a causa de)i suoi continui tentativi di ribellione al sistema, ribellione tutto sommato giustificata dal possesso di un senso comune acritico e non legato agli interessi di parte… meccanica.</p><h3>Il principio di Peter</h3><p>Lo psicologo canadese Laurence Peter affermava tra le altre cose una massima che è divenuta famosa con il nome di Principio di Peter: “In ogni gerarchia un impiegato tende a salire sino al proprio livello di incompetenza massima, quindi ogni lavoratore si stabilizzerà al minimo grado di efficienza”. Paradossale? Neanche tanto… Prendiamo ad esempio una media società fornitrice di servizi informatici: con l’attuale scala meritocratica (ma qui la meritocrazia è solo un grazioso attributo, il Principio vale comunque) ogni successivo avanzamento di carriera di un lavoratore lo porta relativamente più lontano rispetto all’insieme di attività per le quali è<br>stato premiato: un operatore può divenire tecnico di gestione e quindi sistemista, o intraprendere la carriera di tecnico di consulenza, che lo porterà verso la programmazione.</p><p>Entrambi diverranno poi progettisti, astraendosi dal lavoro manuale in grazia dell’Analisi, ed infine, dopo un periodo come quadro, potranno aspirare alla dirigenza. Ma attenzione: cosa è accaduto nel frattempo?<br>Semplicemente che ad ogni successiva specializzazione in un dato campo di applicazione del soggetto conseguiva una promozione ed un allontanamento dalle proprie caratteristiche capacità di problem-solving verso un ambito spesso differente, “per favorire una più ampia e variegata crescita professionale”.</p><h3>Alla ricerca dell’intelligenza perduta</h3><p>Ohibò… Abbiamo perso dunque all’inizio la possibilità di creare un tecnico a delta di Dirac, iperspecializzato in un unico determinato campo, per farlo “crescere” su discipline diverse, poi lo abbiamo “maturato” imponendogli metodologie sovente in contrasto con la stessa filosofia aziendale togliendogli anche quel po’ di specializzazione che gli era rimasta, quindi gli abbiamo proposto una puntatina nella gestione del personale (assolutamente incoerente con la programmazione, in quanto il personale<br>non si comporta mai seguendo logiche binarie) e alla fine, quando la confusione nel tapino ha raggiunto l’acme, lo abbiamo trasformato in un perfetto dirigente. Ma cosa dirigerà costui, che ha perso il contatto con gli operatori 14 anni prima, con i programmatori 9 anni prima, con gli analisti 5 anni prima? Quali tecnologie porterà in dote all’azienda che lo ha creato dirigente, se non sistemi oramai obsoleti, linguaggi inusati, metodologie fuori mercato?<br>Ci siamo: l’impiegato è assurto al proprio livello di incompetenza massima. Il Principio di Peter ha funzionato ancora una volta.</p><h3>Conclusioni</h3><p>Il “Principio di Peter” funziona anche sulla burocratizzazione della tecnologia.</p><p>Henry Ford ricordava al riguardo che “la gente può scegliere la propria nuova Model T in qualsiasi colore, purché sia nera”, e dal magnate Americano il Commendatore Enzo Ferrari trasse il concetto secondo cui “tutto ciò che in un’auto non è presente, non può rompersi”.</p><p>Al contrario, oggi i “progetti” nel mondo dell’IT sono cataste invereconde di<br>framework e applicativi rilasciati da diversi produttori con diversi scopi, e messi assieme alla meglio per offrire una parvenza di funzionamento durante il test finale.</p><p>L’esperienza acquisita non è contemplata. Nemmeno quando esiste.</p><h3>Bibliografia</h3><p>L.Peter-R.Hull, “Il principio di Peter”, Bompiani-Garzanti</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=bda25c022a22" width="1" height="1" alt=""><hr><p><a href="https://dev.infomedia.it/tempi-moderni-bda25c022a22">Tempi moderni</a> was originally published in <a href="https://dev.infomedia.it">DEV. developing software solutions</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[What’s wrong with USA Green Card / Diversity VISA Program?]]></title>
            <link>https://medium.com/@luigimorelli/whats-wrong-with-usa-green-card-diversity-visa-program-6b2096f12f31?source=rss-8549109f4d62------2</link>
            <guid isPermaLink="false">https://medium.com/p/6b2096f12f31</guid>
            <category><![CDATA[information-security]]></category>
            <category><![CDATA[immigration]]></category>
            <category><![CDATA[computer-science]]></category>
            <category><![CDATA[bureaucracy]]></category>
            <category><![CDATA[information-technology]]></category>
            <dc:creator><![CDATA[Luigi Morelli]]></dc:creator>
            <pubDate>Thu, 24 Nov 2016 13:56:29 GMT</pubDate>
            <atom:updated>2016-11-26T09:35:15.676Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/300/1*LT4mDktfceqnTOJXkkBqDg.png" /></figure><p>My name is Luigi Morelli, from Italy.</p><p>I recently (2014) discovered a security breach with loss of sensible data on the webserver of the U.S. Embassy devoted to the Diversity Visa Program. As I am an IT professional with more than 30 years of experience, a honest Italian citizen, willing to demonstrate my concern as a will-be US Citizen and believing in the correctness of IT bureaucratic procedures, I immediately wrote a note (<strong><em>in attachment 1</em></strong>) signalling the breach, after collecting all the email addresses that could be interested in the problem. I also addressed Kim Wyman, the actual secretary of John Kerry, as I noticed Kerry’s apparent involvement in electronic security and privacy issues.</p><p>After more than 2 weeks, I have been bounced among many different offices, addressed with circular, generic notes, or hints to refer to other offices that were already addressed in my first email, as if I was just concerned for my <strong>DV program</strong> participation.</p><p>No one, until now (after more than 2 years), seemed to understand the potential risks and the loss of prestige of a governative site:</p><p>1) Anybody could become aware of others’ will to achieve a green card. <br>2) Anybody could know name, address and nationality of winners. <br>3) Anybody could steal and resell sensible information to terrorists. <br>4) Anybody could find, kill and substitute to the winner.<br>5) Anybody could spoof others’ identities and enter USA.</p><p>As I am still concerned about US (and world) security, I will produce the whole thread of emails (<strong><em>9 attachments</em></strong>) to confirm my dedication to the problem and the sloppiness of governative offices. I hereby (and again) declare that I am not concerned about my Diversity Visa, I am concerned about the US Information Technology infrastructure. It would have been <strong>EASY</strong> and <strong>CHEAP</strong>, from an infrastructural point of view, to prevent the information leaking:</p><p>1) Using a temporary load-balancing cluster to correctly address the peak of request on May 1st (the day the DV Lottery was closed and the results presented).<br>2) Using a stronger transaction manager to prevent delivery of documents with a different case number.<br>3) Using a more robust queue manager to handle more requests at a time.</p><p>I am now sincerely concerned about IT security on governative infrastructure, particularly after the way the Obamacare problem was (?) addressed: it seems that not only social healthcare, but many Government servers are affected as well.</p><p>That is why I am asking you to shed some light on this case.</p><p>I have the proof document I talk on my email printed, and still on my desk, and am available to offer more insight at your will.</p><p>With concerned regards,</p><p>Luigi Morelli</p><p><strong>Please note:</strong> The following addresses have beeen found as freely available and distributed along the Web</p><h3>— — — ATTACHMENT 1 — May 3rd, 2014 — — —</h3><p>To: <a href="mailto:NivNaples@state.gov">NivNaples@state.gov</a><br>To: <a href="mailto:RomaEvisas@state.gov">RomaEvisas@state.gov</a></p><p>cc: U.S. Department of State<br>cc: U.S. Department of Homeland Security<br>cc: U.S. Customs and Border Protection<br>cc: <a href="mailto:kim.wyman@sos.wa.gov">kim.wyman@sos.wa.gov</a> &lt;<a href="mailto:kim.wyman@sos.wa.gov">kim.wyman@sos.wa.gov</a>&gt; , <br> <a href="mailto:uscis.webmaster@dhs.gov">uscis.webmaster@dhs.gov</a> &lt;<a href="mailto:uscis.webmaster@dhs.gov">uscis.webmaster@dhs.gov</a>&gt; , <br> <a href="mailto:ics-cert@dhs.gov">ics-cert@dhs.gov</a> &lt;<a href="mailto:ics-cert@dhs.gov">ics-cert@dhs.gov</a>&gt; , <br> <a href="mailto:CounterterrorrismDivision@dhs.gov">CounterterrorrismDivision@dhs.gov</a> &lt;<a href="mailto:CounterterrorrismDivision@dhs.gov">CounterterrorrismDivision@dhs.gov</a>&gt; , <br> <a href="mailto:cset@dhs.gov">cset@dhs.gov</a> &lt;<a href="mailto:cset@dhs.gov">cset@dhs.gov</a>&gt; , <br> <a href="mailto:ncsd_cipcs@hq.dhs.gov">ncsd_cipcs@hq.dhs.gov</a> &lt;<a href="mailto:ncsd_cipcs@hq.dhs.gov">ncsd_cipcs@hq.dhs.gov</a>&gt; , <br> <a href="mailto:software.assurance@dhs.gov">software.assurance@dhs.gov</a> &lt;<a href="mailto:software.assurance@dhs.gov">software.assurance@dhs.gov</a>&gt; , <br> <a href="mailto:info@us-cert.gov">info@us-cert.gov</a> &lt;<a href="mailto:info@us-cert.gov">info@us-cert.gov</a>&gt; , <br> <a href="mailto:soc@us-cert.gov">soc@us-cert.gov</a> &lt;<a href="mailto:soc@us-cert.gov">soc@us-cert.gov</a>&gt; , <br> <a href="mailto:SAFECOMMGovernance@dhs.gov">SAFECOMMGovernance@dhs.gov</a> &lt;<a href="mailto:SAFECOMMGovernance@dhs.gov">SAFECOMMGovernance@dhs.gov</a>&gt; , <br> <a href="mailto:SandTeam-Cyber-Liaison@hq.dhs.gov">SandTeam-Cyber-Liaison@hq.dhs.gov</a> &lt;<a href="mailto:SandTeam-Cyber-Liaison@hq.dhs.gov">SandTeam-Cyber-Liaison@hq.dhs.gov</a>&gt; , <br> <a href="mailto:e-verify@dhs.gov">e-verify@dhs.gov</a> &lt;<a href="mailto:e-verify@dhs.gov">e-verify@dhs.gov</a>&gt; , <br> <a href="mailto:private.sector@dhs.gov">private.sector@dhs.gov</a> &lt;<a href="mailto:private.sector@dhs.gov">private.sector@dhs.gov</a>&gt;</p><p>subject: Diversity Visa Program — U.S. Embassy website security breach</p><p>Dear Sirs,</p><p>On May 1st 2015 I checked my submission for the Green Card lottery on U.S. Embassy’s <a href="http://www.dvlottery.state.gov">www.dvlottery.state.gov</a> — I must admit that what I discovered made me think a lot.</p><p>When I inserted my confirmation number and my credentials on the site, I visualized a page saying “You have been randomly selected for further processing in the Diversity Immigrant Visa Program for the fiscal year 2015…”: I felt so happy after the long wait.</p><p>Sadly, I discovered that the rest of the page dealt with <strong>ANOTHER PERSON</strong> having a <strong>DIFFERENT CASE NUMBER</strong>: in particular, the document referred to a person from <strong>IRAN</strong>, where his name, address, nationality, case number and post number were printed, against all the norms of privacy policies.</p><p>After the obvious delusion, a thought came to my mind: If I could read sensitive data from a different applicant, that could have happened also to others.</p><p>My experience in IT Security figured out the security breach in the server of the U.S. Embassy, so I decided to show my commitment to U.S. regulations and laws reporting the breach to your office (other people, less versed in ethical problems would have just taken advantage of the breach and sold the information to anyone interested).</p><p>Finally, I have a procedural question: My first inquiry for my Diversity Visa application to the site of the U.S. Embassy, with my confirmation number, told me that the application was accepted, although with a different name: am I legally able to request the acceptance of my application? How valid can this lottery be considered?</p><p>Yours sincerely</p><p>Luigi Morelli</p><h3>— — — ATTACHMENT 2 — May 5th, 2014 — — —</h3><p>From: “Naples, NIV” &lt;<a href="mailto:NIVNaples@state.gov">NIVNaples@state.gov</a>&gt;</p><p>Dear Mr. Morelli,</p><p>For inquiries regarding the Diversity Visa Lottery, please contact the Kentucky Consular Center at the phone number below:</p><p>· To reach the Kentucky Consular Center (Diversity Visa inquiries) call : (606) 526–7500 (7:30 a.m. EST to 4:00 .pm. EST).</p><p>We hope this information is helpful.</p><p>Regards,</p><p>Visa Unit</p><p>U.S. Consulate General</p><p>Naples, Italy</p><h3>— — — ATTACHMENT 3 — May 5th, 2014 — — —</h3><p>To: <a href="mailto:NVCINQUIRY@state.gov">NVCINQUIRY@state.gov</a></p><p>On May 1st, 2014 I discovered a security breach in the U.S. Embassy website while sending my confirmation number.</p><p>You will find the description of the incident in the attached email.</p><p>Please keep me informed about the questions I posed.</p><p>Thank you</p><p>Luigi Morelli</p><h3>— — — ATTACHMENT 4 — May 5th, 2014 — — —</h3><p>From: E-VERIFY &lt;<a href="mailto:E-VERIFY@uscis.dhs.gov">E-VERIFY@uscis.dhs.gov</a>&gt;</p><p>Good afternoon Luigi,</p><p>Thank you for contacting the E‑Verify Team. We are always happy to address your questions or concerns.</p><p>Unfortunately, we cannot help you with questions about specific immigration issues. You have contacted E‑Verify, an online system that allows employers to electronically verify the employment eligibility of newly hired employees.</p><p>We recommend that you contact the USCIS Call Center at 800–375–5283 to get help and information about immigration services, benefits, documents and laws. Service is available by telephone in both English and Spanish. For more information about the USCIS Call Center, please click here.</p><p>You may also visit the homepage at <a href="http://www.uscis.gov">www.uscis.gov</a> to make an InfoPass appointment at your local immigration field office.</p><p>We apologize for the inconvenience, we hope this referral will be helpful to you. If you need additional assistance, please call E‑Verify at 888–464–4218 or e-mail us at E‑<a href="mailto:Verify@dhs.gov">Verify@dhs.gov</a>. You may speak to a representative Monday — Friday from 8:00 am to 5:00 pm Local Time.</p><p>Cordially,</p><p>The E‑Verify Team</p><p>John O.</p><h3>— — — -ATTACHMENT 5 — May 6th, 2014 — — —</h3><p>From: <a href="mailto:KCCDV@state.gov">KCCDV@state.gov</a></p><p>This e-mail is addressed to any Diversity Visa 2015 (DV-2015) entrant who attempted to log into the Entrant Status Check (ESC) website on May 1, 2014. For a brief period on May 1, the ESC website experienced a technical problem. As a result, some people who logged into the site to check the status of their applications were shown the wrong information. If you logged into the ESC website on May 1 and saw a notice of selection that did not include your name, or if you saw a notice that you were not selected, you must re-check your status to find out whether or not you were selected.</p><p>You must see a notice that is addressed to you by name as proof of selection to process further in the DV-2015 program. We regret any confusion this technical problem may have caused.</p><p>Please note that the Kentucky Consular Center (KCC) will not send you unsolicited e-mail that includes your confirmation number or that asks you to provide any personal information. You must log into the ESC website to check your status. If you have further questions about the ESC website or the content of this e-mail, you may contact KCC by e-mail at <a href="mailto:KCCDV@state.gov">KCCDV@state.gov</a>. The KCC telephone number is 606–526–7500 (7:30 a.m. until 4:00 p.m. EST).</p><h3>— — — ATTACHMENT 6 — May 8th, 2014 — — —</h3><p>From: Luigi Morelli</p><p>I just want to make clear that I was really surprised about the superficiality in handling such a delicate lottery.</p><p>If you already knew about the issues of your webserver, you should have printed them on the entry page, so that people concerned with privacy issues could decide whether to participate or not. Sending a circular note AFTER the issue has been alerted (and the data gone) is just not professional.</p><p>Less than one month ago, Mr. Kerry published a paper about the security of sensible data handled by Government Internet appliances. in order to guarantee US citizens’ privacy. It would be a shame if media knew how (and why) that statement was wrong.<br>Or if the winner of the DV-Lottery, whose address I read, received a mail to his home in Iran, cheering for his winning green card, from me.</p><p>I wrote the same message to the following addresses:</p><p>To: <a href="mailto:NivNaples@state.gov">NivNaples@state.gov</a><br>To: <a href="mailto:RomaEvisas@state.gov">RomaEvisas@state.gov</a></p><p>cc: U.S. Department of State<br>cc: U.S. Department of Homeland Security<br>cc: U.S. Customs and Border Protection</p><p>Cc:<br><a href="mailto:kim.wyman@sos.wa.gov">kim.wyman@sos.wa.gov</a>,<br><a href="mailto:uscis.webmaster@dhs.gov">uscis.webmaster@dhs.gov</a>,<br><a href="mailto:ics-cert@dhs.gov">ics-cert@dhs.gov</a>,<br><a href="mailto:CounterterrorrismDivision@dhs.gov">CounterterrorrismDivision@dhs.gov</a>,<br><a href="mailto:cset@dhs.gov">cset@dhs.gov</a>,<br><a href="mailto:ncsd_cipcs@hq.dhs.gov">ncsd_cipcs@hq.dhs.gov</a>,<br><a href="mailto:software.assurance@dhs.gov">software.assurance@dhs.gov</a>,<br><a href="mailto:info@us-cert.gov">info@us-cert.gov</a>,<br><a href="mailto:soc@us-cert.gov">soc@us-cert.gov</a>,<br><a href="mailto:SAFECOMMGovernance@dhs.gov">SAFECOMMGovernance@dhs.gov</a>,<br><a href="mailto:SandTeam-Cyber-Liaison@hq.dhs.gov">SandTeam-Cyber-Liaison@hq.dhs.gov</a>,<br><a href="mailto:private.sector@dhs.gov">private.sector@dhs.gov</a>,</p><p>no one seemed interested in the security and privacy issues I found out.</p><p>I just wanted to be among the winners of the Diversity Visa Program playing my fair share of opportunities, believing in the strong security measures declared by the US Government, and when I stumbled into a IT security glitch, my ethics forced me to advice those with responsibilities about it, as a good US citizen would have done.</p><p>I got no answers.<br>I got no assurances that the security breach at the US Embassy website was addressed.<br>Not even a “thank you” mail to show that the problem had been considered.</p><p>Is this the concern US Government has toward the privacy of foreigners?<br>Is this the way US Government treats those (even non-citizens) who STILL care about US IT security?</p><p>Maybe I should have addressed the same question to FoxNews and CNN.<br>And maybe I will.</p><p>Sincerely</p><p>Luigi Morelli</p><h3>— — — -ATTACHMENT 7 — May 9th, 2014 — — —</h3><p>From: KCC DV &lt;<a href="mailto:KCCDV@state.gov">KCCDV@state.gov</a>&gt;</p><p>Thank you for contacting the Kentucky Consular Center (KCC). We understand that the technical problem on the Entrant Status Check (ESC) has raised many questions for entrants who attempted to check their status. We apologize for the confusion this may have caused.</p><p>The most frequently asked questions are answered below. We hope that this message will address your concerns.</p><p>1. <strong>How will I know if I have been selected?</strong></p><p>The only proof that you have been selected to process further in the DV-2015 program is a notice with your name on it that states you have been selected. When you log into the Entrant Status Check (ESC) on the dvlottery.state.gov website you will see one of two responses:</p><p>· If you see a message that says you were selected, and it includes your name, you have been selected to process further in the DV-2015 lottery. Please review the website at <a href="http://www.dvselectee.state.gov">www.dvselectee.state.gov</a> for full instructions on how to proceed.</p><p>· If you see a message that says you were not selected, you have not been selected to process further in the DV-2015 lottery. You may enter again next year. This message will not include your name.</p><p>2. <strong>When I logged in, I got a message saying I was not selected, but there was no name on the screen. What does that mean?</strong></p><p>That means you were not selected. If you were not selected for further processing, you will receive a standard message that applies to anyone who was not selected. It will not have your name on it.</p><p>3. <strong>I saw a selection notice, but it had someone else’s name on it. What do I do?</strong></p><p>If you log into the ESC now and see a notice that says you were selected, but it is addressed to another person, this does not mean that you have been selected. You should contact KCC at <a href="mailto:KCCDV@state.gov">KCCDV@state.gov</a> for further information. Include your name and confirmation number, and tell KCC at what time you tried to log in to the ESC. (If this happened to you on May 1, there is no need to tell KCC. If it happens to you now, please let us know.)</p><p>4. <strong>Will these results change? Should I check back again later to see if I was selected in the future?</strong></p><p>These results are final. We do not anticipate that there will be any additional names selected for DV-2015.</p><p>5. <strong>I am having problems logging in, or I am confused by my results. Can KCC tell me if I was selected?</strong></p><p>KCC cannot tell you if you have been selected for further processing. The ESC is the only means by which you may check your status.</p><p>If you are unable to log into the ESC, please check to be sure you are entering your confirmation number correctly. Some letters and numbers look similar to one another. If the ESC web page is experiencing a high volume of requests, it may work very slowly and some connections may time out. If this happens to you, please try again later.</p><p>If you have lost your confirmation number, please try to retrieve it using the “forgot confirmation number” link on the ESC website. If you cannot retrieve your confirmation number by providing the information required, there is no way for you to check your status.</p><p>If you have read all of this information and still have questions, please contact KCC at <a href="mailto:KCCDV@state.gov">KCCDV@state.gov</a>. Include your full name and, if you know it, your DV case number.</p><h3>— — — -ATTACHMENT 8 — May 12th, 2014 — — —</h3><p>From: NVC Inquiry &lt;<a href="mailto:NVCInquiry@state.gov">NVCInquiry@state.gov</a>&gt;</p><p>Dear Sir/Madam:</p><p>Thank you for asking about the Diversity Visa (DV) program. The National Visa Center does not manage the DV program. You should send your question to the Kentucky Consular Center for the best answer. You can email them at <a href="mailto:kccdv@state.gov">kccdv@state.gov</a>.</p><p>You can learn more about the DV program at this web page.</p><p><a href="http://travel.state.gov/content/visas/english/immigrate/diversity-visa.html">http://travel.state.gov/content/visas/english/immigrate/diversity-visa.html</a></p><p>Mary</p><p>National Visa Center<br>Written Inquiry Unit<br>Serco Inc, Support Contractor</p><p><a href="mailto:NVCInquiry@state.gov">NVCInquiry@state.gov</a></p><h3>— — — ATTACHMENT 9 — May 19th, 2014 — — —</h3><p>From: CBP INFO Center</p><p>Recently you requested personal assistance from our on-line support center. Below is a summary of your request and our response.</p><p>If this issue is not resolved to your satisfaction, you may reopen it within the next 7 days.</p><p>Thank you for allowing us to be of service to you.</p><p>Subject<br>To: <a href="mailto:NivNaples@state.gov">NivNaples@state.gov</a> <a href="mailto:RomaEvisas@state.gov">RomaEvisas@state.gov</a> cc: U.S. Department of State cc: U….<br> <br> Discussion Thread<br> Response Via Email (PIO Ross-McCullough) 05/19/2014 07:44 AM<br>Thank you for contacting the U.S. Customs and Border Protection (CBP) INFO Center.</p><p>Customs and Border Protection (CBP) is not involved in the process of diversity lottery. This is a function of the Department of State not CBP. You will need to address your concerns with them directly at 202–485–7600 or <a href="http://www.travel.state.gov">www.travel.state.gov</a>.</p><p>If you have any other questions or would like clarification on this response, please feel free to contact us either by calling our toll free number 877 CBP-5511 (227–5511) or if calling from outside the United States our toll number 202–325–8000 and speak with a Public Information Officer. Our hours of operation are Monday thru Friday from 9:00 AM-12:00 PM and from 1:00 PM-4:00 PM Eastern Time.</p><p>Please note that in our online tracking software, a Solved status simply means that we have provided you with the best information we have to your question. There may still be steps you need to complete before your situation is resolved to your satisfaction. Those steps are explained in our response. If you need further clarification on those steps, please feel free to contact us back.</p><p>This email is intended for Informational Purposes Only, final determination of admission is solely at the discretion of the CBP Officer based upon the inspection at the time of entry.</p><p>Thank you again for contacting the CBP INFO Center.</p><p>Sincerely,</p><p>CBP INFO Center</p><h3>That’s all, folks</h3><p>Please, when someone runs over your servers, stealing your precious data and disrupting your delicate networks, please, <strong>PLEASE</strong>, make an internal inquiry <strong>BEFORE</strong> putting your blame on [Russia — China — North Korea — Assange — OTAN — Middle East — Lybia — You-choose-one].</p><p>We are lucky, and no tower was struck this time. just hope next time you will meet someone like me, a good citizen (or would-be) with a deep ethic soul and some background on IT security.</p><p>God bless America.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=6b2096f12f31" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Quale linguaggio per programmare]]></title>
            <link>https://cp.infomedia.it/quale-linguaggio-per-programmare-549ce79caee7?source=rss-8549109f4d62------2</link>
            <guid isPermaLink="false">https://medium.com/p/549ce79caee7</guid>
            <category><![CDATA[information-technology]]></category>
            <category><![CDATA[logic]]></category>
            <category><![CDATA[programming]]></category>
            <category><![CDATA[language]]></category>
            <category><![CDATA[semantics]]></category>
            <dc:creator><![CDATA[Luigi Morelli]]></dc:creator>
            <pubDate>Fri, 18 Nov 2016 17:02:32 GMT</pubDate>
            <atom:updated>2016-11-18T17:02:32.569Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/823/1*gsYRzJT-GktQ-nTyRKeZcA.png" /></figure><p><em>Il linguaggio è lo strumento che rende farraginosa la trasmissione delle<br>emozioni. Lo ricordi il programmatore…</em></p><p>Qualche tempo fa mi è tornato alla mente uno spassoso racconto di Isaac Asimov, intitolato “Atti del convegno di telepatia”. L’intero racconto si sviluppava nella frase “Tanto sapete già tutto…” ed è considerato il più breve racconto di fantascienza mai scritto. Sarebbe rimasto sorpreso, il Buon Dottore, nell’apprendere che esistono campi dello scibile umano per i quali nemmeno la telepatia, l’empatia o altri esoterici sensi dell’uomo potrebbero alcunché nel definirne una volta per tutte lo stato dell’arte.<br>O forse no… visto che tutti i racconti imperniati sulle tre leggi della Robotica si basano proprio sull’assunzione che il rigido paradigma utilizzato per evitare che un robot si ribelli appare sempre troppo stretto e suscettibile di paradossi notevoli. Se tentaste di chiedere ad un qualunque artigiano dell’informatica quale sia il migliore linguaggio per la programmazione otterreste una molteplicità di risposte pari al campione esaminato.</p><p>Questo significa forse che il “linguaggio definitivo” non esiste? Assolutamente no, semmai indica che non esiste il “programmatore definitivo”; come la moderna psicoterapia ci ha oramai abituato a pensare, il vincolo di una situazione potenzialmente patologica è strettamente correlato al punto di vista del soggetto esaminato: cambiando il punto di vista di quest’ultimo si riesce sovente a minimizzare ed annullare una nevrosi incipiente, con enorme giovamento della salute del paziente… e della situazione economia del medico.</p><p>Da quasi un secolo è oramai in voga l’idea secondo la quale è impossibile verificare qualsiasi teorema posto all’interno di un sistema assiomatico coerente e non contraddittorio a meno di trascendere il sistema stesso creando un metasistema di controllo semantico; non stupisce quindi la variegata serie di risposte relative al linguaggio di programmazione preferito. Ma sarà sempre così?</p><h3>Cogito, ergo sum</h3><p>La frase cartesiana ha raggiunto notevoli vette di notorietà, citata a proposito ed a sproposito: notevole ad esempio la definizione di Douglas Hofstadter, che dalla traduzione storpiata “penso, dunque sommo” mutuata dall’inglese, trasse un sublime “penso, dunque non ho accesso al livello in cui sommo”, ad indicare la polemica molto forte tra cognitivisti e neuroscienziati; anche qui tuttavia appare un possibile cambio di prospettiva: la corrente nichilista potrebbe infatti obiettare che nessuno ci può confermare la correttezza di ciò che pensiamo, e tuttavia la nostra<br>esistenza è subordinata a tale correttezza… Lo stesso concetto di “freccia del tempo”, necessario a calarci nella realtà quotidiana, viene continuamente modificato, sovente a nostra insaputa, dagli apparenti paradossi della meccanica quantistica. Sembra quasi che maggiore è la quantità delle nozioni a nostra disposizione, minore è il contenuto informativo che ne possiamo estrarre, a causa del crescente numero di interconnessioni disponibili: abbiamo informazioni, ma i loro pesi tendono sempre<br>più spesso ad escludersi a vicenda.</p><p>Ora, cos’ha ha che vedere questa introduzione con il titolo di questo capitolo?</p><h3>Cui prodest?</h3><p>Molto semplicemente, tutto. Nei linguaggi di programmazione abbiamo infatti innumerevoli fattori che concorrono alla scelta individuale: fattori squisitamente estetici, potenziali, attuali, fattori di integrazione con altri linguaggi, elementi di correlazione (o cross-compilazione), efficienza, efficacia, velocità intrinseca e velocità del compilato, grafica, profiling e via dicendo. I linguaggi di programmazione attuali rappresentano le Ferrari, le Porsche e le Honda dell’informatica. Ora una domanda alla quale vorrei una risposta sincera: quanti di voi possono dirsi tanto fortunati da possedere una Ferrari (intesa come autoveicolo-gioiello), e quanti tra i possessori riescono a portarla al limite? Lo stesso avviene oggi (più o meno) con le piattaforme<br>di compilazione.<br>Si badi bene, non mi riferisco unicamente a marche blasonate che vendono il proprio prodotto a caro prezzo: per averne un’idea provate a leggere (non semplicemente a sfogliare) il manuale del GCC e poi raccontatemi quante di quelle opzioni vengono utilizzate correntemente. Ecco che fatalmente il discorso di scelta di un linguaggio di compilazione diviene un tema filosofico: quale, tra quelli che conosco, soddisfa maggiormente le mie esigenze estetiche ed organizzative? Quale mi consente di intervenire con maggiore solerzia nella correzione di un baco? E quale, ancora, risulta più flessibile relativamente alla mia attività? Se produco interfacce grafiche sotto<br>cui gira un motore gestionale mi interesserò ad un linguaggio dotato di RAD (<em>Rapid Application Development</em>); se gestisco archivi con milioni di record mi converrà sceglierne uno più orientato ai database, se infine sviluppo programmi di analisi numerica in cui compattezza e velocità di esecuzione hanno la massima importanza, le soluzioni a mia disposizione sono ancora diverse. Il cui prodest all’inizio di questo paragrafo non è pertanto da<br>intendersi retoricamente come “Non giova a nessuno”, bensì, retoricamente (ma ad un metalivello differente), “A chi mai deve giovare?”</p><h3>Certezze da vendere</h3><p>Al discorso fatto sin qui occorrere aggiungere altre deliziose sfumature finanziarie.<br>Esistono aziende che si sono impegnate profondamente (stavo per scrivere “finanche i pantaloni” ma mi son trattenuto) nello sviluppo su piattaforme commerciali, nonostante la consapevolezza di numerosi profondi buchi (non bachi) nei compilatori, semplicemente perché così richiede il mercato: offrendo un prodotto sviluppato con un linguaggio/compilatore blasonato si ritiene di avere maggior presa sul mercato ed un canale riservato alla consulenza più rapido. A tal punto, la scelta è quasi obbligata. Ed è così che ho visto macchine a controllo numerico gestite in Java (che notoriamente permette al Visual Basic di apparire come un fulmine di guerra)… ma<br>anche dall’altra parte non si scherza: io stesso, in gioventù, ho scritto in Pascal sotto DOS un CAD tridimensionale, ed ho reinventato le API di gestione di oggetti grafici e mouse per evitare di ricadere nel vortice commerciale di chi sviluppava già allora interfacce utente. Me ne sono pentito amaramente (anche se poi alla fine il risultato non era malaccio).</p><p>Ricapitolando, esistono esigenze commerciali da non sottovalutare<br>nel caso si gestisca una società di software aperta sul mercato, ma a mio modesto avviso ciò che maggiormente conta nella scelta di un linguaggio di programmazione è lo skill acquisito ed il tipo di progetto da sviluppare. E si torna alla domanda primeva: quale linguaggio è migliore per una data applicazione?</p><p>La risposta, come al solito, è: dipende. Lo smalltalk è un sistema ad oggetti<br>semplicemente meraviglioso, ma sino a poco tempo fa non era assolutamente portabile, non era compilabile e richiedeva di trascinarsi dietro tutto il framework di oggetti. Pesantissimo. Però la sua filosofia ad oggetti faceva impallidire il C++ e l’object pascal. Il Prolog è stato utilizzato negli ambienti universitari per la creazione di sistemi di interrogazione in linguaggio naturale, poi però qualcuno ha scritto Eliza e Parry in BASIC. Le schede transputer venivano programmate in Occam, un linguaggio dotato di particolari algoritmi che ne avvantaggiavano il parallelismo intrinseco: un programma su transputer scritto in Occam risultava dalle tre alle cinque volte più efficiente di uno sviluppato con Fortran 90 su sistemi biprocessore.<br>Oggi però saremo in cinque o sei persone a ricordare l’Occam. Ancora, si dice che l’Assembler sia il non-plus-ultra tra i linguaggi, in quanto consente di mantenere sott’occhio tutte le risorse della macchina sulla quale si lavora, eppure gli ultimi microprocessori prodotti risultano in qualche modo “castrati”: il Pentium IV aveva problemi di accesso alla cache che ne impedivano il funzionamento a massimi regime, l’Opteron non riesce a sfruttare completamente l’architettura parallela di CPU ed FPU, il Prescott ha avuto una pipeline lunga 31 elementi per consentire un rapido aumento della frequenza di clock , ma questo ha ovviamente penalizzato il suo<br>sistema di branch-prediction. Inoltre il proliferare di registri ed opcode non standard, dall’MMX agli SSE e SSE2, costringe il povero programmatore assembler a fare i salti mortali per mantenere aggiornato ed efficiente il proprio codice.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/440/1*Q74ziIxWVmfWNyRQT5uh3g.jpeg" /></figure><p>Di converso, le ultime release del GCC sono in grado, se spinte al limite, di effettuare ottimizzazioni del codice utilizzando tali nuovi registri, e producendo quindi codice particolarmente efficiente da un sorgente in C.</p><h3>Mutatis mutandis</h3><p>Se pertanto qualcuno dovesse domandarvi quale sia il linguaggio di programmazione migliore in assoluto, rispondete pure di chiederlo al migliore programmatore in assoluto. C’è chi ha iniziato con il BASIC, poi per questioni di efficienza è passato al Pascal, quindi il mercato lo ha spinto verso il C. Un mio amico continuava a scrivere in C le interfacce CGI per il suo server Web: quando gli ho mostrato la snellezza delle applicazioni embedded PHP/MySQL è rimasto di stucco, non tanto per la velocità di esecuzione (inferiore al C) quanto per la semplicità di manutenzione del<br>codice. Alcune persone semplicemente adorano Python, altre hanno il voltastomaco quando si rendono conto della rigidezza sintattica e lessicografica alla quale sarebbero costretti utilizzandolo.</p><p>Il PERL consente di sviluppare filtri e moduli CGI con una manciata di byte, ma non chiedetegli l’efficienza di Oracle nel gestire un database o la velocità di un programma scritto in C. È sempre il solito discorso: una vite si inserisce meglio con un giravite che non con un martello… perché l’interfaccia studiata per essa si addice maggiormente al giravite. L’odierno proliferare di sistemi di scambio elettronici ha provocato una crescita esponenziale (e disordinata) dei metodi di accesso allo strumento: ai tempi del mainframe esistevano il TSO, il CICS, il VTAM, il BTAM e le strutture VSAM per l’archiviazione per accedere alle diverse risorse del sistema, ma il tutto era<br>comunque gestito da un unico programma supervisore sul computer principale; oggi ciascun produttore ha le proprie interfacce, i propri sistemi di compilazione, i propri linguaggi sovente incapaci di gestire la compatibilità dei sorgenti tra una release e l’altra. Da questo punto di vista il COBOL è una continua e piacevole eccezione: ho visto programmi scritti in Cobol 74 (su schede perforate…) compilati allegramente senza errori sugli odierni sistemi dopo quasi quarant’anni di vita, ma ovviamente non<br>consiglierei di partire con il COBOL a nessuno che non abbia voglia di trascorrere decine d’anni in sala programmazione a combattere con le “move”.</p><h3>Nessuno è perfetto</h3><p>Tale aforisma finale risulta maggiormente valido nel campo della Scienza dell’Informazione. Per tornare al titolo di questo capitolo, il linguaggio di volta in volta migliore è quello che consente di “comunicare” sia al programmatore che all’utente, con il minimo overhead ed il massimo feeling possibili. L’unico parametro veramente importante nella scelta di un linguaggio è l’equilibrio tra semplicità d’utilizzo percepita dallo sviluppatore ed efficienza richiesta dal committente. Tutto il resto non è che rumore di fondo durante la comunicazione.</p><h3>Concludendo</h3><p>Parlare del linguaggio richiede un metalinguaggio. Nel capitolo si è costruito<br>artificiosamente tale metalinguaggio utilizzando concetti e strutture in grado di valutare concetti e strutture sottostanti, ed il metasistema così creato funge da punto di osservazione e valutazione. Ma la domanda sul “migliore linguaggio di programmazione”, sul “sistema operativo più performante”, sullo “smartphone più efficiente” continua imperterrita, e verrà posta sin quando esisterà un bar dello sport o un insieme di religioni differenti. Questo accade perché le opinioni personali, il senso comune e la logica sono entità tra loro incommensurabili. Ciò che invece lascia riflettere è la richiesta, spesso perentoria, di utilizzare un dato linguaggio, framework<br>o ambiente di sviluppo a livello di specifica di fornitura, o come clausola di un bando di gara. Sostanzialmente, tra le righe del bando si riesce a leggere “Usate questo sistema perché così capisco quello che fate”, o peggio ancora, “Usate quel sistema in modo che possa guadagnarmi una tangente nell’imporne l’acquisto”.</p><p>E questo comportamento riflette una volta di più il livello al quale i manager dell’IT sono giunti.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=549ce79caee7" width="1" height="1" alt=""><hr><p><a href="https://cp.infomedia.it/quale-linguaggio-per-programmare-549ce79caee7">Quale linguaggio per programmare</a> was originally published in <a href="https://cp.infomedia.it">Infomedia Computer Programming</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Perché gli hacker attaccano i siti?]]></title>
            <link>https://medium.com/@luigimorelli/perch%C3%A9-gli-hacker-attaccano-i-siti-cc7fc0f18198?source=rss-8549109f4d62------2</link>
            <guid isPermaLink="false">https://medium.com/p/cc7fc0f18198</guid>
            <category><![CDATA[information-security]]></category>
            <category><![CDATA[computer-science]]></category>
            <category><![CDATA[attualita]]></category>
            <category><![CDATA[risk-management]]></category>
            <category><![CDATA[hacking]]></category>
            <dc:creator><![CDATA[Luigi Morelli]]></dc:creator>
            <pubDate>Fri, 28 Oct 2016 13:01:18 GMT</pubDate>
            <atom:updated>2016-10-28T13:01:18.431Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*zQ84jj5hmP12F4awT_bsSg.jpeg" /></figure><p>Risposta breve: Per la stessa ragione per cui la gente scala l’Himalaya o cerca numeri primi di dieci milioni di cifre: Perché è possibile, perche’ sono lì, per una sfida personale.</p><p>Nel nostro caso, ovviamente, le cose sono un po’ più complesse… Ho avuto modo di crescere professionalmente in quel fertile underground tecnologico che ha prodotto tanti potenziali hacker trasformatisi nel tempo in manager della sicurezza informatica; per quell’epoca, la mia precedente risposta sarebbe stata sufficiente: si “bucava” il mainframe del CED della Corte di Appello di Roma perche’ era lì. Come nel film “Wargames”, il nostro gruppo si divideva un centinaio di numeri telefonici a sera a testa, utilizzando i propri modem per chiamarli, e manteneva quei numeri ai quali il modem rispondeva. Nel 99% dei casi all’altro lato della linea era collegato un computer (i fax non erano ancora diffusi, ed avevano un modo completamente diverso di “fischiare” la propria risposta). Una volta “agganciata” la linea, compariva la maschera di accesso (la “mappa di Logon” per i mainframe, il “prompt di login” per le macchine Unix): si trattava di trovare la coppia username/password, e si era dentro.</p><h3>Era davvero così semplice?</h3><p>Ci sarebbe da chiedersi come mai ciò fosse possibile.<br>Ebbene, alla fine degli Anni Ottanta i computer nelle aziende non erano così diffusi, il Dottor Alberigi Quaranta aveva appena piantato i semi della Italsiel per far crescere l’informatica nella Pubblica Amministrazione. In genere la prima installazione di simili macchine era lasciata lla ditta produttrice (IBM, Univac ed Amdahl per i mainframe, Bull, Sun ed HP per i “minicomputer”); il produttore cedeva il computer appena installato all’amministratore del sistema, lasciandosi però aperte un paio di “backdoor” per la manutenzione prevista dal contratto di assistenza. Ora, le grandi aziende tenevano in grande conto la sicurezza interna del loro sistema (la “reliability” prevedeva per i sistemi operativi basati su MVS una istruzione di controllo per ogni due istruzioni di codice) ma non avevano ancora le idee chiare sui concetti di sicurezza “esterna”: tant’è che nell’equivalente di allora del dark web giravano files di username/password più usate da ciascuna azienda (Sip in testa). Tali files costituirono le basi per la creazione di quelle che gli attuali tecnici della sicurezza chiamano “rainbow tables”, ovvero la lista delle parole chiave di accesso più utilizzate (e quindi più deboli) per gli strumenti informatici.</p><p>Così negli Anni Ottanta.<br>Ma poi cosa successe? La mania ossessivo-compulsiva di organizzare ordinatamente le informazioni, mutuata dall’avvento del Web (6 agosto 1991) portò una ventata di rinnovamento: gli utenti divennero meno ingenui, i produttori più scaltri, i siti dedicati all’amministrazione spinta dei sistemi informatici si trasformarono in rubriche di ethical hacking, ed una categoria del tutto nuova di professionisti vide la luce e la fama. <br>Era nata l’era del personal computer, sistemi operativi e linguaggi di programmazione divennero il pane quotidiano delle nuove generazioni, cresciute a pizza, caffè e bit. Hacking, in inglese, significa più o meno “attaccare assieme oggetti diversi per formare un qualcosa di anomalo, strutturalmente unificato ed atto ad eseguire un compito non previsto dai singoli pezzi utilizzati”. E se questa definizione vi porta a pensare a virus e cavalli di troia, siete sulla strada giusta.</p><h3>Un po’ di storia</h3><p>Ad essere onesti, la nascita dei virus può essere retrodatata di molto. Nel 1949 John von Neumann, uno dei padri della Computer Science ed il teorizzatore del flusso di elaborazione di una “entità cibernetica”, pubblica l’articolo “Theory of self-reproducing automata” (scaricabile a <a href="http://cba.mit.edu/events/03.11.ASE/docs/VonNeumann.pdf">questo</a> link). il primo “worm” di cui si abbia conoscenza diretta è il cosiddetto è il “Creeper system”, un programma autoreplicante sperimentale progettato da Bob Thomas della BBN Technologies su di un Digital PDP-10. Il termine “virus” viene coniato da Frederick Cohen nel 1983 quando descrive programmi auto-replicanti per computer. Il 2 novembre 1988 viene rilasciato il cosiddetto “Morris Worm”, o internet worm, un concetto infettivo legato soprattutto a debolezze e buchi (ora curati) di alcuni processi Unix. Il worm infetta rapidamente Internet con multiple copie di se stesso, producendo pesanti rallentamnti in tutte le macchine ospiti.</p><p>Purtroppo la tecnologia e le idee rivoluzionarie sulle interfacce grafiche, concepite a Palo Alto e distribuite da Apple con il MAC e da Microsoft con Windows, hanno teso a “ricoprire” le attività interne del computer con una accattivante veste multimediale, che se da un lato ha permesso a chiunque di poter “utilizzare un computer”, dall’altra ha reso l’attività di chi tenta di violare sistemi altrui ancora più semplice per la possibilità di operare in modalità stealth. Allo stesso tempo sono nati siti “grigi” per cracker (deformazione del termine hacker) che offrivano a qualsiasi utente inesperto la possibilità di lanciare un programma automatizzato (batch script) dal proprio computer per sfruttare le ultime vulnerabilità dei sistemi operativi. In questa fase, la maggior parte degli attacchi informatici viene lanciata dai cosiddetti <em>script kiddies</em>, ovvero i ragazzini che lanciano programmi potenzialmente letali “per vedere di nascosto l’effetto che fa”.</p><h3>Le ragioni odierne per gli attacchi</h3><p>Ad oggi la situazione ha subito ulteriori, stratificati mutamenti.<br>Sull’onda del successo di “V per Vendetta”, l’hacking, un tempo dominio esclusivo per solitari nerd nascosti in cantine e monolocali a studiare e spulciare listati complessi, diviene sociale: gruppi sempre più organizzati e dediti al <em>phraking</em> (ulteriore corruzione sintattica e semantica del nostro hacker) attaccano i loro nemici giurati: istituzioni, multinazionali, poteri occulti ed ogni bersaglio compatibile con una ipotesi di complotto. Inutile dire che in questo modo diviene sempre più difficile coordinare lo scontro sociale e garantirne il risultato desiderato: lo stesso Assange si trova al momento a dover gestire un Wikileaks trasformatosi esso stesso in strumento politico da strumento di destabilizzazione politica quale era alla nascita.</p><p>In questo contesto già pesantemente contaminato da influenze che di tecnologico hanno poco o nulla si inserisce un ulteriore subdolo strumento di controllo: l’intelligence degli stati sovrani. I cosiddetti <em>servizi segreti</em> oggi non operano più con James Bond: i loro “agenti” sono programmi di acquisizione e controllo che girano spesso indisturbati sulla rete, ma reagiscono immediatamente “chiamando casa” quando riconoscono un termine, un colore, una parola, un suono o qualcosa per il quale sono stati progettati a reagire. Ma come tutte le intelligenze artificiali prodotte sinora, tali agenti non sono in grado di comprendere l’ironia e vengono sovente distratti da utenti scaltri che inseriscono nei propri messaggi una tagline (messaggio conclusivo) del tipo “For NSA scanners: bomb, terrorist, missile, explosion, retaliation”.</p><h3>Ma quanto è opportuno combattere contro la follia?</h3><p>Una battaglia contro la follia non e’ mai una sciocchezza, sa va sans dire. Purtroppo i nostri dati sensibili sono già sulla rete a prescindere dalle nostre pass: si pensi alle cartelle cliniche ospedaliere, ai dati anagrafici del comune, ai dati finanziari dell’Agenzia delle Entrate. alle nostre prefrenze negli acquisti online, ad ogni volta che accettiamo le “raccolte punti” dei grandi magazzini, alle preferenze sulle letture ogni volta che acquistiamo un libro elettronico… per non parlare della potenza del web semantico.</p><p>A nulla vale avere il sistema di cifratura più forte del mondo per trasmettere i nostri dati, se chi poi dovrà gestirli non adotta criteri di sicurezza altrettanto stringenti. E mai li adotterà sin quando tratterà materiale che non sia di proprietà. Ma alla fine anche il materiale di proprietà ha un suo prezzo.</p><p>Il nostro compito è quello, appunto, di <em>evitare</em> la follia, spiegando i rischi e risolvendo le idiosincrasie dei sistemi di sicurezza.</p><h3>Conclusioni</h3><p>Il mondo degli hacker (quelli veri) è un mondo in cui l’etica e la serietà professionale regna sovrana.<br>Poi esiste il social hacking, il cracking (penetrare e rovinare un sito non per mostrare le proprie capacità, bensì per provocare danno economico e d’immagine), il phraking (definito dal desiderio di impossessarsi di informazioni segrete rendendole inutlizzabili agli altri), gli script kiddies, i virus, il phishing (furto di dati personali attraverso il millantato credito di un sito), le varie intelligence agencies.<br>Ciascun gruppo ha ragioni, capacità e skill diversi per attaccare un sito. Nella maggior parte dei casi si tratta di ragioni futili; In una minoranza, si tratta di una pericolosa minaccia alla nostra libertà. Non tanto per la cattura senza permesso di dati ed informazioni digitali, comunque rintracciabili sulla Rete, quanto per il senso di inferiorità che chi subisce un attacco si trova ad affrontare.<br>Senza considerare che adottando assiduamente i cosiddetti Common Criteria per la sicurezza, il 99,9% dei tentativi di hacking nel mondo sarebbero evitati od evitabili… Ma di questo parleremo in un altro articolo.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=cc7fc0f18198" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Sicurezza e tranquillità]]></title>
            <link>https://dev.infomedia.it/sicurezza-e-tranquillit%C3%A0-d8b66ba4829c?source=rss-8549109f4d62------2</link>
            <guid isPermaLink="false">https://medium.com/p/d8b66ba4829c</guid>
            <category><![CDATA[hacking]]></category>
            <category><![CDATA[computer-science]]></category>
            <category><![CDATA[bruce-schneier]]></category>
            <category><![CDATA[information-technology]]></category>
            <category><![CDATA[information-security]]></category>
            <dc:creator><![CDATA[Luigi Morelli]]></dc:creator>
            <pubDate>Sat, 22 Oct 2016 11:02:57 GMT</pubDate>
            <atom:updated>2016-10-22T11:02:57.881Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/999/1*Bqbqo2Tg-uqp3GgrxG80fw.jpeg" /><figcaption>Oggi è estremamente semplice tentare di violare la sicurezza di un<br>sistema.</figcaption></figure><p>Stamane mi si avvicina un collega che si occupa di sicurezza di sistemi informatici chiedendomi se posso dare un’occhiata ad un programmino in C; accetto volentieri, ma quanto grande è il mio stupore nell’accorgermi che il “programmino innocente” è nientemeno che un codice stealth che consente di entrare su un sistema Linux e prenderne l’utenza di root di nascosto, portando avanti i propri comodi senza essere notati. Tuttavia c’è qualcosa che non mi convince: il programma è commentatissimo, pulito, scritto apparentemente per uso didattico. “Chi ti ha dato questo programma?” gli chiedo. Lui arrossisce un po’, poi confessa “l’ho isolato su un server che funzionava male, ora ho capito il perché. Rileggendo l’history ho scoperto che un utente vi si era intrufolato come root attraverso Internet, vi aveva scaricato (e compilato!) il programmino e lo aveva lanciato per essere costantemente riconosciuto e nascosto. Infine aveva iniziato a provare<br>diversi comandi.”</p><p>Il furbacchione era un novizio, in quanto aveva lasciato tracce un po’ ovunque, compreso il codice sorgente del programma suddetto. Ciò non toglie che la pericolosità di un simile atto è piuttosto alta: è uso comune infatti installare un server, anche su Internet, lasciando intatte le opzioni di default, di solito più consone ad una facile configurazione che non ad una stringente politica di sicurezza.<br>Tra le altre cose il sorgente conteneva anche un rimando ad un indirizzo IP<br>“particolare”, una sorta di “firma”; ad un successivo controllo potevo constatare la presenza di un vero e proprio “arsenale” di utilità dirette all’hacking ed al cracking, con tanto di articoli descrittivi sull’uso.</p><p>La grande fortuna è che la maggior parte dei novizi è talmente presa dalla<br>facilità di entrare all’interno di macchine altrui, da non leggere gli avvertimenti, i manuali, le news e tutto ciò che occorrerebbe per eseguire un “lavoretto pulito”.</p><p>Spesso inoltre vi è l’usanza di tramandarsi oralmente i metodi di installazione ed uso dei programmi in oggetto, e questo rende più semplice la vita a chi si occupa di sicurezza.<br>Mi è stato raccontato un grazioso aneddoto al riguardo: siamo nel laboratorio informatico di un Ateneo nazionale; un ragazzo del primo o secondo anno chiama il proprio tutore lamentandosi che “il compilatore C non funziona”. Il tutore si avvicina, getta un’occhiata distratta al codice da compilare, poi come fulminato torna a guardare più attentamente: il codice che “non compilava” creava una shell nascosta dalla quale poter richiamare indisturbati tutti i programmi a disposizione sul server con il massimo dei privilegi. Fortunatamente il ragazzo non aveva le capacità di rendere operativo il programma, e l’Ateneo in questione aveva comunque una serie di sistemi di sicurezza che ne avrebbero inficiato le velleità; lascia tuttavia da pensare il modo assolutamente privo di controllo con il quale sia possibile accedere a simili fonti di dati.</p><p>Sicurezza quindi non significa necessariamente tranquillità sull’intangibilità dei propri dati e l’inaccessibilità delle proprie macchine, quanto piuttosto coscienza dei rischi e controllo continuo. Come è inutile avere una routine per il backup dei dati che non venga controllata costantemente (il rischio è quello di perdere i vecchi backup sovrascrivendoli con 82i dati errati modificati dopo un attacco), così appare ingiustificata la tranquillità di fronte ad un sistema la cui sicurezza sia stata testata, poiché è sempre possibile che nuove tecnologie intrusive si presentino all’orizzonte.</p><h3>Riflessioni</h3><p>Bruce Schneier era solito ripetere che esistono solo due tipi di sistemi di cifratura: quello che ti permette di nascondere I tuoi dati alla sorellina di cinque anni, e quello che permettere di garantirti la privacy nei confronti del Governo. Le ultime notizie relative a Wikileaks ed NSA ci fanno capire quale tipo di cifratura per la sicurezza stiamo oggi utilizzando.</p><p>Certo, la cifratura non è tutto: esistono sistemi di firma digitale, certificati elettronici, procedure e processi legati alla sicurezza aziendale, infrastrutture tecnologiche, abstraction layers… e post-it.</p><p>In questi casi il livello di sicurezza di un sistema è comparabile a quello del suo anello più debole; purtroppo non è raro imbattersi in casi di utenti che utilizzano post-it in bella mostra per “ricordare” le password di accesso ai vari livelli, o che evitano di monitorare il sistema telefonico dal quale un qualsiasi malintenzionato dotato di PC portatile e modem potrebbe accedere all’interno della intranet aziendale.</p><p>E’ stato più volte indicato come nella maggior parte dei casi la violazione di archivi sensibili sia operata da personale interno all’azienda, ma ciò lungi dal giustificare l’abbassamento delle difese, dovrebbe invece portare a pensare ad una riprogettazione non tanto dell’infrastruttura tecnica, quanto di quella procedurale di controllo. Ma qui ci si scontra nuvamente con la burocrazia: le procedure per la valutazione dei rischi informatici (e non) in azienda è stata raccolta all’interno della normativa ISO 27000; per ottenere una certificazione ISO 27000 l’azienda deve in genere sostenere tutta una serie di modifiche strutturali, ambientali, normative, comportamentali, giuridiche e processuali, ed accettare controlli periodici ed a campione sull’applicazione della normativa. Una notevole spesa da considerarsi investimento a lungo termine, in quanto le procedure specificano persino i moduli per il rilascio delle consegne in caso di fine rapporto di lavoro o subentro di altro responsabile della sicurezza.</p><p>Questo procedimento, seppur economicamente e logisticamente pesante, dovrebe essere ben visto nell’ottica futura di una maggiore sicurezza globale dell’azienda, tuttavia… Cosa accade quando un’azienda certificata ISO 9000 fallisce un controllo a campione? E’ semplice: viene redarguita dall’Autorità di Controllo e le si impone di riallinearsi entro I successivi tre mesi, pena la scadenza della certificazione. Se però tale percorso potrebbe essere giustificabile nel caso della normativa ISO 9000 sulla Qualità, nel caso della normativa ISO 27000 ciò equivarrebbe all’annunciare che “l’azienda XYZ non risulta allineata con le politiche di sicurezza: potete bombardarla”, o al nascondere tale mancanza in attesa di un riallineamento. Ma questa è la conferma che la normativa ha un aspetto meramente burocratico, a nulla valendo le violazioni ad essa dal punto di vista della sicurezza aziendale…</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=d8b66ba4829c" width="1" height="1" alt=""><hr><p><a href="https://dev.infomedia.it/sicurezza-e-tranquillit%C3%A0-d8b66ba4829c">Sicurezza e tranquillità</a> was originally published in <a href="https://dev.infomedia.it">DEV. developing software solutions</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Informatica è scienza?]]></title>
            <link>https://dev.infomedia.it/informatica-%C3%A8-scienza-e0aff3f8dfc5?source=rss-8549109f4d62------2</link>
            <guid isPermaLink="false">https://medium.com/p/e0aff3f8dfc5</guid>
            <category><![CDATA[filosofia]]></category>
            <category><![CDATA[computer-science]]></category>
            <category><![CDATA[information-technology]]></category>
            <category><![CDATA[ontology]]></category>
            <category><![CDATA[future]]></category>
            <dc:creator><![CDATA[Luigi Morelli]]></dc:creator>
            <pubDate>Fri, 07 Oct 2016 12:45:25 GMT</pubDate>
            <atom:updated>2016-10-07T12:45:25.959Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*rX0SU7sSKpeImM40K8pELg.jpeg" /><figcaption>“Nel corso della sua storia l’Uomo ha sviluppato grandi idee, ma<br>queste non durano se non vengono di proposito trasmesse con<br>chiarezza da una generazione all’altra” (Richard P. Feynman)</figcaption></figure><p>Un sole caldo e giovane tingeva di rosso il cielo circostante, abbassandosi sul<br>magma ribollente; magari in profondità nascoste del sottosuolo i primi batteri estremofili (ultimi avamposti genetici di una civiltà oramai distrutta da migliaia di anni) combattevano pazientemente la loro lunga guerra contro l’estinzione. Questo, secondo alcune correnti, il panorama violento e avventuroso che si presentava sul nostro pianeta all’inizio della sua storia. Ed è in questo momento geologico che il filosofo Daniel Dennett pone le basi che porteranno alla dissezione del concetto di scienza.</p><p>Si è spesso portati a pensare che la storia del pensiero scientifico crei i presupposti prettamente umanistici della propria esistenza nel periodo della storia antica, caratterizzato dai confronti-scontri tra filosofia e retorica, tra pragmatici e sofisti, tra purezza sintattica e correttezza semantica. In quel periodo di sicuro vennero isolati numerosi strumenti decisamente utili alla diffusione delle idee, e lo stesso Schopenhauer, nel suo manuale “L’arte di ottenere ragione esposta in 38 stratagemmi”, ne tesse le lodi eleggendo la dialettica eristica come massima sintesi per pilotare e modellare la logica senza snaturarne la robustezza etica. Un esempio insomma di come piegare la realtà ai propri interessi. Dai fasti dell’antica Grecia la Scienza subisce ripetutamente gli attacchi della Metafisica, sino a giungere al periodo buio del Medioevo. La rottura tra teologia ed empirismo permise fortunatamente al pensiero dell’uomo di trovare nuove vie di sviluppo meno vincolanti, tanto da consentire una rinascita delle arti, ma soprattutto di quella scienza pratica che ne rappresenta così vivacemente il periodo.</p><p>Riappropriazione del concetto di curiosità e creazione di nuove esigenze portano allo sviluppo intellettuale ed industriale dell’Occidente, sino alla successiva crisi dei valori del XX secolo; poi il concetto di relatività nella fisica, nella logica e nella filosofia, ed infine l’avvento di un’idea strisciante, sensuale e nichilista composta di una realtà al di fuori della nostra portata, eppure perfettamente descrivibile da modelli matematici complessi ed illogici.</p><p>Ma occorre davvero venir fuori da questo apparente vicolo cieco in cui l’unico modo per accettare la realtà è negarne la descrizione sensibile, euristica, scientifica?</p><h3>Alla ricerca del contatto perduto</h3><p>“Stranamente”, ci racconta Feynman, “molti non credono che nella scienza ci<br>sia posto per la fantasia. . . una fantasia diversa da quella dell’artista, e che<br>consiste nel cercare di immaginare qualcosa che mai a nessuno è venuto in<br>mente”. Ecco dunque le sue teorie sull’elettrodinamica quantistica, quella sul<br>gene egoista di Richard Dawking, e le applicazioni dei frattali in medicina e<br>geologia: veri e propri salti quantici nel percorso apparentemente continuo della storia della scienza. Eppure l’idea stessa di discontinuità viene da noi applicata quotidianamente nella vita reale: quando cerchiamo di valutare le conseguenze di un comportamento o le possibilità a favore di un evento, e persino quando cerchiamo di avviarci ad un appuntamento con cinque minuti di anticipo “per non rischiare di trovar traffico ed arrivare tardi”, non facciamo altro che applicare questo modello previsionale discreto ed incerto ad una situazione apparentemente oggettiva, contando sul fatto che la nostra interazione con l’evento stesso non ne modifichi lo svolgimento.</p><p>Il valore di un modello consiste nell’affidabilità delle sue predizioni, ma la<br>valutazione delle predizioni esula dagli scopi del modello: ecco quindi che ci<br>troviamo di nuovo soli con noi stessi, alla ricerca di una precisione che tuttavia non accettiamo se non appartiene alla nostra sfera sensibile. L’intellettuale polacco Stanislaw Lem porta questo senso di incomunicabilità alle estreme conseguenze ipotizzando un incontro tra i terrestri ed una cultura aliena basandosi sui concetti espressi da Dennett sull’impossibilità di concepire sensazioni che non possiamo sperimentare fisicamente. E nello stesso periodo, con l’avvento dei calcolatori elettronici, ci siamo trovati a ripercorrere fedelmente lo stesso dualistico cammino drammaticamente percorso dalla storia negli ultimi 5000 anni, da un lato cercando di ricreare modelli matematici sempre più avanzati e perfetti per trovare risposte antiche, dall’altro tentando di imitare/emulare il comportamento dell’uomo su un computer per trovare un aiuto a capire noi stessi.</p><h3>Cos’è l’intelligenza?</h3><p>Negli ultimi ottant’anni questa domanda è risuonata spesso nelle aule semivuote e nelle teste altrettanto ricche di eco nascoste degli studiosi. Inizialmente si pensava che avesse comportamento intelligente l’individuo in grado di prendere decisioni in base a ragionamenti logici. Poi è intervenuto Kurt Gödel e dal 1936 la logica si è trovata d’un tratto priva delle fondamenta. Allora si tese a credere che un comportamento che spingesse all’autodifesa fosse intelligente, ma fu una catastrofe, in quanto anche gli animali (tranne rare eccezioni come i Lemming e in alcuni casi l’Uomo stesso) possiendono questa facoltà ma non l’intelligenza.<br>I virus sono intelligenti? No di certo, tuttavia riescono spesso a garantirsi la<br>sopravvivenza. . . e ricordiamo ciò che disse il “cattivo” nel film Matrix: “Vorrei condividere con te una rivelazione che ho avuto durante la mia permanenza qui sulla Terra.</p><p>Me ne accorsi quando tentai di classificare la vostra specie, e compresi che non eravate affatto mammiferi. Ogni mammifero, sulla Terra, sviluppa istintivamente un equilibrio naturale con l’ambiente che lo circonda, ma voi umai no. Vi spostate in una zona, vi moltiplicate, vi moltiplicate, sin quando ogni risorsa naturale è terminata. L’unica maniera in cui riuscite a sopravvivere allora è spostarvi in un’altra area. Bene, esiste un altro organismo, su questo pianeta, che segue questo medesimo schema. È il virus. Gli esseri umani sono una malattia, un cancro per questo pianeta; voi siete una piaga, noi la cura”.</p><p>L’Uomo potrebbe dunque essere un virus, o magari un retrovirus, un segmento modificato di RNA che per garantirsi la sopravvivenza ha creato, in millenni di evoluzione, il “sistema uomo” per potersi riprodurre nella piena supremazia del pianeta (Richard Dawking, Il gene egoista).</p><p>Ma torniamo a noi, ed alla nostra definizione dell’intelligenza. Può il computer aiutarci in questa continua ricerca, o assume la stessa funzione della lanterna che Diogene portava sempre con sé quando cercava l’uomo? In realtà la domanda appare mal formulata, almeno quanto l’affermazione che la matita di Einstein avesse avuto lo scopo di permettergli la composizione della Teoria della Relatività. Il computer è una matita, uno strumento particolarmente sofisticato ed utile per controllare un ragionamento che a monte dovrebbe tuttavia già esistere. Più o meno. Torneremo su questo argomento e sulle sue eccezioni tra un istante.</p><p>Il genio spesso incompreso di Alan Turing elaborò un metodo per constatare se una macchina fosse o meno intelligente sino al punto di acquisire autocoscienza. Il test è concettualmente molto semplice: un individuo si trova di fronte ad una tastiera, attraverso la quale può colloquiare con due entità in stanze attigue. Una di esse è umana, l’altra è un computer opportunamente programmato; se dopo un certo periodo di tempo in cui ha posto diverse domande l’individuo non riesce a distinguere quale dei due interlocutori sia l’uomo e quale la macchina, si dice che la macchina ha passato il Test di Turing.</p><p>Sinora nessun programma su nessun calcolatore ha mai passato questo test, a dimostrazione di come sia difficile programmare un sistema in grado di “fingersi umano”. Domenico Parisi scrisse qualche tempo fa che ciò che poteva distinguere l’intelligenza è la coscienza del sé, la capacità di parlare in termini di proprie sensazioni fisiche collegate a concetti astratti come bello, brutto, piacevole o doloroso. In realtà è già oggi possibile disporre di interfacce biometriche collegate a sensori che simulino il dolore attraverso brevi e intense scariche di corrente nei circuiti di un controllore elettronico, e disegnare un software in grado di apprendere dai prorpi errori, tuttavia. . .</p><h3>La vita è errare con coscienza</h3><p>Sull’onda del successo e della notorietà acquisiti dal Test di Turing vennero<br>sviluppati numerosi programmi di simulazione come Eliza o Parry, ma la vera svolta si ebbe quando si diede all’elaboratore la possibilità di “cercare” all’interno del campo delle possibilità quelle che fossero logicamente vere ed attendibili. Se la pur breve storia dell’Informatica annovera successi eclatanti come il programma che avuti in pasto determinati assiomi di logica matematica “dedusse” a suon di forza bruta un paio di teoremi inediti, e di un terzo già noto propose un nuovo elegantissimo enunciato, tuttavia oggi si tende a considerare la cosiddetta ricerca sull’Intelligenza Artificiale come un concetto dotato di un’importanza notevolmente ridimensionata: la palla virtuale sull’origine dell’intelligenza torna ai neurofisiologi, lasciando i cognitivisti e le loro teorie sulla coscienza artificiale con un importante capitolo della storia della scienza sviluppato solo parzialmente, sull’onda dell’eccitazione momentanea, ma con un lungo cammino ancora da percorrere.</p><p>Negli anni Novanta girava la battuta seguente: “Anziché dedicarsi all’intelligenza artificiale, conviene preoccuparsi della stupidità naturale”. . . E forse si tratta di un monito valido ancor oggi. Ma se l’Intelligenza Artificiale si è dimostrata una chimera, un traguardo troppo ostico e lontano da raggiungere al livello delle nostre attuali conoscenze scientifiche, questo non significa che l’Informatica sia tagliata fuori dai giochi per lo sviluppo scientifico. Abbiamo sinora illustrato ciò che non è la scienza: non è uno strumento di valutazione etico, non rappresenta la panacea per tutte le ricerche, ma ha un metodo di progressione che trova la propria forza nel polimorfismo, nella capacità di indicare nuovi significati quando la realta attuale è apparentemente in contrasto con le cifre. È un sistema per<br>esprimere la propria fantasia ed il proprio coraggio. Tutte queste qualità sono possedute anche dalla scienza dell’Informazione. Se riusciremo a dimostrare che vale una relazione biunivoca, cioè che il metodo scientifico può applicarsi all’Informatica, e che i risultati dell’Informatica possono rientrare tutti senza alcuna eccezione nel Gruppo costituito dalla scienza, allora potremo rispondere definitivamente alla domanda centrale dell’articolo.</p><h3>Penso, dunque non ho accesso al livello in cui sommo</h3><p>Abbiamo visto che una delle cause principali del fallimento delle ricerche<br>sull’Intelligenza Artificiale è stata l’incapacità di rappresentare a livello di logica matematica i concetti umani astratti. Ma questo significa semplicemente una cosa: quando prendo due pere e due mele (anche se alle elementari mi hanno sempre spiegato che non si possono sommare tra loro) sono cosciente di avere quattro oggetti: il mio cervello è in grado di rappresentare il concetto semantico di somma anche se personalmente non ho coscienza di quali neuroni cerebrali siano intervenuti nel complesso calcolo rappresentativo. Bene, cosa cambia se anziché utilizzare una sinapsi nervosa utilizzo un chip di silicio, quando alla fine del ragionamento “scientifico” il risultato è il medesimo? Se considero il cervello come una sorta di “scatola nera” nella quale sono in grado di eseguire collegamenti concettuali nascosti, e riuscissi ad avere la medesima funzione di trasferimento dell’informazione attraverso un computer, non mi interesserebbe minimamente il “perché” avvenga questo trasferimento: avrei semplicemente ottenuto in entrambi i casi da una serie di dati in ingresso una nuova fornitura di informazioni elaborate in uscita. Disumanizzando il processo neurofisiologico del pensiero siamo paradossalmente riusciti ad umanizzare l’uso del computer.</p><p>Se il nostro cervello è capace di ragionamenti scientifici, ed un computer è in<br>grado di riprodurne i calcoli, allora il computer (e l’Informatica per estensione) può essere considerato strumento di Scienza in quanto in grado di mostrare nei risultati un’elaborazione paragonabile. La domanda semmai si porrebbe sul processo emotivo, misto di curiosità, volontà e spirito di avventura che spinge l’Uomo verso la conoscenza, ma questo, come abbiamo visto, è patrimonio dell’Uomo e non della Scienza; ci si potrebbe chiedere se un ragionamento del genere, considerare cioè il cervello come macchina elaborativa, ed emularne le capacità di trasformazione delle nostre informazioni a livello elettromeccanico, sia etico: ma questa, di nuovo, è una domanda ascientifica, in quanto la scienza ha il compito di offrire risultati e non di valutarne le valenze morali.</p><h3>Io vivo sempre senza risposte</h3><p>L’Informatica risulta quindi, dopo questa superficiale analisi, promossa su tutti i fronti, ed è plausibile farla rientrare con il nome ben più altisonante di Scienza dell’Informazione nel novero delle scienze esatte, non tanto e non solo perché a livello di studio e produzione di algoritmi segue un metodo scientifico, né a causa delle sue strette interazioni con la logica matematica o l’elettronica: l’Informatica può essere a tutti gli effetti considerata una Scienza poiché offre e si compone di strumenti unici e nuovi per indagare con metodo e curiosità tra le pieghe della Realtà sensibile e dell’interazione umana con essa.</p><p>In chiusura un’ultima riflessione di Richard Feynman, una personalità illuminante nel campo della fisica e della filosofia, un gran comunicatore oltre che uno scienziato ironico, degno del Premio Nobel; soprattutto un uomo che ha fatto delle sue paure la sua forza principale, e che ha trasformato il modo di vedere e concepire la realtà per adattarlo al suo modello di calcolo che la rappresentava in modo più completo, benché apparentemente più assurdo. Così come assurdo potrebbe sembrare ad<br>una prima lettura questo capitolo, in apparenza completamente sbagliato, ma degno comunque di un dubbio e di una riflessione, elementi che indicano da sempre un ragionamento logico e scientifico.</p><p>“Io vivo sempre senza risposte. È facile. Quello che voglio sapere è come si arriva alla conoscenza. È proprio questa libertà di dubitare ad essere fondamentale nella scienza e, credo, in altri campi”.</p><h3>Conclusioni</h3><p>L’informatica, dunque, è scienza: in quanto propulsore della curiosità nella ricerca spinge l’Uomo verso nuovi lidi del sapere, in quanto logica applicata perfeziona gli algoritmi della conoscenza, in quanto modello della realta’ consente una rappresentazione coerente e non contraddittoria delle modalità di previsione.</p><p>Tuttavia l’Informatica è anche strumento inerme nelle mani dell’Uomo; non basta avere accesso al “cosa si può ottenere”, occorre capire anche “come applicarlo”. Il genio visionario di Feynmann lo aveva compreso, esortando la razza umana ad applicare scienza e fantasia in un tentativo estremo di unificazione di tecnica e umanesimo, vivendo il proprio sogno in prima persona come esempio della sua realizzabilità. Ma per ogni Feynmann esisono milioni di sedicenti scienziati e imprenditori per i quali simili concetti non sono mai stati affrontati.</p><p>L’informatica è scienza per definizione, mentre l’uomo diviene scienziato solo per scelta, cultura e dedizione.</p><h3>Bibliografia</h3><p>1. Giulio Preti, “Storia del pensiero scientifico”, Oscar Mondatori, 1975<br>2. Richard P. Feynman, “Il senso delle cose”, Adelphi, 1999 ISBN 88–459-<br>1463–1<br>3. Douglas R. Hofstadter, “Gödel, Escher, Bach”, Adelphi, 1990 ISBN 88-<br>459–0755–4<br>4. Daniel Dennett, “La mente e le menti”, Bibl. Scientifica Sansoni 1997,<br>ISBN 88–383–1726–7<br>5. D. Hofstadter, D. Dennett, “L’Io della mente”, Adelphi, 1985<br>6. AA.VV. (a cura di R.Viale), “Mente umana, mente artificiale”, Feltrinelli<br>1989, ISBN 88–07–10123–8</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=e0aff3f8dfc5" width="1" height="1" alt=""><hr><p><a href="https://dev.infomedia.it/informatica-%C3%A8-scienza-e0aff3f8dfc5">Informatica è scienza?</a> was originally published in <a href="https://dev.infomedia.it">DEV. developing software solutions</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
    </channel>
</rss>