Personnalisation du bac à sable: pourquoi vous en avez besoin maintenant



La question de la personnalisation des images de bac à sable est pertinente depuis leur création. Les premières versions de ces programmes étaient des solutions internes des sociétés de sécurité de l'information, mais même alors, il y avait un besoin de réglage minutieux des machines isolées. Et ce n'était pas seulement l'installation d'un logiciel auxiliaire pour surveiller l'état du système.

Il y a encore 10 ans, la logique de collecte et de traitement des caractéristiques environnementales était intégrée dans des échantillons malveillants: nom d'utilisateur et ordinateur, domaine domestique ou d'entreprise, droits d'administrateur, disposition de la langue, nombre de cœurs de processeur, version du système d'exploitation, présence de logiciel antivirus, signes de virtualisation et même présence de mises à jour dans système . À ce jour, le nombre de paramètres et de méthodes pour les obtenir n'a fait qu'augmenter.

Sandbox Bypass Malware Techniques


Au début, l'approche était assez simple: si le malware vérifie l'utilisateur avec le test de nom, alors nous l'appellerons John; si nous utilisons la clé de registre SYSTEM \ CurrentControlSet \ Enum \ SCSI \ Disk & Ven_VMware_ & Prod_VMware_Virtual_S pour savoir si nous sommes dans un environnement virtuel, alors (si possible) nous remplacerons la clé ou les résultats retournés en interceptant l'appel. À la suite de nombreuses études, une certaine base de connaissances sur les méthodes de contournement de détection a été recrutée, qui a ensuite été utilisée pour configurer l'environnement. Des années ont passé, les auteurs de virus ( et pas seulement ) ont commencé à utiliser de plus en plus ces connaissances dans leur travail, ce qui a finalement conduit aux éléments suivants.

La question "Est-ce un environnement de recherche?" a été remplacé par "L'environnement est-il intéressant?" Et l'intérêt n'est pas de trouver des traces de certains clients FTP pour des vols de données ultérieurs. Maintenant, si c'est la machine d' un employé comptable qui utilise un logiciel spécifique, alors autre chose. Il existe d'autres approches: infecter l'utilisateur avec un chargeur de démarrage léger, qui collectera toutes les informations nécessaires sur le système, les enverra au serveur de gestion et ... ne recevra pas la charge utile en réponse. Une logique de serveur inconnue a décidé que cette victime n'était pas intéressante.

Nous voyons donc que les bacs à sable configurés par défaut ne sont pas une solution commerciale efficace. Les attaquants s'appuient de plus en plus non pas sur la légitime défense contre la détection, mais sur le rétrécissement de la plage de recherche de cibles intéressantes pour le développement ultérieur de l'attaque.

Comment les combattons-nous?


En termes simples, nous vous proposons de faire une image unique d'un environnement isolé. L'objectif est de recréer un environnement aussi proche que possible du poste de travail d'un employé, avec un accès attractif pour les attaquants: un service financier, un serveur de build pour une intégration continue en cours de développement, un serveur web, une machine d'administrateur de domaine, et enfin un poste de PDG.

Bien sûr, pour une telle tâche, vous pouvez libérer un certain nombre de blancs avec le logiciel approprié «à bord», mais vous devez ensuite les démarrer avec des données spécifiques qui correspondent à une organisation particulière: le nom de domaine, les ressources ou applications utilisées, les noms et le contenu des documents de travail - plus il y a de nuances, mieux c'est . Parfois, l'environnement doit être affiné, jusqu'aux versions et correctifs de mise à jour du système. Dans le cas le plus simple, l'image peut être rendue simplement "pleine de trous". Cependant, si votre parc d'infrastructure informatique n'est pas plus ancien que certaines versions, cela peut également être pris en compte et éliminé de nombreux vecteurs de pénétration non pertinents en utilisant un certain nombre de vulnérabilités.

Par conséquent, nous obtenons une image inconnue des auteurs de virus, qui les intéresse vraiment et augmente ainsi considérablement la probabilité de détecter une attaque ciblée.

Pourquoi dois-je émuler le travail d'un ordinateur "en direct"?


L'émulation des actions de l'utilisateur est un incontournable sans lequel le bac à sable perd son efficacité. Dans certains cas, l'absence d'actions entraînera la détection de la présence dans le bac à sable: par exemple, si le curseur de la souris ne change pas de position pendant une longue période, de nouvelles fenêtres n'apparaissent pas, les applications ne sont pas terminées ou trop peu sont lancées, si de nouveaux fichiers n'apparaissent pas dans des répertoires temporaires, non activité réseau. Dans d'autres situations, cela affectera le fonctionnement du logiciel malveillant lui-même: par exemple, pour l'exécuter, le consentement de l'utilisateur à inclure des macros dans le document de bureau est requis, ou le cheval de Troie affichera une boîte de dialogue intermédiaire dans laquelle il sera nécessaire d'accepter quelque chose (ou quelque chose refuser) de continuer son travail.

Parfois, des actions insignifiantes sont simplement nécessaires: l'utilisateur doit ouvrir un document et écrire quelque chose ou copier le mot de passe dans le presse-papiers pour une saisie ultérieure - c'est précisément à de tels moments qu'un cheval de Troie espion peut fonctionner, qui interceptera les données importantes et les enverra au serveur de son auteur.

Comment cela se fait-il avec nous?


Notre solution est progressivement renouvelée avec de nouvelles actions qui imitent le travail d'un utilisateur vivant. Bien sûr, les séquences prédéfinies d'événements planifiés de toute complexité ne peuvent jamais être comparées à la variété d'utilisation réelle. Nous continuons à rechercher et à améliorer ce côté du produit, en augmentant son efficacité.

En plus des fonctions décrites ci-dessus, il convient de noter une caractéristique fondamentale: notre bac à sable appartient à la classe des bacs sans agent. Dans la plupart des solutions, il existe un agent auxiliaire à l'intérieur de la machine virtuelle, qui est responsable de la gestion de l'état du système, de la réception et de la transmission d'événements et d'artefacts intéressants au serveur hôte. Malgré les avantages de la surveillance et le principe clair d'interaction entre l'hôte et les machines invitées, cette solution présente un inconvénient important: la nécessité de masquer et de protéger les objets associés à l'agent contre les logiciels malveillants. Dans le cas où il n'y a pas de fournisseur d'événements, la question se pose: comment, alors, obtenir des informations sur ce qui se passe à l'intérieur de la machine virtuelle?

Pour cela, nous utilisons la technologie Extended Page Table(EPT) Intel Corporation. Il s'agit d'une page de mémoire intermédiaire qui se situe entre la mémoire physique invitée et la mémoire physique hôte. En bref, cela vous permet de faire ce qui suit:

  • examiner l'affichage des pages de mémoire de l'ordinateur invité;
  • mettre en évidence des sections intéressantes (par exemple, contenant des adresses ou un code de fonctions nucléaires);
  • marquer les pages sélectionnées de sorte que les droits d'accès aux pages mémoire dans l'EPT ne coïncident pas avec les droits d'accès aux pages de la machine invitée;
  • pour capter l'appel aux sections de mémoire balisées (à ce moment, une erreur d'accès (#PF) se produira, par conséquent, la machine invitée sera suspendue);
  • analyser l'état, extraire les informations nécessaires sur l'événement;
  • remodeler la page mémoire dans l'état correct;
  • restaurez la machine invitée.

La surveillance de tout ce qui se passe se fait en dehors de la machine isolée. Le malware qui se trouve à l'intérieur ne peut pas détecter le fait de l'observation.

L'exécution d'un échantillon dans le bac à sable et l'analyse de son comportement ne sont que l'un des composants d'un produit complexe. Après le démarrage, la mémoire de processus est analysée pour détecter les codes malveillants, l'activité du réseau est enregistrée, qui est ensuite analysée à l'aide de plus de 5000 règles de détection. De plus, il est possible de décrypter les interactions sécurisées.

Tous les indicateurs de compromis (IOC), qui ont pu être identifiés au cours de l'étude, sont vérifiés par des listes de réputation. Avant de subir une analyse dynamique, l'échantillon est envoyé pour un traitement statique: il est préfiltré sur plusieurs antivirus et analysé par notre propre moteur avec les règles de détection des experts du centre de sécurité expert (PT Expert Security Center). Nous utilisons un examen complet, y compris pour identifier les anomalies dans les méta-informations et les artefacts intégrés de l'échantillon.

Quelles tâches PT Sandbox fait-elle le mieux et pourquoi?


PT Sandbox combine les connaissances et l'expérience de plusieurs équipes et produits pour contrer les attaques ciblées. Malgré le fait que le produit puisse être utilisé en mode de lutte contre les menaces (prévention), il reste avant tout un moyen de surveillance (détection) de la sécurité des systèmes informatiques. La principale différence avec les solutions classiques de protection des terminaux est que la tâche de PT Sandbox est de prêter attention aux anomalies et d'enregistrer une menace inconnue auparavant.

Publié par Alexey Vishnyakov, spécialiste principal, Threat Technologies Research Group, Positive Technologies

All Articles