Sploit factory : apprendre à écrire des exploits pour le Framework Metasploit. Exploits Base de données des exploits. Quelques secondes pour la théorie

D'où viennent les sploits ? Vous êtes-vous déjà demandé comment les sombres nouvelles de
bagtraka se transforme en un passe-partout vraiment fonctionnel ? Comment deux douzaines peuvent-elles
des lignes de code parviennent-elles à obtenir un shell sur un serveur distant ? Aujourd'hui, nous visiterons
sploit factory et voir en détail comment elle est fabriquée
produit de qualité.

Lancez MSF eXploit Builder, allez dans le menu "Éditeur" et sélectionnez "Nouveau".
Une fenêtre apparaît avec plusieurs onglets (Informations, Badchars, Analyse,
Shellcode, Conception). Allez dans l'onglet "Informations" et voyez beaucoup d'informations intéressantes
des champs. Comme vous vous en souvenez, cette section spécifie les cibles (OS + SP) et le type/protocole
exploiter (par exemple, distant/tcp). De plus, le programme nous offre
la possibilité de tester et de déboguer l'exploit résultant, afin que vous puissiez immédiatement
sélectionnez le fichier exécutable et précisez les paramètres de son lancement (port, adresse IP).

Alors, sélectionnez notre tftpd.exe, après quoi l'utilitaire proposera les actions suivantes
à choisir : exécuter l'application, l'exécuter sous le débogueur ou ne pas l'exécuter
en général, exécutez simplement l'application. Notez que sur le côté droit
une liste des DDL chargés par l'application s'affichera.

Commençons maintenant à examiner le code du sploit - heureusement pour nous, il est extrêmement compréhensible.

Exploiter, exploiter (exploiter, exploiter) - un programme, un fragment de code de programme ou une séquence de certaines commandes qui exploitent les vulnérabilités d'un logiciel et sont utilisés pour attaquer un système informatique. Le but de l'attaque peut être de prendre le contrôle du système ou de perturber ses fonctionnalités.

Les exploits sont divisés en distants et locaux

  • Un exploit à distance fonctionne via un réseau, exploitant une vulnérabilité de sécurité sans aucun accès préalable au système vulnérable.
  • Local, au contraire, est lancé du côté vulnérable et nécessite un accès préalable au système. Il est principalement utilisé pour obtenir les droits de superutilisateur.

Une attaque peut cibler divers composants du système, qu’il s’agisse d’applications serveur ou client, ou de modules du système d’exploitation. Pour exploiter une vulnérabilité côté serveur, l'exploit doit uniquement générer et envoyer une requête au serveur contenant du code malveillant. La situation est plus compliquée lors de l'exploitation d'une vulnérabilité client. Cela nécessite de convaincre l'utilisateur de se connecter au faux serveur. Exemple : si le client est un navigateur, cette connexion suivra directement le lien lui-même.

Types d'exploits

  • Exploits du système d'exploitation
  • Exploits pour les logiciels d'application (lecteurs multimédias, programmes bureautiques)
  • Exploits pour les navigateurs
  • Exploits pour les produits Web (WordPress, phpBB, VBulletin)
  • Exploits du site Web
  • Autres exploits.

Informations pour ceux qui ne comprennent pas très bien ce qu'est un exploit.
Qu'est-ce qu'un exploit ?
La définition « officielle » peut être lue dans les encyclopédies informatiques. J'aime ceci : "En fonction de l'objectif, un programme, un morceau de code ou un script qui vous permet de profiter de l'exploitation d'une vulnérabilité existante dans un logiciel pour tout ce qui est contrôlé par programme." Dans un sens, un marteau contre un smartphone est aussi un exploit technique, agissant dans un objectif primitif : détruire l'appareil. Considérons l'essence, le principe d'application et le rôle de l'exploit dans le piratage du système. La question est de savoir où trouver l'exploit, s'il est judicieux de le télécharger ou de l'acheter et pourquoi un exploit confirmé peut ne pas fonctionner.

  • Que sont les exploits
  • Quels sont les exploits
  • Un peu sur les vulnérabilités
  • Le rôle d’un exploit dans une attaque sur un système
  • Un exemple d'exploit réussi
  • Exploiter les bases de données
  • Problèmes avec l'exploit
D'où vient l'exploit ? Amateurs de béton, sautez la partie.
L’explication la plus simple est la « relation » entre une personne et un virus. Biologique. Dans notre corps, tout est pensé dans les moindres détails, cependant, face au microcode de l'extérieur, il échoue pendant un certain temps, voire pour toujours. La vulnérabilité est facile défaillance du mécanisme(y compris le logiciel) répondre adéquatement à certaines actions de l'extérieur, tout en conservant les caractéristiques et les fonctionnalités qui lui sont inhérentes (mécanisme). ET exploiter appelé un exploit uniquement s'il vous permet d'obtenir vulnérabilités avantage. Ne le prenez pas comme une fiction, il est important de le comprendre tout de suite.
Un peu sur les vulnérabilités.
Les modules Metasploit contiennent des exploits et visent les vulnérabilités. Il est d’usage que les pentesters formalisent les méthodes par lesquelles ces vulnérabilités sont regroupées. Ainsi, un dictionnaire en constante expansion a été créé. Vulnérabilités et expositions courantes (CVE) - Vulnérabilités et détections courantes. Alors souviens-toi: vous rencontrerez plus d'une fois l'abréviation CVE . La vue commune est écrite au format suivant :
CVE – ISSUE_YEAR – ASSIGNED_ID
Par exemple
CVE2008-4250
Si vous souhaitez consulter la liste complète de la newsletter dès maintenant, rendez-vous ici :

En fait, il existe bien plus de vulnérabilités pouvant révéler les secrets de l'hébergeur que la liste officielle de ce bulletin. Oui, pour entrer dans ce dictionnaire, il faut « mériter » une place aux vulnérabilités. Et bien sûr, il n’existe aucune organisation spécifique qui s’occupe officiellement de cela. Tout dépend de l’objectif du futur exploit : il n’y a pas de vulnérabilité sans exploit. Mais dans tous les cas, presque tous les chemins mènent à la base de données Exploit et à la ressource ci-dessus.
Les problèmes de sécurité pour les produits Microsoft constituent une ligne distincte. Ils sont générés dans une liste distincte appelée Microsoft Security Bulletin. Leurs vulnérabilités sont généralement regroupées de cette manière :
MSYY-XXX
où YY est l’année de la découverte, XXX est l’identifiant attribué.

Revenons aux hackers. Quels types d'exploits existe-t-il ?
Classiquement, ils peuvent tous être dispersés en trois tas :
  • exploit de service
  • exploit client
  • exploit de privilège
Exploit du service attaque un service qui, par exemple, écoute les connexions réseau. Le service collecte les paquets réseau et attend que l'utilisateur initie une connexion au réseau (lance un navigateur). Et un pirate informatique peut le faire en créant ses propres packages pour ce service et en provoquant un lancement à part entière du service, qui (à l'insu de l'utilisateur) entrera dans le réseau.
Exploit client - il s'agit également d'un exploit client - il se concentre sur l'attaque d'une application client qui reçoit du contenu d'un ordinateur serveur. Cela repose sur le fait que la victime effectuera certaines actions et que le programme client doit travailler activement avec ce contenu. En termes simples, mon travail de hacker consiste à vous faire cliquer sur un lien, ouvrir un document, accéder à un site malveillant.
Exploit de privilège . Sa tâche est de parvenir à renforcer les droits déjà existants dans le système. Par exemple, obtenez les droits d'administrateur à partir d'un compte invité. Et là, ce n'est pas loin du SYSTÈME... Par exemple, dans Windows XP, il existe une telle vulnérabilité lorsque vous pouvez utiliser de simples mouvements pour . Et la vulnérabilité était superficielle. Ne soyez pas paresseux et jetez un œil à l'article - les explications deviendront redondantes.
Le processus d'exploitation et son rôle dans l'attaque d'un ordinateur.

Peu à peu, nous nous rapprochons du principe de fonctionnement du compromis système. Chacune de ces étapes est un processus très complexe nécessitant un manuel en plusieurs volumes. Mais schématiquement, cela peut être représenté ainsi :

  • un système potentiellement vulnérable est analysé à la recherche de ports ouverts et de services en cours d'exécution
  • met en évidence les points qui peuvent être touchés
  • un exploit d'une vulnérabilité connue est envoyé à un ordinateur distant à tel ou ces moments
  • une charge utile est attachée à l'exploit (elle vous permettra de contrôler le système de la victime)
  • si l'exploit a fonctionné (c'est celui qui est lancé en premier) et que le système de la victime a répondu, le payload est lancé ; suite à l'exécution du code de charge utile, le pirate informatique accède à l'ordinateur de la victime
À quoi cela ressemble-t-il en personne ou comment travailler avec un exploit ?
Par exemple, nous utilisons le système d'exploitation Kali Linux comme système d'exploitation hôte et Windows XP (l'exploit est ancien, à partir de Windows XP SP2, il le fait déjà moins volontiers) comme système d'exploitation invité dans VirtualBox. Bien sûr, nous connaissons les caractéristiques de la machine invitée sur le réseau (virtuelle dans notre cas), mais laissons le scanner nmap fera son travail. Faisons un « certificat officiel » sur la victime :
  • nmap -v -n 192.168.0.162
où 192.168.0.162 est l'adresse IP de la victime. Si vous êtes familier, alors vous comprenez que les drapeaux :
  • -v vous permet d'obtenir un rapport détaillé sur l'adresse
  • -n désactive les résolutions DNS inversées



Nous voyons quels ports sont ouverts avec des services qui les traversent.
Analysons le système pour obtenir des informations plus détaillées concernant le système d'exploitation et la version du service. La commande prendra la forme (la disposition des drapeaux selon la commande est arbitraire) :

nmap -T4 -A -v 192.168.0.162


Il y a beaucoup d'informations. Choisissez le lieu de la grève.
De nombreux ports sont ouverts, ce qui constitue des failles potentielles dans le système ennemi.
Que ce soit l'un des ports ouverts 135 avec service en cours d'exécution mcrpc(elle est RPC Microsoft Windows - service système d'appel de procédure à distance). Il nous reste à choisir un exploit adapté à un processus spécifique.
Exploiter la base de données. Quelques secondes pour la théorie.
Si vous êtes assis à Kali en ce moment, la base est à portée de main. Tout ce dont vous avez besoin est une connexion réseau et un console msf(alias la boîte à outils Metasploit). Une base de données d'exploits en constante évolution que vous pouvez voir dès maintenant en exécutant la console console msf et en tapant la commande montrer les exploits, affichera une liste d'exploits :


L'affichage de la liste à l'écran ne vous dira rien pour l'instant. Ils sont présentés par ordre alphabétique avec la date de publication, le rang attribué pour l'application et la fiabilité du travail, ainsi qu'une brève explication de son objectif.
Une sorte de pied de miroir est une ressource célèbre
Il est également entièrement consacré aux exploits. Et ici, vous pouvez (armé d'un dictionnaire) en savoir plus sur l'historique de l'exploit, le télécharger directement (si vous souhaitez créer votre propre exploit - nous en parlerons plus tard), vous familiariser avec les informations sur l'exploit. En général, tout le goût se trouve ici. Mais il y a plus.
Pas une mauvaise ressource où vous pouvez trouver quelque chose d'intéressant, c'est :
fr.0day.today/
Une ressource multilingue qui propose non seulement des exploits bien connus (lus - longuement couverts), mais aussi les propres versions des participants. Pour de l'argent. Visite et règlement : la langue russe y est également prise en charge.
Nous continuons. Nous recherchons un exploit approprié.
Métasploit est directement connecté à la base de données d'exploit, donc les étapes que vous verrez ne peuvent pas être mémorisées : Metasploit est bon car ses étapes sont automatisées (ce qui, cependant, n'est pas toujours bon). Un article sur un exploit, et nous ne l'utiliserons que, c'est-à-dire manuellement. Trouvez-le, téléchargez-le, téléchargez-le. Pourquoi manuellement ? Plus d'informations à ce sujet dans le paragraphe Problèmes de l'exploit.
Comment trouver un exploit intéressant ?
Si vous êtes intéressé par un exploit pouvant être appliqué à une plate-forme ou un programme spécifique, vous ne pouvez pas parcourir manuellement la liste de plus d'un millier et demi d'exploits affichés manuellement par la commande.
montrer les exploits
Au lieu de cela, vous pouvez saisir une session Metasploit ouverte comme ceci :
nom de recherche : smb type : exploiter la plate-forme : windows
Métasploit affichera uniquement les exploits qui fonctionnent sur le système d'exploitation Windows. De plus, si vous êtes intéressé par les exploits du navigateur sous le système d'exploitation Windows, diluez la commande avec un nom. Voir:
msf > nom de recherche : type de navigateur : plate-forme d'exploitation : windows


De plus, dans Kali Linux, une recherche directe d'exploits est disponible directement depuis le terminal sans session Metasploit en cours d'exécution. Tapez la commande pour rechercher un exploit au format :
recherche sploit Internet Explorer
Le terminal vous renverra tous les exploits disponibles dans la base de données, mise à jour chaque semaine.
Nous allons continuer...
Donc, nous connaissons le service, nous voyons le type de système d'exploitation. Donc dans la base de données on tape : Recherche-bouton après avoir saisi une requête :
Windows RPC
Avant de chercher, passons à la vérification du robot et familiarisons-nous avec les résultats :


Voici le nôtre. Nous cliquons sur le lien, allons sur le lien de téléchargement suivant, et il se trouve sur notre ordinateur dans sous forme de fichier 66.s.
RÉPÉTER
. Tout ce qui a été fait ci-dessus peut être fait plus rapidement. Dans Metasploit en cours d'exécution, tapez la commande pour rechercher un exploit depuis votre Kali :



Cependant, la situation dans laquelle un exploit approprié ne peut pas être trouvé dans la base de données Metasploit n'est pas rare. Ainsi, à mesure que vous vous familiariserez avec le fonctionnement des exploits, vous pourrez vous permettre de consacrer plus de temps à rechercher et à créer le bon exploit. Et dans notre cas, nous préparerons l’exploit téléchargé pour une injection manuelle. Dans le terminal, convertissez-le en fichier binaire (j'ai précédemment fait glisser 66.c depuis Téléchargements V Bureau):
gcc 66.c -o 66
Il y en a désormais deux :


Et j'insère le binaire d'exploit directement dans la victime XP :
./66 6 192.168.0.162


Le système a répondu. Scientifiquement, cela s’appelle un résultat de compromission réussie du système. En fait, cet ordinateur est déjà entre les mains d’un pirate informatique. Le pirate informatique voit cela comme s'il était assis devant l'ordinateur : il peut contrôler le système à l'aide des commandes de la console. Voyons maintenant comment l'exploit Metasploit est utilisé. Ports de la victime, nous sommes déjà « Annulé » avec Nmap. Et comme vous l'avez remarqué, entre autres, il y a aussi 445 géré par le serviceMicrosoft-DS. Dans la fenêtre Metasploit, sélectionnez l'exploit approprié :
exploit/windows/smb/ms08_067_netapi
exploiter
L'ordinateur n'appartient plus au propriétaire.

Des problèmes d'exploitation ou un paragraphe pour les amateurs de "tout est prêt".
Cette partie mérite un sujet à part. Mais un seul paragraphe suffit. Qu’est-ce qui attend un pentester sur le point d’utiliser un exploit ? J'explique sur mes doigts (pardonnez aux professionnels) :

  • Le premier problème est le vieillissement de la vulnérabilité, que les développeurs corrigent presque immédiatement. Oui, la grande majorité des exploits tels qu’ils existent ne méritent pas votre attention. Ils sont inutiles : les mises à jour de sécurité les masquent. Il existe donc plusieurs solutions : nous utilisons 0jour exploits ( jour zéro) - si vous pouvez trouver et postuler ; ou tournez la tête et travaillez seul ; c'est le problème numéro un - nous devons apprendre des systèmes d'exploitation et des programmes des générations précédentes : la raison est simple - les développeurs ont "marqué" sur le support (Windows XP en est un exemple typique) et ne réagissent pas aux vulnérabilités émergentes même avec notification officielle (en rappelant toutefois de ne pas vérifier si cette vulnérabilité se manifestera dans les versions de production de programmes ou de systèmes d'exploitation).
  • Le deuxième problème (qui découle du premier) est que si une vulnérabilité est publiée et qu'il existe un exploit, des dizaines de spécialistes travaillent déjà pour faire de cette vulnérabilité une chose du passé. Ils sont payés. Et les personnes qui recherchent des vulnérabilités souhaitent également être payées de la même manière. Ne vous fiez donc pas à une vulnérabilité qui a été roulée de haut en bas : le charme réside là où le chemin n’est pas parcouru. Si ce dont vous avez besoin apparaît, mais qu'il n'y a ni esprit ni expérience, vous devez parfois payer pour cela (avec le risque de vous retrouver sans résultats et sans argent). Et ce n’est pas toujours la faute du pionnier des vulnérabilités et de l’auteur des exploits. Ne serait-ce que parce qu'il y a un troisième problème...
  • les aspects techniques de l'utilisation de l'exploit sont ceux de WHAT ROADED dans la version anglaise de Windows MOST PAS RIDE en russe. Un exploit écrit pour une version américaine de Windows ne fonctionnera pas, à juste titre, pour un système russe. Le résultat de l'application peut être inattendu : jusqu'à une erreur silencieuse avec Metasploit comme L'exploit semble avoir échoué jusqu'à ce que le service échoue du côté de la victime, ce qui la rendra méfiante.

Notre revue ne s'appellerait pas ainsi si nous n'analysions pas la situation dans le monde des packs d'exploits et des téléchargements drive-by avec une régularité enviable (voir, par exemple, ][ n° 162). Depuis le dernier examen, de nombreux changements ont été apportés aux moyens de diffusion du code malveillant. En particulier, les personnes dont le devoir est de protéger les travailleurs ordinaires de toutes sortes de dangers du World Wide Web n'ont pas dormi, et l'arrestation du célèbre Paunch, l'auteur du kit d'exploitation Black Hole autrefois le plus populaire, a probablement influencé la redistribution. des principaux acteurs du marché des packs d'exploits.

AVERTISSEMENT!

Toutes les informations sont fournies à titre informatif uniquement. Ni l'auteur ni les éditeurs ne sont responsables de tout dommage éventuel causé par les éléments de cet article.

Notre liste d'aujourd'hui comprendra neuf des kits d'exploitation les plus populaires. Dans le même temps, il convient de noter qu'un leader aussi clair qu'il l'était autrefois trou noir, n'en fait pas partie, et la popularité de l'un ou l'autre représentant n'est pas toujours évaluée de la même manière par les différents chercheurs et sociétés antivirus. Cependant, l’image globale ressemble à ceci :

  • Kit d'exploitation du pêcheur
  • Kit d'exploitation Orange douce
  • Kit d'exploitation nucléaire ;
  • Kit d'exploitation Fiesta
  • Kit d'exploitation Magnitude
  • Kit d'exploitation des neutrinos
  • Kit d'exploitation Astrum
  • Kit d'exploitation RIG
  • Kit d'exploitation Archie.

Kit d'exploitation du pêcheur

Le leader de notre revue d'aujourd'hui. Il est apparu à la fin de l'année dernière et, selon certains rapports, de nombreux utilisateurs du Black Hole Exploit Kit ont opté pour ce pack d'exploits après l'arrestation de Paunch. Aujourd’hui, il dispose d’exploits pour douze vulnérabilités dans son arsenal (dont deux sont très récentes).

D'abord ( CVE2015-0311) permet d'exécuter du code arbitraire dans les versions Flash jusqu'à 16.0.0.287 pour Windows et OS X, la seconde ( CVE2015-0310) - contournez les restrictions de sécurité dans Adobe Flash Player, désactivez ASLR et exécutez du code arbitraire.


Avant de démarrer son activité malveillante, Angler EK vérifie si la machine attaquée fonctionne dans un environnement virtuel (VMware, VirtualBox et Parallels Workstation sont reconnus par la présence des pilotes correspondants) et quels outils antivirus sont installés (différentes versions de Kaspersky, antivirus de Trend Micro et Symantec, utilitaire antivirus AVZ). En plus de ce qui précède, la présence du débogueur Web Fiddler est également vérifiée.


D'ailleurs, ce type de contrôles est désormais implémenté à un degré ou à un autre dans de nombreux packs d'exploits, y compris ceux de notre revue d'aujourd'hui.

Le code d'Angler EK, comme prévu, est très bien masqué et crypté, et les auteurs nettoient régulièrement le code du pack d'exploit (au fur et à mesure qu'il pénètre dans les bases de données antivirus).

Kit d'exploitation orange douce

Bien que ce pack d'exploits ne soit pas si jeune (il est apparu en 2012), il n'a pas la moindre popularité (surtout après octobre 2013) et l'exploitation d'une nouvelle vulnérabilité. Selon certains chercheurs, la percée du pack d'exploits est d'environ 15 %. Inclut actuellement des exploits pour dix vulnérabilités et, contrairement à Angler EK, Sweet Orange exploite plusieurs vulnérabilités Java ( CVE 2012-1723, CVE 2013-2424, CVE 2013-2460, CVE 2013-2471).

Sweet Orange utilise un algorithme pour générer des noms de domaine aléatoires toutes les quelques minutes, ce qui rend ce pack d'exploits difficile à détecter et à enquêter. Par exemple, les noms de sous-domaines pourraient ressembler à ceci :

  • abnzzkpp.syt * .filet
  • abtkslxy.syt * .filet
  • ajijaohoo.syt * .filet
  • ancezvwzvn.syt * .filet
  • azrrfxcab.syt * .filet
  • bnfjqksp.syt * .filet
  • bvakjbktwg.syt * .filet

Le service scan4you.net permet de vérifier la présence des noms de domaine et des adresses IP dans les listes noires de divers antivirus ; l'utilisateur du bundle peut également spécifier un autre service de vérification.


Prix ​​du forfait - 2 500 WMZ plus les deux premières semaines de nettoyage et de changement de domaine gratuitement.

Des services supplémentaires:

  • Nettoyage: un mois - 1000 WMZ.
  • Changement de domaine :
    • limite de quantité, le prix est pour un domaine :
      • jusqu'à 10 à 25 WMZ ;
      • de 10 à 30 - 15 WMZ ;
      • de 30 à 10 WMZ.
    • délai (en jours) :
      • 10 à 300 ZWM ;
      • 20 à 400 ZWM ;
      • 30 à 600 WZ.
  • Changement de serveur : 20 WMZ.

kit d'exploitation nucléaire

Les premières versions de cet ensemble d'exploits sont apparues en 2009. À ce jour, le pack d'exploits le plus chargé de tous présenté dans la revue comprend des exploits pour douze vulnérabilités (il convient de noter que toutes ne sont pas de la première fraîcheur).

Dans la plupart des cas, une redirection à trois niveaux est utilisée pour l'infection selon le schéma suivant : le premier niveau est une page Web compromise avec une iframe intégrée, le deuxième niveau est un lien vers le pack d'exploit et le troisième est le bundle lui-même. .

Le code du pack d'exploits est fortement obscurci, il existe un grand nombre de variables et de fonctions déclarées à différents endroits qui ne sont pas utilisées.

Pour désobscurcir le code pendant l'exécution, Nuclear EK utilise approximativement les fonctions suivantes (je pense que les actions qui exécutent ces fonctions sont claires sans explication) :

VV8Y6W = fonction(uAVnC, mhTbz) ( return uAVnC(mhTbz); ); WL3 = fonction(uAVnC, mhTbz, YSu) ( return uAVnC(mhTbz, YSu); );

De plus, le code de certaines fonctions, notamment le script de détection de la plateforme et des versions des plugins du navigateur (la bibliothèque PluginDetect JS est utilisée pour détecter les plugins), est généré dynamiquement :

J_version = PluginDetect.GetVersion("Java"); p_version = PluginDetect.GetVersion("AdobeReader"); f_version = PluginDetect.GetVersion("Flash"); s_version = PluginDetect.GetVersion("Silverlight");

  • 50 000 à 500 WMZ ;
  • 100 000 à 800 WMZ ;
  • 200 000 à 1 200 WMZ ;
  • 300 000 à 1 600 WMZ.

Deux semaines:

  • 50 000 à 300 WMZ ;
  • 100 000 à 500 WMZ ;
  • 200 000 à 700 WMZ ;
  • 300 000 à 900 WMZ.

Une semaine:

  • 100 000 à 300 WMZ ;
  • 200 000 - 400 WMZ ;
  • 300 000 à 500 WMZ.

La vulnérabilité la plus ancienne de notre revue est CVE2010-0188, dont l'exploit fait partie de Nuclear EK, permet d'utiliser un fichier PDF spécialement généré pour exécuter du code arbitraire sur le système attaqué.

Kit d'exploitation Fiesta

Ce pack d'exploits a commencé son parcours d'un exploit à une vulnérabilité CVE-2007-5659 en 2008. Aujourd’hui, il intègre neuf exploits, dont les vulnérabilités remontent à 2010-2013. Les plus récentes d'entre elles sont les vulnérabilités Silverlight qui permettent l'exécution de code arbitraire sur le système en raison d'une erreur de déréférencement de double pointeur ( CVE2013-0074) ou en raison d'un traitement incorrect des objets en mémoire ( CVE2013-3896).

La vérification des versions correctes de Silverlight et d'Adobe Flash s'effectue de la manière suivante :

// Vérification de la présence de Silverlight new ActiveXObject("AgControl.AgControl"); // Validation d'Adobe Flash new swfobject.embedSWF();

Si ces deux fonctions génèrent une exception, une tentative est alors effectuée pour exploiter d'autres vulnérabilités (Java ou IE).

Le code du pack d'exploits est fortement obscurci et utilise en outre le cryptage de la plupart des chaînes à l'aide de nombres et de séquences aléatoires.

Kit d'exploitation de magnitude

L'offre groupée est apparue sur le marché début 2013 et était initialement connue sous le nom de Kit d'exploitation PopAds.

La principale caractéristique de ce pack d'exploits est l'utilisation du service scan4you.net pour vérifier les adresses IP et les domaines, ainsi que le code du pack d'exploits lui-même pour la détection par différents antivirus. De plus, Magnitude EK, comme Sweet Orange EK, utilise la génération dynamique et le changement de noms de sous-domaines toutes les quelques minutes.

Bien qu'il ne s'agisse pas des vulnérabilités exploitées les plus récentes (il y en a actuellement sept dans cet ensemble), ce pack d'exploits offre une pénétration tout à fait acceptable.

Le code de liaison peut être désobscurci à l'aide de la méthode String.fromCharCode, dont l'argument est constitué des éléments de la séquence chiffrée par XOR. Le symbole % est utilisé pour séparer les éléments de cette séquence les uns des autres.

Contrairement à d'autres packs d'exploits, Magnitude EK ne peut pas être loué, par exemple pour une semaine ou un mois. Les créateurs de cette offre groupée prélèvent en guise de paiement un certain pourcentage d'ordinateurs infectés sur le trafic total du client.

Kit d'exploitation des neutrinos

Ce pack d'exploits a commencé son voyage vers mars 2013 et comprenait ensuite des exploits pour seulement deux vulnérabilités ( CVE2012-1723 Et CVE2013-0431, tous deux pour Java). À ce jour, la liste des vulnérabilités exploitées s'est légèrement élargie, elle contient désormais cinq exploits pour Java et un ( CVE2013-2551) vers Internet Explorer.

Le code du pack d'exploits est obscurci de la même manière que dans Magnitude EK. Pour la désobfuscation, la fonction suivante est utilisée :

Fonction xor (entrée, passe) ( var sortie = ""; var i = 0; var pos = 0; pour (i = 0; i< input.length; i++){ pos = Math.floor(i%pass.length); output += String.fromCharCode(input.charCodeAt(i) ^ pass.charCodeAt(pos)); } return output; }

La « charge utile » téléchargée par Neutrino EK sur l'ordinateur infecté de la victime est transmise sous forme cryptée XOR, ce qui réduit quelque peu la probabilité de détection par les produits antivirus.

Le coût de location d'un pack d'exploit sur un serveur mutualisé avec purges générales :

  • jour - 40 dollars;
  • semaine - 150 $ ;
  • mois - 450 dollars.

Kit d'exploitation Astrum

Le plus jeune kit d'exploit dans notre revue aujourd'hui. Selon certaines sociétés antivirus, la date de sa première sortie se situe vers la mi-septembre 2014.

Le code du pack d'exploits est fortement obscurci et contient une vérification de la présence de divers utilitaires de pirate informatique sur la machine infectée, de programmes antivirus et du fait qu'il s'exécute sur une machine virtuelle. De plus, le plugin de protection du clavier à l'écran de Kaspersky a reçu un contrôle distinct :

Essayez ( var O = $(Kaspersky.IeVirtualKeyboardPlugin.JavaScriptApi.1); O && (mr = 1) ) catch(s) ()

Il inclut des exploits pour sept vulnérabilités (Silverlight, Flash, LibTiff et IE).

Kit d'exploitation RIG

RIG EK a commencé son activité malveillante fin 2013 et exploite aujourd'hui des vulnérabilités dans Internet Explorer, Java, Adobe Flash et Silverlight.

Les utilisateurs sont redirigés vers la page contenant le pack d'exploit à l'aide d'un script JS intégré sur la page compromise, qui, en fonction de la date actuelle (le hachage CRC32 en est extrait), génère des noms de domaine où se trouve le code du pack d'exploit.

Cet ensemble d'exploits vérifie également la présence de produits antivirus (mais uniquement pour Kaspersky et Trend Micro) - en déterminant si les pilotes suivants sont présents :

  • c:\\Windows\\System32\\drivers\\kl1.sys
  • c:\\Windows\\System32\\drivers\\tmactmon.sys
  • c:\\Windows\\System32\\drivers\\tmcomm.sys
  • c:\\Windows\\System32\\drivers\\tmevtmgr.sys
  • c:\\Windows\\System32\\drivers\\TMEBC32.sys
  • c:\\Windows\\System32\\drivers\\tmeext.sys
  • c:\\Windows\\System32\\drivers\\tmnciesc.sys
  • c:\\Windows\\System32\\drivers\\tmtdi.sys

Le coût de ce kit d'exploit :

  • jour - 40 dollars;
  • semaine - 100 $ ;
  • mois - 500 dollars.

Kit d'exploitation Archie

Ce pack d'exploits est apparu relativement récemment (selon F-Secure - environ fin juillet de l'année dernière). Ses créateurs n'ont pas pris la peine de développer du code eux-mêmes et ont pris des modules d'exploitation de Cadre Metasploit, et la bibliothèque PluginDetect JS est utilisée pour obtenir des informations sur les versions de Silverlight, Flash et d'autres choses.

Les premières versions d'Archie n'offraient pas à leurs utilisateurs l'obscurcissement ou toute autre astuce. Cependant, dans les versions ultérieures, l'obscurcissement du code et le cryptage des URL et des noms de fichiers sont apparus, ainsi que la vérification des machines virtuelles et des programmes antivirus.

Conclusion

Captain Obvious, depuis son stand de prompteur, me dit qu'avec le temps, les vulnérabilités et les packs d'exploits ne diminuent pas. Par conséquent, en résumant, nous pouvons tirer plusieurs conclusions :

  • les auteurs de la plupart des packs d'exploits sont passés de la vente directe à la location sur leurs serveurs, alors qu'ils proposent souvent un cycle complet de services - du nettoyage aux modifications permanentes des noms de domaine et aux contrôles de détection antivirus ;
  • presque tous les packs d'exploits ont commencé à exploiter activement les vulnérabilités de Java et Silverlight ;
  • de nombreux packs d'exploits ont commencé à acquérir les fonctions de reconnaissance de la présence de machines virtuelles, d'antivirus et de divers outils de piratage ;
  • vulnérabilité CVE2013-2551 est très populaire et est utilisé dans tous les kits d'exploitation de notre revue.

www

Plus récemment, les codes sources du RIG Exploit Kit ont été divulgués dans le domaine public. Vous pouvez à ce sujet

De nombreux débutants dans le domaine de la sécurité de l'information se posent de nombreuses questions sur les exploits : que sont les exploits ? Qui écrit des exploits ? Comment utiliser les exploits ? Dans cet article, vous trouverez des réponses à ces questions !

Qu'est-ce qu'un exploit ?

Exploiter est un programme informatique, un morceau de code de programme ou une séquence de commandes qui exploite les vulnérabilités d'un logiciel et est utilisé pour attaquer un système informatique. Le but d’une attaque peut être soit de prendre le contrôle du système (élévation de privilèges), soit de perturber son fonctionnement (attaque DoS). ...

À la base, un exploit est un petit exemple de la façon dont cette vulnérabilité peut être exploitée, mais entre les mains d'un pirate informatique expérimenté, un exploit est une arme puissante qui vous permet de compromettre le système cible.

Qui écrit des exploits ?

Les exploits sont écrits par des milliers de passionnés par l'étude de la sécurité de l'information, ils les publient sur de nombreux sites bien connus comme SecurityFocus. Ils ne le font pas pour la gloire ni pour la joie des script kiddies, ils le font pour alerter les administrateurs système et autres spécialistes de la sécurité de l'information de l'existence de cette vulnérabilité. Après tout, ayant sous la main l’implémentation d’une vulnérabilité spécifique, vous pouvez facilement écrire un « patch ».

Comment utiliser les exploits ?

Malgré le fait que de nombreux débutants soient plongés dans la stupeur par d'énormes bases avec des exploits, les utiliser est assez simple !

Par exemple, prenons une vulnérabilité trouvée dans l'un des nombreux composants de Joomla. Vous pouvez trouver une description de l'exploit en suivant le lien Composant Joomla com_camp Vulnérabilité d'injection SQL .

Tout d’abord, vous devez examiner l’application et la version de l’application pour laquelle la vulnérabilité existe. Si vous trouvez ce dont vous avez besoin, commencez à étudier la description de l'exploit. Dans la description, ils écrivent généralement exactement où la vulnérabilité a été trouvée, dans notre cas il s'agit du composant com_camp, comme vous pouvez le voir, la vulnérabilité existe en raison d'un manque de filtrage dans la variable cid :

http://127.0.0.1/index.php?option=com_camp&task=show&cid=


En visitant un site présentant cette vulnérabilité et en remplaçant un guillemet dans la variable cid, vous trouverez très probablement une erreur sur la page, qui indique la présence d'une injection SQL.

Que faire ensuite? Ce serait un fantasme, mais vous pouvez faire beaucoup de choses ! C'est là que nous arrivons à l'exploit lui-même. Sur la page de description de l'exploit, ils publient généralement un fichier contenant l'exploit lui-même ou une ligne de code de programme qui doit être soit compilé, soit « transmis » d'une manière ou d'une autre à une application vulnérable. Dans notre cas, nous voyons une ligne de code sql qui doit être insérée dans la variable cid :

1/**/UNION/**/SELECT/**/1,2,3,4,5,6,7,8,9,10,11,12,13,14--


Dans notre cas également, nous voyons un exemple d'implémentation de cette vulnérabilité :

http://127.0.0.1/index.php?option=com_camp&task=show&cid=-1/**/UNION/**/SELECT/**/1,2,3,4,5,6,7,8, 9,10,11,12,13,14--


Disposant de ces données et connaissant la structure de la base de données Joomla, vous pouvez facilement obtenir toutes les données nécessaires, y compris les identifiants et les hachages de mots de passe des utilisateurs, y compris l'administrateur.

Quels autres exploits existe-t-il ?


Selon la méthode d'accès aux logiciels vulnérables, les exploits sont divisés en distants (anglais à distance) et locaux (anglais locaux).

Les exploits sont conçus pour effectuer des actions de tiers sur un système vulnérable et peuvent être répartis entre eux comme suit :

En général, GoogleHack & « Advanced Search » vous aideront à rechercher un site spécifique, par exemple site : http:securityfocus.com injection Joomla SQL vous apportera de nombreux exploits qui vous permettront d'effectuer une injection SQL dans Joomla.

Tous les imbéciles peuvent-ils utiliser des exploits ?


Non, non et NON. Pour utiliser des exploits, il faut au moins des connaissances générales en programmation (de nombreux exploits sont spécialement écrits avec des erreurs et n'offrent pas de grandes opportunités, car il ne s'agit que d'une « présentation » d'une vulnérabilité), il faut aussi étudier le système qui est attaqué et collecter suffisamment d’informations pour mener à bien cette attaque. L'expérience montre que de nombreuses personnes qui souhaitent « de l'argent facile » n'ont tout simplement pas les connaissances nécessaires.

Conclusion:
Chaque jour, de plus en plus de vulnérabilités sont découvertes et, par conséquent, de plus en plus d'exploits sont écrits. Je ne vous encourage pas à devenir des script kiddies et je ne dirai en aucun cas que vous n’utiliserez pas ces informations à des fins illégales !

L'énergie nucléaire peut apporter la lumière, ou elle peut apporter les ténèbres éternelles, chacun décide lui-même comment vivre...

Vous avez aimé l'article ? Partager avec des amis: