AppInspector, tool di Microsoft per analisi di sicurezza del codice, è stato reso OpenSource!

1

Buone notizie per gli sviluppatori. Microsoft ha infatti reso open-source AppInspector, un tool per le analisi di sicurezza del codice software. Lo racconta ZDNet in questo post.

Attraverso la pagina GitHub del progetto sono disponibili tutte le informazioni su come installare ed utilizzare il programma, il cui principio di funzionamento è basato sull’analisi statica del codice. Confrontando i pattern rilevati nel codice con un set di regole pre-codificate, AppInspector identifica ed isola all’interno di un report quelli che sono gli aspetti critici del codice, divisi per importanza.

Provare per credere: una volta configurati i repository Microsoft (in questo caso il sistema è Ubuntu 19.10) va installato il pacchetto dotnet-sdk-3.1 che fornirà l’eseguibile dotnet (leggere la nota importante):

rasca@catastrofe [~]> wget -q https://packages.microsoft.com/config/ubuntu/19.10/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
rasca@catastrofe [~]> sudo dpkg -i packages-microsoft-prod.deb
rasca@catastrofe [~]> sudo apt-get update
rasca@catastrofe [~]> sudo apt-get install dotnet-sdk-3.1
...
...
This software may collect information about you and your use of the software, and send that to Microsoft.
Please visit http://aka.ms/dotnet-cli-eula for more information.
Welcome to .NET Core!
...
...

Scaricato e compilato ApplicationInspector…

rasca@catastrofe [~]> git clone https://github.com/microsoft/ApplicationInspector
rasca@catastrofe [~]> cd ApplicationInspector/
rasca@catastrofe [~/ApplicationInspector]> dotnet build
...
...
Build succeeded.
    0 Warning(s)
    0 Error(s)

Time Elapsed 00:00:38.83

…Sarà possibile effettuare le analisi in questo modo:

rasca@catastrofe [~/ApplicationInspector]> dotnet ./AppInspector/bin/Debug/netcoreapp3.0/AppInspector.dll analyze -s /path/alla/vostr/applicazione
Microsoft Application Inspector 1.0.24
Analyze command running
10% source files processedDecompressing may take longer for larger files
95% source files processedDecompressing files...
98% source files processedDecompressing files...
98% source files processedDecompressing files...
100% source files processed
Preparing report
The output.html file size is large and may render slowly.  Consider running using alternate output format options as needed.
Opening default browser to output.html report
Analyze command completed

A questo punto se si è settata la variabile di ambiente BROWSER (ad esempio mediante export BROWSER=firefox) il report di quanto eseguito verrà visualizzato nella schermata del browser indicato e registrato all’interno del file ./AppInspector/bin/Debug/netcoreapp3.0/output.html.

Chiaramente è possibile definire set di regole personalizzati, così come è possibile personalizzare i report generati. È tutto spiegato all’interno del Wiki, liberamente consultabile.

Nel video presente a questo link, Guy Acosta fornisce un’ampia panoramica delle funzionalità disponibili e delle motivazioni per cui uno strumento come questo non dovrebbe mai mancare quando si parla di DevOps.

Buon testing a tutti!

Nota importante: come riportato nell’output del comando di installazione è bene ricordare che ad essere open-source è il progetto AppInspector e non l’insieme di librerie dotnet necessarie a farlo funzionare. Pertanto, è necessario sottolineare come utilizzando dotnet si aderisca implicitamente alla licenza di utilizzo della libreria la quale, tra le altre cose prevede l’invio di dati statistici di utilizzo.

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.