A Ovest Di Paperino

Welcome to the dark side.

  • Concorrenza sleale

    Tutto vero, ne ho le prove conservate in un memory dump che alcuni marziani che conosco riescono a leggere come se fosse un romanzo.

    Ho fatto l'upgrade di un laptop DELL crapwarato da XP a Vista. Durante l'installazione mi è stato suggerito di disinstallare alcune applicazioni: ma visto che era un suggerimento e il laptop era una "installazione a perdere" mi son permesso il lusso di ignorare il suggerimento per vedere come andava a finire.

    Male: tra l'altro certo crapware dopo l'upgrade a Vista diventa pure non disinstallabile, per via dell'incompatibilità suddetta. Insomma il peggior crap in circolazione.

    È seguito un backup dei dati, un bel formattone soddisfacente (via anche la partizione MediaDirect!), installazione di Vista, SP1 e Dreamscene. Non immaginavo che Dreamscene fosse così accattivante agli occhi del consumer. Così accattivante che adesso anche la formichina - da sempre restia a qualsiasi cambiamento - vuole Vista.

    Poi è arrivato l'iPhone e con lui iTunes e i driver USB per far comunicare il PC con il telefono. E con iTunes, senza che ci facessi caso, sono cominciati i bluescreen fino a quando ne ho visto io uno. In diretta. Con in cima, ma solo per poco tempo, il nome del driver colpevole: USBAAPL.SYS

    All'inizio non ci ho fatto caso, poi le ultime quattro lettere mi son sembrate troppo familiari. Controllo incrociato sul colpevole:

    badapple

    Bella roba: si scrivono driver per la piattaforma della concorrenza con quella parte anatomica impropria e poi si fa pubblicità comparativa di cattivo gusto. Mi chiedo quanti clienti iPod/iPhone su Vista sono in grado di leggere altrettanto velocemente il BSOD e fare le corrette analisi. Ne conosco qualcuno di quelli che è passato a MacOS "perché Vista andava in bluescreen": oggi ho sorriso perché facendo due più due mi son ricordato che ovviamente possedeva un iPod e si è prontamente iscritto al club dei bulli di quelli "che Vista fa schifo" (consiglio di dare un'occhiata contiene alcuni brani gustosi!).

    Concludo con una domanda da parte del "turista per caso" involontario attore di questa avventura: dato un iPhone "ziphonato", qualcuno può suggerire qualche valida alternativa ad iTunes (anche a pagamento) che consenta l'upload degli MP3 sul melafonino?

    -quack

  • Tulip Festival 2008

    Ieri ho passato la "mattinata" insieme a due "turisti per caso" al festival dei tulipani della Skagit Valley che si tiene ogni anno ad Aprile. Il paesaggio è letteralmente spettacolare e anche con una piccola compatta non è difficile ottenere risultati decenti:Tulip Festival 2008

    L'intero set è su Flickr. Con Flickr sono alle prime armi per cui si accettano volentieri suggerimenti; oltre alle critiche costruttive (!) dei fotografi meno occasionali.

    -quack

    Technorati Tags: ,

  • Aggiornamenti 'interessanti'

    È stato rilasciato, ma poi sospeso per una incompatibilità, il SP3 di Windows XP. Ma la questione si fa "interessante" in quanto la Microsoft ancora rilascia aggiornamenti per un sistema operativo che dovrebbe essere sostituito da Windows Vista.

    Apro una piccola parentesi di storica, fonte Wikipedia.

    win2k

    29 Luglio 1996 - rilasciato Windows NT 4.0

    17 Febbraio 2000 - rilasciato Windows 2000

    26 Luglio 2001 - rilasciato un Post SP6a SR per Windows NT 4.0; interessante che MS abbia rilasciato un aggiornamento per un sistema operativo che dovrebbe essere sostituito da Windows 2000

    25 Ottobre 2001 - rilasciato Windows XP

    29 Agosto 2002 - rilasciato il SP3 per Windows 2000; interessante che MS abbia rilasciato un aggiornamento per un sistema operativo che dovrebbe essere sostituito da Windows XP

    26 Giugno 2003 - rilasciato il SP4 per Windows 2000; doppiamente interessante che MS abbia rilasciato un secondo aggiornamento per un sistema operativo che dovrebbe essere sostituito da Windows XP

    Credo che a questo punto le possibilità siano due:

    1. la storia è ricca di eventi ripetitivi, come può essere il rilascio dell'ennesimo service pack, decisamente "interessanti"
    2. il mondo è ricco di falsi storici noiosi pronti a mettere in evidenza fatti di scarsissima rilevanza pur di portare un punto a casa

    Se interessa in un prossimo post potrei spiegare perché per fare il caffé non servono backdoor.

    -quack

  • Sequelite acuta

    SQL È notizia di questi giorni che i "cinesi" ne hanno combinata un'altra delle loro: hanno infettato qualcosa come 510 mila server tramite SQL injection sparando javascript pericoloso a destra e a manca. L'attacco ha colpito soprattutto server Microsoft (con ASP e ASP.Net) e per questo motivo qualcuno si è sentito autorizzato a mettere in relazione l'attacco con un'altra vulnerabilità segnalata la scorsa settimana (una Elevation of Priviledges): legame che non esiste assolutamente, come si può leggere sul blog del Microsoft Security Response Center. Confermata anche da un'indagine di BetaNews:

    But a BetaNews check this morning of infected sites whose injected code is visible via Google query (where, ironically, the hidden script code becomes un-hidden) revealed at least one site -- that of publisher Harcourt Brace, a frequent Oracle partner -- where the injected code was also present.

    Di SQL Injection comincio a vederne in giro davvero tante (qualcuna assume anche caratteristiche grottesche), basta fare un giro su milw0rm.com per rendersene conto di persona: Joomla, ODFaq, FluentCMS, RunCMS, PHP Forge e non ultimo Wordpress (che sull'argomento è piuttosto recidivo). Prevenire l'attacco è molto più semplice che scrivere codice che faccia la pulizia a mano. Basta sostituire ad esempio questo:

    $wpdb->query("SELECT row FROM table WHERE column = '$parameter'")

    con questo:

    $wpdb->query("SELECT row FROM table WHERE column = '%s'", $parameter)

    Insomma come le Sexually transmitted disease la sequelite è facilissima da evitare, ma nonostante ciò la sua diffusione è un fenomeno di dimensioni planetarie. Il consiglio per difendersi da questo tipo di incoscienza puerile è sempre lo stesso: usare plugin specifici per FireFox o IE7 in protected mode.

    -quack

    Technorati Tags:

    UPDATE: questo post spiega perché ad essere colpito è stato lo stack MS.

  • The machine is us

    Video molto interessante ed acchiappante sul concetto di Web 2.0 (anche se penso che fondamentalmente sia una buzzword).

    Enjoy!

    -quack

    Technorati Tags:

  • Unpacking but slowly

    Dopo il cambio di ufficio mi ritrovo ancora parecchia roba «inscatolata» e nei momenti di pausa, tra una guerra di lavoro e l'altra, lentamente spacchetto cose a caso. Ravanando in un crate che a tratti pare vivere una vita propria, ho beccato un posterino d'annata:

    einstein

    La frase è di quelle che colpiscono:

    Do not worry about your difficulties in mathematics;
    I can assure you that mine are still greater

    e ben si abbina al cartello fuori della mia porta che indica la "SALA SOLUZIONI" tra due emblemi della Repubblica Italiana, ricordi di un tempo molto busy nelle vesti di tutor.

    -quack

    Technorati Tags: ,

  • Do you sudowin?

    Uno dei commenti al mio post che spiegava come funziona UAC «dietro le quinte» mi segnalava l'esistenza di Sudowin un port per Windows del comando sudo disponibile su tutte le piattaforme *nix. Il tool l'avevo notato in precedenza, ma il commento è stata una buona scusa per approfondire: alla fine si è rivelato un utile esercizio e credo di aver capito qualcosa di più di come funziona sudo ad esempio su Ubuntu.

     doyousudo

    La prima sostanziale differenza tra il mondo Windows e il mondo *nix è la figura dell'amministratore. In Windows è amministratore qualsiasi utente appartenga al gruppo Administrators: in *nix c'è un unico amministratore - qualcuno mi corregga se sbaglio - che è root. Discutere sui pro ed i contro di ciascuna delle due soluzioni porterebbe ad una [in]utile guerra di religione, per cui non ci provo neanche. La seconda soluzione però ha qualche implicazione di tipo pratico su sistemi "condivisi": come dare la possibilità ad un utente di svolgere compiti amministrativi senza condividere la password di root (un'idea molto malvagia!)? Sudo colma appunto tale «lacuna» dando la possibilità ad altri utenti (i sudoers) di lanciare processi con permessi di root; il tutto è ampiamente configurabile tramite file di configurazione.

    L'implementazione per Windows, per me più immediatamente comprensibile, esegue il «gioco di prestigio» in questo modo: durante l'installazione del tool viene installato un servizio che gira con le credenziali di LocalSystem e che si pone in ascolto di «richieste» sudo. In presenza di una richiesta legittima il servizio aggiunge l'utente al gruppo degli amministratori, lancia il processo richiesto usando il nuovo token, e subito dopo rimuove l'utente dal gruppo.

    La differenza con l'approccio UAC è evidente: con sudowin un qualsiasi utente potrebbe essere messo in grado di lanciare alcuni processi senza necessariamente essere parte del gruppo degli amministratori.

    Sudowin può essere usato per due scopi:

    1. dare la possibilità ad un amministratore di girare normalmente con credenziali non amministrative, esattamente come avviene con l'Admin Approval Mode (AAM) di Vista.
    2. dare la possibilità ad un utente "normale" di eseguire un numero limitato di applicazioni che potrebbe richiedere permessi amministrativi.

    Per quanto riguarda il primo uso, sudowin potrebbe essere perfetto per XP in quanto l'AAM di Vista è sotto molti aspetti più sicuro e conveniente (ad esempio le credenziali vengono richieste in un desktop separato a prova di spoofing): perció ne sconsiglio l'uso - a tale scopo - su Vista; tuttavia qualcuno che ha più dimistichezza con il mondo *nix potrebbe trovarlo più «familiare».

    Per quanto riguarda la seconda possibilità sudowin è perfetto: l'unico problema è che occorre estrema attenzione nel configurare quali applicazioni inserire in una eventuale white list. Dare ad un utente qualsiasi la possibilità di eseguire notepad con un token da amministratore non è molto diverso da aggiungere l'utente al gruppo degli amministratori (ovviamente se l'utente è scaltro ed ha cattive intenzioni): l'elevation of priviledges via notepad è una delle più banali da individuare.

    Un'ultima nota a commento di un'affermazione contenuta nella documentazione di sudowin:

    UAC also introduces Admin Approval Mode. This is what is confused for sudo. Essentially, administrators are prompted for their credentials or their consent whenever they need to perform a sensitive task. Because the administrators are being prompted for their own passphrase this may seem a lot like sudo, but there is one very important thing to remember – the administrator is not being granted any priviliges that she does not already have. There is no privilege escalation occurring.

    In realtà per via dello split token la privilege escalation avviene eccome!

    -quack

    Technorati tags: ,

  • Omaggio a Dylan Dog

    Complice una combinazione casuale di fattori, ieri mi sono ritrovato in ufficio con giacca nera, camicia rossa, jeans azzurri, stivaletti simil-Clarks e la mia buona dose di incubi:

    dylandog

    Peccato solo che da queste parti Dylan Dog non sia mai "atterrato"

    Sempre a proposito di misteri, quello riguardo la vulnerabilità di Adobe Flash sfruttata al CanSecWest comincia a dipanarsi, grazie all'aiuto attento di un collega:

    To claim a laptop as your own, you will need to read the contents of a designated file on each system through exploitation of a 0day code execution vulnerability (ie: no directory traversal style bugs).

    Fonte: le regole del CanSecWest

    A quanto pare non c'era neanche bisogno di bypassare il Protected Mode di IE in quanto, come già spiegato altrove, il Protected Mode non previene la lettura dei file ma ne limita semplicemente le operazioni di scrittura.

    -bau!

    Technorati Tags:

  • Abilitare la DEP in IE7

    Dopo le recenti defaillance di Adobe, e rincuorato dal fatto che su IE8 la DEP sarà abilitata di default, ho deciso di mettere insieme un post-ino su come abilitare la DEP su IE7.

    Avviare IE come amministratore (altrimenti la voce relativa alla DEP sarà "disabilitata") cliccando col tasto destro sull'icona di IE:

    IERunAsAdmin

    Infine cliccare sulla voce di menù Internet Options, selezionare il tab Advanced e spuntare la voce "Enable memory protection ...":

    ie7-dep-enable

    Perché la DEP non è abilitata di default? Per motivi di compatibilità con alcuni plugin abbastanza "popolari". Visto che le nuove versioni di tali plugin sembrerebbero essere compatibili con la DEP, vale la pena provare. Se qualcosa non funziona disabilitare è altrettanto semplice.

    Un'altra soluzione per evitare il pericolo di exploit basati su Flash, è fare uso di plugin che creano una white-list di siti considerati "affidabili" e disabilitano di default le maledette animazioni (usate spesso per bypassare il popup-blocker) per tutti gli altri siti. Per IE7 tale lavoro è svolto egregiamente da IE7Pro. YMMV

    -quack

    Technorati Tags: ,

  • GAME OVER

    Questa vulnerabilità di Flash (Adobe alla ribalta) sta facendo il giro della blogosfera. Il pdf è riassunto brillantemente in questo post di Thomas Ptacek intitolato Dowd's Inhuman Flash Exploit.

    Inumano perché non solo Dowd è riuscito a creare un exploit quasi impossibile oltre che cross-browser (e probabilmente anche cross-platform): ma l'exploit - che altro non è che una animazione Flash - è costruito in maniera tale da lanciare la remote execution senza neanche interrompere l'animazione vettore dell'exploit!! Un genio!

    gameover

    -quack

    Technorati Tags:

  • SQL Execution

    Wikipedia, a proposito di SQL Injection, recita:

    La SQL injection è una tecnica dell'hacking mirata a colpire le applicazioni web che si appoggiano su un database di tipo SQL. Questo exploit sfrutta l'inefficienza dei controlli sui dati ricevuti in input ed inserisce codice maligno all'interno di una query SQL. Le conseguenze prodotte sono imprevedibili per il programmatore: l'Sql Injection permette al malintezionato di autenticarsi con ampi privilegi in aree protette del sito (ovviamente, anche senza essere in possesso delle credenziali d'accesso) e di visualizzare e/o alterare dati sensibili.

    Insomma per ottenere un attacco basato su una SQL Injection, il sito vulnerabile deve prendere in input un parametro malformato e trasformarlo accidentalmente in una query SQL.

    Ma se il sito come parametro prende direttamente una query? Si ottiene la nuova frontiera delle SQL Injection: la SQL Execution!

    Enjoy!

    Technorati Tags:

  • Infinite loop

    Ieri, con un "pisolino" di qualche ora, ho interrotto il «ciclo continuo» che era cominciato il primo Aprile: 14 giorni ininterrotti di lavoro/weekend pieni fino a tarda ora. Mi son sentito come una di queste formiche:

    infinite loop

    Ma il peggio è arrivato oggi: il nuovo ufficio, seppur temporaneo, è di una rumorosità incredibile data la prossimità di uno dei LAB più grandi di Windows. Toccherà armarmi di cuffie super efficienti e piazzare un cartello davanti alla porta.

    inutile bussare quì...

    -quack

    Technorati Tags:

  • Brevi per il weekend

    -quack

  • Quelli che Windows Server

    Che qualcuno usi un OS server come desktop non è un mistero: ad esempio alcuni miei colleghi lo fanno perché preferiscono installare una versione FULL di Sql Server sulle loro dev box (mi chiedo sempre a che pro). Che la piattaforma server venga elogiata dagli stessi denigratori della piattaforma client organizzatori della campagna "Save XP", come EnricoG aveva notato, comincia a sembrarmi strano: si tratta degli stessi bit anche se branding e marketing hanno un'influenza a volte decisiva.

    Ma non è finita: la passione per Windows 2008 Workstation sta spopolando con delle vere e proprie guide su come trasformare il server in una workstation, inclusa l'installazione del pacchetto Live! La cosa più buffa è che spesso si consiglia di installare Windows Server perché:

    is remarkably faster and more stable (NdP: ????)! People say: “It’s Windows Vista without the bloat“!

    nelle stesse guide in cui si spiega come installare il «bloat» mancante.

    Buon weekend, oggi è uno short Friday in quanto spostano gli uffici del mio team altrove, ovvero dall'altra parte del parcheggio.

    -quack

    Technorati Tags:

  • Vincitori e vinti

    Il recente hacker contest al CanSecWest, a cui avevo accennato in questo post recente, ha lasciato winner qualche ulteriore strascico polemico.

    Sembra che la maggior parte della gente sia falsamente convinta che l'exploit che ha "tirato giù" Vista sia limitato alla piattaforma Windows (io intanto muoio dalla curiosità di sapere i dettagli più succosi). Qualcun altro osserva che se l'exploit in questione fosse quello di cui parla Adobe in questo bollettino di sicurezza il danno sarebbe nullo in quanto l'exploit girerebbe con gli stessi privilegi dell'utente locale: come se la possibilità di vedere andare in fumo l'home folder e tutti i propri dati personali sia molto meno peggio che vedere il proprio PC soccombere totalmente.

    Infine quelli di Ubuntu, che immagino davvero non hanno capito niente di quello che è successo, festeggiano con un post autocelebrativo:

    CanSecWest PWN2OWN 2008 - Ubuntu Wins!

    Nel frattempo il malware si evolve: meno software più psicologia, con exploit che sono multipiattaforma per definizione come il phishing; e qualche criminale fa affari d'oro con una vulnerabilità Cross Site Scripting vecchia di qualche anno o usando un'altra vecchia vulnerabilità per rubare dati personali a 60 mila studenti installare al tempo stesso un IRC bot sul server. Solaris.

    Non c'è dubbio: mala tempora currunt.

    -quack

    Technorati Tags:

  • Checksur mon-amur

    Il problema dell'update che non vuole installarsi, che avevo bollato come definitivamente scomparso con l'installazione del SP1, è riapparso sotto le mentite spoglie di un nuovo update ma sempre relativo al Junk Folder Filter di Windows Mail (non me ne vergogno: funziona alla grande per quello che mi serve ).

    Ma come diceva il mitico Belushi, quando il gioco si fa duro, i duri cominciano a giocare.

    Ravanando in giro ho scoperto che il malefico errore 80073712 è dovuto alla corruzione di qualche manifest di Windows Update (che sono dei file che contengono la descrizione degli update). Fino a qualche tempo fa, la soluzione proposta era lo standing upgrade, ovvero la reinstallazione dell'OS sulle ceneri del precedente. Deciso a conservare il record di durata di installazione di Vista (intatto sin dal 5 Novembre 2006!) ho continuato a ravanare e ho scoperto l'esistenza di CheckSUR, conosciuto anche come update 947821.

    Ma cos'è CheckSUR? Lo dice l'«update» stesso:

    System resources, such as file data, registry data, and even in-memory data, can develop inconsistencies during the lifetime of the operating system. These inconsistencies may be caused by various hardware failures or by software issues. In some cases, these inconsistencies can affect the Windows Servicing Store, and they can cause a Windows Vista update to fail. When the update fails, it blocks the user from installing updates and service packs. CheckSUR addresses this issue.

    CheckSUR, che sta per Check for System Update Readiness, fa la diagnosi dei manifest installati e nel frattempo ripara quelli che dovessero risultare corrotti. Nel mio caso:

    CheckSur

    CheckSUR si installa come un Windows Update normale in modalità "manuale" e genera un log nel file %WINDIR%\Logs\CBS\CheckSUR.log

    In seguito l'installazione dell'update che non si voleva installare è filata liscia come un olio sintetico. Occhio che l'«installazione» (in realtà si tratta di una scansione) di CheckSur richiede circa 10-15 minuti durante i quali la progress bar potrebbe "fermarsi" per un bel po', per cui è richiesta un po' di pazienza.

    Il consiglio, data la gratuità del tool, è il solito. Accattatavill'

    -quack

    Technorati tags:

  • Tax time

    Tra una settimana è il 15 Aprile, giorno in cui ogni famiglia fiscale regola i conti con l'Internal Revenue Service (IRS), l'equivalente italiano del ministero tasse e balzelli.

    Oggi ho finalmente completato, con l'aiuto di un accountant professionista, i miei adempimenti burocratici:

    Spennato 
    La cosa buffa è che, grazie ad una legge federale chiamata "economic stimulus package", oltre il 90% del conguaglio da versare verrà restituito entro un paio di mesi sotto forma di rebate fiscale (quanto odio i rebate, ma in questo caso a caval Donato... [cit.]). A volte la matematica è davvero un'opinione.

    -quack

    Technorati Tags:

  • Refuctoring in C# 3.0

    Con la nuova versione del linguaggio C# (3.0) rilasciata con Visual Studio sono state introdotte alcune nuove sintassi che, secondo la mia personale teoria che il codice "compatto" sia scarsamente leggibile, rendono il refuctoring un gioco da ragazzi. Ne elenco alcune:

    Variabili locali tipizzate implicitamente
    Un esempio vale più di mille parole:

    var i = 10; // i è un int
    var j = "hello" // j è una string

    Si ottengono molti punti refuctoring se la dichiarazione var è usata per definire il valore di ritorno di una funzione:

    var p = MyFunction(); // cos'è p???

    Proprietà automatiche
    Per guadagnare un po' di punti refuctoring basta dichiarare una proprietà automatica nelle vicinanze di una astratta:

    public string PetName { get; set; }
    public abstract int PetAge { get; set; }

    La differenza subdola ingannerà il lettore più attento

    Extension Methods
    È ora possibile aggiungere metodi a classi predefinite. La faccia del lettore che si trovi davanti al seguente pezzo di codice sarà impagabile:

    int i = 0;
    int j = i.DoSomeMagic(); //  

    Tipi anonimi
    È ora possibile definire, grazie alla keyword var, un tipo anonimo al volo:

    var myPerson = new { Name = "Foo" };

    Lambda
    La classica ciliegina sulla torta, soprattutto se accoppiata alla keyword var (ancora tu?):

    var evenNumbers = list.FindAll(i => (i % 2) == 0);

    Nel mio team è stato chiaramente stabilito che eventuali abusi da C# 3.0 verranno corporalmente puniti.

    -quack

    Technorati Tags:

  • Timeo Danaos

    Ieri mi è arrivata una e-mail in cui venivo notificato dell'assegnamento di un nuovo PC di lavoro da essere consegnato domani (Venerdì). Mi son preoccupato perché, sebbene mi era recentemente balenato il pallino di chiedere un upgrade a QuadCore, per motivi di incasinamento vario non l'ho mai fatto e quindi il "dono" è completamente inaspettato. Ed invece è arrivata la sorpresa sotto forma di questa configurazione:

    HP Compaq dc7800 Convertible Minitower P
    HP Core 2 Quad Q6600 (2.40/1066/8M) Proc
    4GB PC2-5300 (DDR2-667)4x1GB Memory
    dc7800 CMT 1.44MB Floppy Drive
    HP 250GB SATA NCQ SMART IV 1st HDD
    SATA 16X SuperMulti LightScribe1st No SW
    NV GF 8400GS (256MB DH) PCIex1 1st Card

    Il motivo? Avanzi di budget. I quattro giga mi hanno subito convinto che vorrò installare Vista x64; oltre a chiedere immediatamente un disco secondario per non dover più copiare i dati via rete.

    -quack

    Technorati Tags:

  • ISO approva OOXML

    Ci sono tanti buoni motivi per festeggiarla come una buona notizia, alcuni sono elencati in questo post di Raffaele Rialdi.

    Certo è che i sostenitori della "libertà" non l'hanno presa bene visto che han sperato fino all'ultimo in un pesce d'Aprile e che di standard ne fosse imposto solo uno; stesso stile polemico, con cui la notizia è stata anticipata anzi tempo da Michiel Leenaars, guarda caso membro della OpenDoc society e molto più preoccupato per l'impatto che questo avrà sull'adozione del formato concorrente ODF che di meriti tecnici. Mi chiedo come la prenderà Rob Weir per l'occasione ancora stranamente silenzioso.

    -quack

    Technorati Tags: