Microsoft Application Inspector es una herramienta de caracterización del código fuente de software que ayuda a identificar las características de codificación de los componentes de software de primer o tercero basados en llamadas de biblioteca/API conocidas y es útil en casos de uso de seguridad y no seguridad. Utiliza cientos de reglas y patrones de regex para superficie las características interesantes del código fuente para ayudar a determinar qué es el software o qué hace a partir de las operaciones de archivo que utiliza, cifrado, operaciones de shell, API en la nube, marcas y más y ha recibido atención de la industria como una nueva y valiosa contribución a OSS en ZDNET, SecurityWeek, Csoonline, Linux.com/News, HelpNetSec, Twitter, y más en OSS en OSS en OSS en Micor.
El inspector de aplicaciones es diferente de las herramientas tradicionales de análisis estático en el sentido de que no intenta identificar patrones "buenos" o "malos"; Simplemente informa lo que encuentra en un conjunto de más de 400 patrones de reglas para la detección de características, incluidas las características que afectan la seguridad, como el uso de criptografía y más. Esto puede ser extremadamente útil para reducir el tiempo necesario para determinar qué código abierto u otros componentes al examinar la fuente directamente en lugar de confiar en documentación o recomendaciones limitadas.
La herramienta admite escanear varios lenguajes de programación, incluidos C, C ++, C#, Java, JavaScript, HTML, Python, Objective-C, GO, Ruby, PowerShell y más, y puede escanear proyectos con archivos de lenguaje mixto. Admite la generación de resultados en formatos de salida HTML, JSON y texto con el valor predeterminado un informe HTML similar al que se muestra aquí.

Asegúrese de ver nuestra página completa de Wiki de Project https://github.com/microsoft/applicationinspector/wiki para obtener información adicional y ayuda.
dotnet tool install --global Microsoft.CST.ApplicationInspector.CLIVer más en la wiki
appinspector analyze -s path/to/src .applicationinspector.cli.exe analyze -s path/to/srcEl inspector de aplicaciones de Microsoft lo ayuda a asegurar sus aplicaciones desde el inicio hasta la implementación.
Opciones de diseño : le permite elegir qué componentes satisfacen sus necesidades con una huella más pequeña de características innecesarias o de incógnitas para mantener su superficie de ataque de aplicación más pequeña y ayudar a verificar las esperadas, es decir, solo cripto estándar de la industria.
Identificación de Deltas de características : detecta cambios entre las versiones de componentes que pueden ser críticos para detectar la inyección de puertas traseras.
Automatización de verificaciones de cumplimiento de seguridad : use para identificar componentes con características que requieren un escrutinio de seguridad adicional, aprobación o cumplimiento de SDL como parte de su tubería de compilación o crear un repositorio de metadatos con respecto a todas sus aplicaciones empresariales.
Tenemos una sólida base inicial predeterminada de reglas para la detección de características. Pero hay muchos patrones de identificación de características que aún no se han definido y lo invitamos a enviar ideas sobre lo que desea ver o hacer un poco de roto para definir algunos. Esta es una oportunidad para impactar literalmente el ecosistema de código abierto que ayuda a proporcionar una herramienta que todos pueden usar. Consulte la sección Reglas del wiki para más.
El inspector de aplicaciones es en general el estado de lanzamiento de la audiencia. Sus comentarios son importantes para nosotros. Si está interesado en contribuir, revise el contribuyente.
El inspector de aplicaciones está disponible como una herramienta de línea de comandos o paquete Nuget y es compatible con Windows, Linux o MacOS.
Los binarios específicos de la plataforma de la CLI ApplicationSpector están disponibles en nuestra página de versiones de GitHub.
La biblioteca C# está disponible en Nuget como Microsoft.cst.applicationinspector.commands.
La herramienta Global .NET está disponible en Nuget como Microsoft.cst.applicationinspector.cli.
Si usa la versión de .NET Core, deberá tener instalado .NET 6.0 o posterior. Vea los archivos Justrunit.md o Build.md para obtener más información.
> appinspector --help
ApplicationInspector.CLI 1.8.4-beta+976ee3cdd1
c Microsoft Corporation. All rights reserved.
analyze Inspect source directory/file/compressed file (.tgz|zip)
against defined characteristics
tagdiff Compares unique tag values between two source paths
exporttags Export the list of tags associated with the specified rules.
Does not scan source code.
verifyrules Verify custom rules syntax is valid
packrules Combine multiple rule files into one file for ease in
distribution
help Display more information on a specific command.
version Display version information.
Para obtener ayuda para un comando específico, ejecute appinspector <command> --help .
El comando de análisis es el caballo de batalla del inspector de aplicaciones.
Esto producirá una salida.html del análisis en el directorio actual utilizando argumentos y reglas predeterminados.
appinspector analyze -s path/to/files
appinspector analyze -s path/to/files -f sarif -o output.sarif
Esto creará una salida JSON llamada Data.json del análisis en el directorio actual, excluyendo todos los archivos en las carpetas test y .git utilizando los patrones de globas proporcionadas.
appinspector analyze -s path/to/files -o data.json -f json -g **/tests/**,**/.git/**
Para obtener ayuda adicional en el uso de la interfaz de la consola, consulte el uso de la CLI.
Para obtener ayuda para usar el paquete Nuget, consulte Soporte de Nuget
Ver build.md