Tout devrait bien se passer dans l'analyseur: à la fois fonctionnalité et interface ... Nous explorons la nouvelle interface Solar appScreener 3.1

image Comme le disait Henry Ford, tout peut être mieux fait que ce qui a été fait jusqu'à présent. Nous l'avons donc pensé lorsque nous avons commencé à travailler sur la version 3.1 de notre analyseur de sécurité des applications. Nous voulions vraiment faire de notre produit non seulement la fonctionnalité la plus cool: par exemple, implémenter la prise en charge du nombre maximum de langages de programmation. Mais aussi les plus ergonomiques, les plus confortables, les plus esthétiques… - enfin, pour ne pas vous arracher les yeux! Et donc nous nous sommes laissés emporter par notre idée que même le nom du produit avait changé. En général, ils ont tout donné en entier. Et ils ont décidé de partager les résultats de leurs efforts avec vous dans cette revue.


Donc, aujourd'hui, nous allons vous dire ce qui est nouveau et utile dans Solar appScreener 3.1 par rapport à la version précédente 2.10 en termes de design et d'ergonomie. Le côté fonctionnel du problème peut être trouvé dans le communiqué de presse. Au moment de la publication de cet article, l'équipe de développement de Solar appScreener avait déjà déployé une nouvelle version 3.2 . Mais toutes les modifications d'interface 3.1 sont restées valides.

En bref sur les changements


La première innovation est le nom du produit: jusqu'à la version 2.9 incluse, l'analyseur s'appelait Solar inCode, et à partir de 2.10, il est devenu Solar appScreener. Depuis la sortie de la version 2.10, le produit a changé à la fois en contenu et en externe.

Très brièvement sur les réalisations fonctionnelles. Solar appScreener est désormais le leader absolu parmi les outils d'analyse statique en termes de nombre de langues prises en charge (il y en a 26 en 3.1 et déjà 3.2 dans la version 3.2 récemment publiée). 3.1 ajout de la prise en charge de COBOL, TypeScript, VBScript, Apex. Nous avons implémenté l'intégration avec Active Directory, un filtre pour le module FLE (Fuzzy Logic Engine) est apparu, ce qui aidera à gérer plus librement les faux positifs. Intégration plus flexible avec Jira.

En ce qui concerne les modifications de conception , nous avons essayé de rendre l'interface plus élégante et plus pratique. Nous avons repensé la structure des pages, l'apparence du menu, des listes et des boutons. Sur chaque page, il y a une fonctionnalité qui rendra le travail de l'utilisateur avec l'outil rapide et agréable. Pendant la refonte, nous avons essayé de minimiser l'espace inutilisé, de réduire le nombre d'étapes et de clics nécessaires pour terminer les tâches et rendre la fonctionnalité aussi accessible que possible.

La conception


Des changements spectaculaires dans la conception sont déjà visibles au stade de l'autorisation. Fenêtres, champs, boutons minimalistes. Les éléments sont devenus plats, les polices plus lisibles. Nous avons conservé la palette bleu-blanc-gris de la marque. Le schéma de couleurs principal était le départ du dégradé bleu vers un blanc uni.

C'était: Page Projets


Maintenant: page Projets


Un objectif important de la refonte était d'éliminer l'espace vide, d'organiser les éléments plus compacts, mais pas de surcharger les pages. Les résultats sont visibles dans l'exemple de menu.
C'était: le menu latéral du projetDevenu: menu côté projet
image

Dans la nouvelle interface, les éléments du menu latéral sont accompagnés d'icônes claires. Pour économiser de l'espace, le menu peut être masqué. En général, l'interface est devenue plus vivante et moderne.

La navigation


Après autorisation, dans l'ancienne interface, l'utilisateur était redirigé vers la page Projets avec une liste des applications analysées. Pour démarrer une nouvelle analyse, vous deviez vous rendre sur la page Nouveau projet .

C'était: Page Projets


Le nouveau concept implique un minimum d'étapes pour commencer. Après autorisation, l'utilisateur accède à la page d'accueil . Ici, vous pouvez à la fois afficher les dernières analyses et en lancer une nouvelle.

Maintenant: page d'accueil


Début de l'analyse


En utilisant l'exemple du lancement d'une analyse, nous montrerons comment nous avons réussi à réduire le nombre de clics nécessaires pour accéder aux fonctions du système.

Dans l'ancienne interface, il était possible de télécharger des applications pour analyse de trois manières: via un lien vers Google Play ou l'App Store , depuis un ordinateur local ou via un lien vers le référentiel . Après avoir choisi la méthode de téléchargement, vous pouvez spécifier le nom du projet, télécharger un logo, sélectionner un fichier ou spécifier un lien.

C'était: choisir la méthode de téléchargement de l'application et commencer la numérisation



Dans la nouvelle interface, vous pouvez lancer la numérisation en deux clics: faites glisser le fichier d'application et cliquez sur le bouton Démarrer la numérisation .

Maintenant: téléchargement de l'application pour analyse depuis l'ordinateur local



Pour télécharger l'application depuis l'App Store, Google Play ou via le lien vers le référentiel Git, accédez à l'onglet Télécharger l'application par le lien et spécifiez l'URL requise.

Maintenant: téléchargez l'application pour analyse par référence



Afficher les résultats


Lorsque l'analyse démarre, un nouveau projet est créé dans le système. Il apparaît dans la liste de la page Projets. De plus, dans le cadre du projet créé, vous pouvez démarrer l'analyse des nouvelles versions de l'application. Ainsi, l'utilisateur pourra suivre les changements dans le nombre de vulnérabilités et les cotes de sécurité.

Je dois admettre que dans l'ancienne interface, il était assez difficile de naviguer dans les résultats de différents scans. Pour afficher les résultats détaillés des analyses précédentes, vous deviez aller sur la page du projet , sélectionner une analyse dans la liste, et seulement après cela, aller sur la page des résultats détaillés.

Était: page de résultats détaillée



Dans la nouvelle interface, toutes les informations sur la dernière analyse peuvent être trouvées sur la page Présentation. En utilisant le menu latéral, vous pouvez facilement basculer entre les résultats détaillés et d'autres sections du projet. Sur l'une des pages Présentation, Résultats détaillés, Comparaison des analyses , vous pouvez toujours accéder à l'une des analyses précédentes. Pour ce faire, sélectionnez la date d'analyse dans la liste dans le coin droit de la page.

Maintenant: Page de présentation



Maintenant, toutes les informations importantes sur l'analyse sélectionnée sont présentées sous forme de graphiques sur une seule page (auparavant, certains des graphiques se trouvaient sur la page du projet, et certains sur la page d'analyse):

  • Options de lancement de l'analyse. En cliquant sur l'icône d'information près de la liste des scans, l'utilisateur pourra voir les paramètres avec lesquels le scan sélectionné a été lancé. Il n'y avait pas une telle possibilité dans l'ancienne interface.
  • Statut de l'analyse.
  • Évaluation Désormais, non seulement l'évaluation sur une échelle de cinq points parle du niveau de sécurité de l'application, mais aussi de la couleur de l'évaluation.
  • Durée de l'analyse.
  • Le nombre de lignes de code.

De plus, de nouveaux graphes ont été ajoutés dans l'interface 3.1:
  • des statistiques sur les types de vulnérabilités (vous pouvez découvrir quelles sont les vulnérabilités les plus importantes),
  • statistiques de langue (vous pouvez voir le nombre de vulnérabilités dans chacune des langues d'application analysées).

Pour savoir quelles autres informations précieuses peuvent être extraites des résultats de l'analyse, lisez le spoiler "Résultats détaillés".

Résultats détaillés
1. Le filtre de vulnérabilité s'est considérablement étendu par rapport à l'ancienne interface.
C'était: un filtre de vulnérabilitéMaintenant: Filtre de vulnérabilité

Considérez les nouvelles fonctionnalités de filtre:

  • Recherche par nom de vulnérabilité . Entrez, par exemple, «XSS» dans le champ de saisie et obtenez une liste des vulnérabilités associées.
  • Recherche par répertoire et nom de fichier avec vulnérabilité. Pour afficher les vulnérabilités d'un fichier spécifique, entrez son nom dans la barre de recherche.
  • Filtre par rapport à l'analyse précédente. Si le projet comporte plusieurs scans, vous pouvez comparer le courant avec l'un des précédents. Vous ne pouvez voir que de nouvelles vulnérabilités ou uniquement des vulnérabilités existantes. Cela sera utile si vous exécutez l'analyse régulièrement - vous pouvez désormais traiter les nouveaux résultats plus rapidement. L'utilisateur peut également découvrir quelles vulnérabilités ont été corrigées et lesquelles sont apparues depuis la première analyse.
  • Filtrer par langue . Initialement, toutes les langues dans lesquelles des vulnérabilités ont été découvertes ont été sélectionnées dans le filtre. Décochez les cases pour afficher les vulnérabilités dans les langues qui vous intéressent.
  • Moteur de logique floue (FLE). Aide à hiérarchiser les correctifs de vulnérabilité. Sélectionnez l'un des modes pour afficher les vulnérabilités:

  1. seuls les vrais - avec une forte probabilité que les événements soient une véritable vulnérabilité;
  2. seules les vulnérabilités importantes doivent être traitées en premier;
  3. personnalisé - il est possible d'ajuster la sensibilité du moteur de logique floue en déplaçant le curseur vers différentes positions. La position la plus à gauche indique les occurrences avec la plus forte probabilité d'une réponse correcte, la position la plus à droite affiche les vulnérabilités pour n'importe quelle probabilité;
  4. dynamique - vous pouvez définir le centile (valeur de 1 à 100), selon lequel une certaine partie / pourcentage des vulnérabilités les plus importantes seront affichées.



2. Recommandations pour la configuration des outils de sécurité de l'information. Dans la version 2.10, les recommandations pour la mise en place du SPI se trouvaient sur une page séparée. Dans la nouvelle interface, des recommandations sont disponibles sur la page Résultats détaillés de l'onglet Paramètres SIS .

Désormais, pour chaque vulnérabilité, vous pouvez immédiatement voir s'il est possible de configurer Imperva SecureSphere, ModSecurity ou F5 pour fermer le défaut.



Pour accélérer le traitement des résultats, à l'aide du filtre, vous pouvez sélectionner uniquement les vulnérabilités pour lesquelles il existe des recommandations pour la configuration du système d'information de sécurité.

Après avoir configuré la protection, supprimez les vulnérabilités «fermées» et elles n'apparaîtront pas dans les analyses suivantes. Comme dans l'ancienne interface, vous pouvez supprimer une vulnérabilité spécifique dans l'onglet Gestion des vulnérabilités. Nous avons remplacé le bouton de texte par une icône soignée, changé l'emplacement des éléments.



Nous vous recommandons fortement de laisser un commentaire avec la raison de la suppression de la vulnérabilité.

3. Lien vers l'entrée . Une autre amélioration dans la navigation de numérisation. Dans les versions précédentes de Solar appScreener, il n'était pas possible de fournir un lien vers une description détaillée d'une vulnérabilité spécifique. Pour cette raison, j'ai dû faire référence à la vulnérabilité par nom et chemin d'accès au fichier pour trouver l'élément souhaité dans la liste. Nous avons reçu à plusieurs reprises des commentaires avec des demandes de simplification de la procédure de liaison à une vulnérabilité - maintenant cela peut être fait en spécifiant son URL.

4. Numériser
Dans l'ancienne interface, il n'était pas possible de comparer les analyses de projet à tous égards. La page du projet ne contenait qu'une liste d'analyses indiquant le classement (niveau de sécurité). Dans la nouvelle interface, la section correspondante affiche toutes les analyses du projet sous forme de tableau.



Cette page vous permet de visualiser et de comparer les principaux indicateurs de chaque scan. Lorsque vous cliquez sur l'icône près de la date de l'analyse, des informations sur les paramètres de démarrage s'affichent, ce qui explique les différences dans les résultats de l'analyse. En particulier, il est possible de déterminer sous quels paramètres l'analyse s'est terminée avec succès et sous quels - une erreur s'est produite.

Pour travailler avec un grand nombre d'analyses, utilisez le tri par date, état, durée d'analyse, évaluation. Sélectionnez deux analyses pour les comparer par vulnérabilité. Et pour que les analyses inutiles ne s'affichent pas, par exemple, avec le statut Erreur , vous pouvez les placer dans l'archive.

Les analyses archivées ne seront pas affichées sur les graphiques de la page Présentation ; pour eux, vous ne pouvez pas afficher les résultats détaillés ou exporter un rapport. Si nécessaire, les analyses peuvent être décompressées. Dans l'ancienne interface, seule leur suppression définitive était disponible.

Ici, vous pouvez sélectionner plusieurs analyses pour exporter le rapport sur les résultats.



Dans la nouvelle interface, il est devenu plus pratique de sélectionner les vulnérabilités du rapport en fonction de leur état (nouvelles, conservées, corrigées, supprimées). Le téléchargement de vulnérabilités supprimées / supprimées vous permet d'obtenir un rapport sur le travail effectué. Et en n'incluant que de nouvelles vulnérabilités dans le rapport, vous pouvez créer une liste de tâches urgentes. Auparavant, il était possible d'inclure dans le rapport toutes les vulnérabilités, ou seulement de nouvelles. Il est important que vous puissiez désormais envoyer le rapport par e-mail en un seul clic.

Les projets


La page Projets n'a guère changé de contenu, mais de nouvelles fonctions de filtrage et de recherche y sont apparues.



Maintenant, pour afficher uniquement les projets dont vous avez besoin, configurez le filtre ou la recherche.

  • Statut de l'analyse. Sélectionnez des projets avec uniquement les dernières analyses terminées ou, à l'inverse, les analyses démarrées.
  • Langue. Sélectionnez au moins une ou plusieurs langues contenues dans l'application analysée.
  • Évaluation Indiquez la plage dans laquelle la note d'application doit être (de 0 à 5). Un indicateur de couleur vous aidera à sélectionner les projets qui correspondent au niveau de vulnérabilité demandé.
  • Le nombre de vulnérabilités. Indiquez la gamme de vulnérabilités de différents niveaux de gravité. Par exemple, des projets avec uniquement des vulnérabilités critiques.
  • Filtrer par date . Sélectionnez des analyses pour un jour ou un intervalle de jours spécifique, pour la dernière semaine ou le mois dernier. Par exemple, vous pouvez afficher les analyses du mois en cours.
  • La recherche de projets peut être effectuée non seulement par nom et auteur, mais également par l'ID d'un projet spécifique (affiché sous le nom du projet et sur la page Présentation).
ID de projet sur la page ProjetsID de projet dans le menu latéral du projet

Pour ceux qui sont particulièrement intéressés par le spoiler «Analytics», l'exemple de cette section montre les changements dans la structure des pages de la nouvelle interface.

Analytique
Sur la page Analytics, il est devenu possible de suivre les statistiques sur les projets: le nombre de lignes de code, le nombre de vulnérabilités, la notation. Dans l'ancienne interface, une partie importante de la page était occupée par la barre latérale, les graphiques étaient peu pratiques et petits. Les noms des graphiques et les modes (affichant la valeur moyenne / totale) ont également consommé beaucoup d'espace. Pour reconstruire un graphique, vous deviez cliquer sur le bouton Reconstruire le graphique.

C'était: la page Analytics



Dans la nouvelle version, nous avons augmenté la taille des graphiques, réduit la quantité de texte, en le remplaçant par des boutons visuels. Pour libérer de l'espace sur le côté gauche de la page, le menu a été déplacé vers le haut sous forme d'onglets. Pour la commodité de visualiser les graphiques, nous avons ajouté leurs miniatures, et pour visualiser le tableau des graphiques, vous pouvez le masquer.

Maintenant: page Analytics



Nous avons pris le menu pour visualiser la liste des groupes existants et en créer de nouveaux en haut de la page, ajout d'icônes. Un nouveau groupe peut être créé en sélectionnant des projets individuels ou en fonction de groupes existants.

Nous avons remplacé les cases à cocher par des listes déroulantes avec plusieurs sélections et recherches. L'utilisateur sera désormais en mesure de trouver les groupes et projets nécessaires par nom, et non de parcourir la liste entière.



Et un de plus, cette fois la dernière, spoiler est consacrée au développement de l'intégration avec Jira . Dans les versions précédentes de notre analyseur, il était déjà possible de créer des tâches de correction de vulnérabilité dans Jira. Dans la version 3.1, nous avons ajouté de nouvelles fonctionnalités. Lesquels, vous pouvez découvrir

Ici
Dans la version 3.1, nous avons ajouté de nouveaux champs «tâche parent» et «composants». Vous pouvez également spécifier un lien vers le référentiel source afin qu'un lien vers le code avec vulnérabilité sur Gitlab soit généré dans la description de la tâche.

Maintenant: créez une tâche dans Jira



Maintenant, lors de l'affichage de la tâche créée dans l'interface Jira, l'utilisateur verra un code source formaté avec vulnérabilité, listes, liens en surbrillance. En un mot, la lecture de la description de la tâche est devenue plus pratique.



Administration


Nous avons complètement repensé la section Administration. Modification de la structure de la section, implémentation de la recherche et du tri des utilisateurs et des groupes d'utilisateurs, simplification de leur création et de leur édition. Dans la liste des utilisateurs, l'ordre des colonnes a été modifié, les colonnes supplémentaires ont été supprimées (le téléphone et le site Web peuvent être consultés sur la page d'édition de l'utilisateur).

C'était: une liste d'utilisateurs



Maintenant: liste d'utilisateurs



Dans l'ancienne version de l'interface, la procédure de création d'un compte d'utilisateur comprenait trois étapes non triviales sur différentes pages: 1. remplir un tableau avec toutes les informations d'identification de l'utilisateur - identifiant, mot de passe, nom, e-mail, téléphone, site Web, etc.; 2. choisir parmi une longue liste de rôles adaptés à l'utilisateur; 3. Définition des droits d'utilisateur pour accéder à un projet particulier. Vous pouvez désormais remplir les données utilisateur, accorder des droits et donner accès aux projets existants plus rapidement et sur une seule page.

Lors de la création d'un compte, il est devenu possible d'envoyer à un utilisateur un e-mail avec un nom d'utilisateur et un mot de passe. Vous pouvez donner à un utilisateur existant un accès au projet sur la page d'édition de l'utilisateur ou sur la page des paramètres du projet. Si vous devez configurer les droits de plusieurs utilisateurs, nous vous recommandons de créer un groupe. Dans ce cas, il sera possible de donner accès à tous les utilisateurs du groupe en une seule étape.

Révision importante: la nouvelle version implémente l'intégration avec LDAP. L'administrateur peut définir les paramètres de connexion dans les paramètres système de l'onglet LDAP.



Pour afficher les utilisateurs et les groupes d'utilisateurs de la connexion ajoutée, dans les sections Administration correspondantes, vous devez sélectionner la connexion LDAP souhaitée.

Compte personnel


Si auparavant, le bouton pour accéder à Mon compte était situé dans le menu principal, dans la nouvelle interface, nous l'avons placé dans le coin supérieur droit sous forme d'icône.

C'était: le bouton de transition dans la cabine personnelle t



Maintenant: le bouton pour accéder à Mon compte



Sur la page, il y avait des onglets séparés pour différents paramètres. Il est désormais plus facile de naviguer dans votre compte personnel.



Résumé


L'interface de l'analyseur est devenue plus pratique, compréhensible et plus élégante. Le démarrage d'une nouvelle analyse prend moins de temps. La navigation entre les analyses dans un projet est plus pratique. En 3.1, des filtres sont apparus sur les pages avec des projets et des résultats détaillés, à l'aide desquels les utilisateurs pourront traiter les résultats d'analyse plus rapidement et éliminer les vulnérabilités importantes dans le temps.

Et, conscient de l'endroit où nous avons commencé cet examen, nous continuons à collecter les avis des utilisateurs sur la nouvelle interface et le produit dans son ensemble. , , .

, Solar appScreener

Source: https://habr.com/ru/post/fr459648/


All Articles