Rassegniamoci: rinunciare alle analisi AI del codice non è più possibile, lo dimostra il progetto curl

Per riassumere il senso di questo articolo, che prende spunto dal bellissimo case study che ha visto Mythos analizzare il codice del progetto curl, basterebbero queste righe scritte da Daniel Stenberg:

Not using AI code analyzers in your project means that you leave adversaries and attackers time and opportunity to find and exploit the flaws you don’t find.

Non usare analizzatori di codice AI nel tuo progetto significa lasciare ai tuoi avversari ed aggressori il tempo e l’opportunità di trovare e sfruttare le falle che tu non hai trovato.

Pensandoci, per quanto l’affermazione possa apparire scontata, in realtà contiene la conferma del punto di non ritorno in cui ci troviamo, la certificazione del fatto che l’era informatica in cui stiamo vivendo, l’era AI, ha cambiato tutto.

Ne parlavamo qualche giorno fa analizzando la proposta di inserimento di un Killswitch all’interno del Kernel che possa disabilitare istantaneamente le funzioni vulnerabili: non prevedere all’interno del proprio ciclo di sviluppo un’analisi da parte di una AI sarebbe incosciente.

Il caso specifico di curl è particolarmente interessante. Il progetto è immenso: 176.000 righe di codice C, escludendo le linee vuote, 660.000 parole, e ogni singola linea di codice sorgente di produzione è stata scritta (e poi riscritta) 4,14 volte.

A contribuire al codice oggi sono 573 singoli individui e, nel corso del tempo, 1.465 persone hanno partecipato.

Tutto questo ben di Dio è stato dato in pasto a Mythos, il modello indicato da Anthropic come il più potente di sempre, ed il risultato dell’analisi ha svelato cinque vulnerabilità che il modello ha indicato come “confermate”, ma che dopo attenta analisi si sono tramutate in un singolo nuovo CVE, categorizzato con severità bassa.

Tanto? Poco? Ci si aspettava di più? Stenberg lo aveva chiesto in un sondaggio:

E più o meno gli utenti si può dire che ci avevano preso.

Ma il senso di tutta l’analisi, al netto del fatto che per curl non sia stata così rivelatoria, sono le parole che abbiamo riportato in apertura, poiché ad oggi, sarebbe sciocco fare a meno dei vantaggi offerti dalle analisi AI, che sono (citando ancora Stenberg):

  • La capacità di individuare quando il commento dice qualcosa sul codice e poi concludere che il codice non funziona come dice il commento.
  • La capacità di controllare il codice per piattaforme e configurazioni per cui altrimenti non sarebbero possibili i test.
  • La conoscenza dei dettagli sulle librerie di terze parti, le loro API e sui protocolli per rilevare anomalie.
  • La capacità di creare report facili da capire.
  • La capacità di generare contestualmente la patch alla problematica.

Difficile non pensare a quanto questi aspetti siano cruciali in una pipeline moderna.

In conclusione, ecco un eccellente esempio di uso dell’AI che non è guidato dall’hype, quanto piuttosto da un bisogno reale che viene soddisfatto: tutto quello di cui il mondo ha bisogno.

Da sempre appassionato del mondo open-source e di Linux nel 2009 ho fondato il portale Mia Mamma Usa Linux! per condividere articoli, notizie ed in generale tutto quello che riguarda il mondo del pinguino, con particolare attenzione alle tematiche di interoperabilità, HA e cloud.
E, sì, mia mamma usa Linux dal 2009.

14 risposte a “Rassegniamoci: rinunciare alle analisi AI del codice non è più possibile, lo dimostra il progetto curl”

  1. Avatar Divago
    Divago

    Boh sarà… Non mi esprimo sulla questione perché non sarei onesto, visto che l'IA la odio, ma se qualcuno riesce a sfruttarla bene buon per lui.

  2. Avatar Alessandro Scarozza
    Alessandro Scarozza

    per me la notizia più incredibile è che curl abbia 176.000 righe di codice

  3. Avatar mimmus
    mimmus

    ma che significa "l'IA la odio"???
    io sarei nella fase, diciamo così, calante della mia carriera eppure sto investendo GRAN PARTE del mio tempo a star dietro all'IA e sfruttarla meglio possibile.
    oggi l'IA non è più una banale chat ma un sofisticato strumento che consente cose letteralmente impossibili fino ad ora. per dire, giusto ieri ho scovato con l'aiuto di un potente tool IA la causa di un problema che affliggeva i colleghi da giorni.
    ti suggerisco di spendere qualche soldo per una subscription a Claude Code (o equivalente) e dargli un'occhiata approfondita, configurandolo nel migliore dei modi per i tuoi casi d'uso

  4. Avatar far5893
    far5893

    se non ha librerie e si porta tutto in pancia ci potrebbe pure stare, alla fine e' quasi un browser.

  5. Avatar Divago
    Divago

    No grazie. Non ho voglia né soldi da buttare per usare qualcosa che, nella migliore delle ipotesi, mi farebbe solamente perdere inutilmente un sacco di tempo e basta senza nessun vantaggio.

  6. Avatar mimmus
    mimmus

    non capisco il motivo di un rifiuto aprioristico, sei destinato a restare fuori o indietro.
    te lo dico io che ho 30 anni di lavoro sulle spalle e avrei fatto volentieri a meno di tutto questo…

  7. Avatar mimmus
    mimmus

    e ha in pancia una marea di protocolli…

  8. Avatar Divago
    Divago

    Io ne ho 25 sulla grafica, e per quanto i vari software Adobe, Affinity e simili abbiano al loro interno strumenti che usano l'IA, per quanto potenti possano essere su alcune operazioni, non sono mai precisi su ritocchi alla pelle, oggetti e altri elementi nella foto. Se si vogliono fare cose semplici, bastano anche ChatGPT, Gemini, Copilot e decine di altri simili, ma per uso professionale e avanzato ancora non ci siamo.

  9. Avatar Black_Codec

    Siamo passati dall'essere bravi programmatori a essere bravi a usare l'IA. L'ho usata e se il prompt è fatto bene e molto dettagliato e soprattutto se la alleni bene è uno strumento meraviglioso, ma ne parlavo giusto ieri, il tempo che impieghi a descrivere un prompt perfetto per il tuo scopo è circa 2/3 del tempo che impoeghi per scrivere codice. Il resto del tempo lo perdi in code review, ottimizzazione etc… Ma la cosa più potente è la stesura di documentazione partendo dal codice, che nel mio caso impiega giorni con l'ia si passa a ore… Poi chiaro che devi saperla usare, devi saper revisionare il codice etc…
    Altro discorso l'analisi dei bug, io l'ho fatto per molti anni ed è un lavoro dispendioso spesso legato a conoscenze pregresse. Ultimamente con l'IA praticamente il lavoro lo fa lei e anche molto bene, ripeto molto dipende dall'allenamento che le fai fare.

  10. Avatar Alessandro Scarozza
    Alessandro Scarozza

    quasi un browser? in che senso ? ha un interprete di html/js/css ?

  11. Avatar mimmus
    mimmus

    parli di un settore particolare e delicato e hai sicuramente ragione.
    ma t'assicuro che in campo coding, classificazione di informazioni, analisi (anche avanzate, tipo quelle finanziarie), reportistica, testi, siamo a livelli "professionali e avanzati"

  12. Avatar far5893
    far5893

    Senso classico, quando i browser erano internet suite e gestivano (gopher,ftp,irc ecc ecc) lascia perdere il DOM e HTML5 qua siamo a consolle vedilo piu' come lynx!!

  13. Avatar far5893
    far5893

    Ti capisco, anche io odio i motori a scoppio e il mio ronzino mi porta sempre dove voglio e senza inquinare!!
    Firmato
    Il Maniscalco.

  14. Avatar Alessandro Scarozza
    Alessandro Scarozza

    anche lynx legge l’html.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *