Yandex Dzen.

Qu'est-ce que l'exploit et comment les pirates l'utilisent

Les salutations. Qui sont des pirates et ce qu'ils ont déjà discuté. Nous ne répéterons pas, outre, il est ouvertement couvert dans le réseau et au cinéma. Les méthodes de hacker et les types d'attaque de hackers sont donc nombreux à ne pas créer à partir de l'article «Vinaigrette», nous en soulignons un, qui est populaire auprès des pirates noirs et en 2020. Je n'essaierai pas de "sauver l'intrigue", nous allons décrire: "Exploits".

Pour la connaissance introductive, nous comprenons que les exploits font partie du code informatique (ou du programme compilé et non seulement ...), qui utilise la "vulnérabilité de la victime", puis les objectifs sont ramifiés pour: obtenir un accès; "Suspension"; Perturbation. Si le lecteur est apparu sur les mots "Dos Atak", sachez que 85%, les pirates ont utilisé des "exploits". En fait, le nom, si la traduction de l'anglais signifie: "en utilisant quelque chose". Ou exploiter, d'où les racines du mot "exploiter".

Ces programmes (nous appellerons des exploits par des programmes, Bien que ce ne soit pas vrai ) sont divisés en destinations: pour Windows, Linux et autres exploitants; Pour d'autres programmes et ainsi de suite. Etc.

Je pense que les lecteurs veulent chercher à comprendre comment ce programme magique, capable de s'engager, de suspendre et de fournir l'accès "maître" sur le serveur "étrange". Découvrez d'abord pourquoi l'accord s'appelle le programme, pas vrai. Le fait est qu'il est exploité non seulement du fichier compilé, mais également d'un texte (même du bloc-notes avec une description de la manière de pirater "le système" est déjà exploité). Je comprends le malentendu le plus facile de la lecture, mais c'est le cas: si vous ouvrez un cahier et là sous la forme d'un texte pour écrire comment "profiter" de n'importe quel serveur, il s'agira également d'un exploit. Mais qu'est-ce qui aimerait au moins, diversifierait un article, écrivez au moins parfois le mot: programme. De plus, de tels exploits rencontrent sous la forme d'un programme sur «Toute» langue. Hackers, ce sont d'anciens programmeurs qui recherchaient des erreurs dans les programmes Par conséquent, ces personnes possèdent facilement des langues C / C ++, Perl et TD. La tâche de ces programmes est réduite au débordement de la mémoire tampon, aux enregistrements SQL, aux demandes "Linden" pour le site et ainsi de suite.

Qu'est-ce que l'exploit et comment les pirates l'utilisent

Il arrive à utiliser la séquence de programmes, au cas où la tâche doit être "compliquée".

Trouver et télécharger des exploits prêts à l'emploi à Internet ouvert n'est pas légal. Et bien sûr, l'auteur ne recommande pas de rechercher de tels programmes à DarkNet.

Donc, maintenant, quand une compréhension des exploits déposés dans la tête, allez à la "pratique virtuelle". Supposons que la situation: dans la ville de Voronezh, un homme vit qui vole régulièrement à Moscou et là «nôtre» une dame mariée. Le conjoint trompé, incapable d'attraper l'amant, est décidé à la vengeance, mais à distance. Pour ce faire, votre mari est nécessaire accès à l'ordinateur "Scounding". N'allons pas dans les détails, mais nous indiquons le fait: il est devenu connu comment le navigateur utilise un "rival rusemand". Heureusement pour un mari avancé, dans ce navigateur, il existe une "vulnérabilité". Il reste seulement de forcer le "code d'exécution" de l'amant, qui sans la connaissance de l'utilisateur, chargent des logiciels malveillants "sur le côté". Ensuite, le mari écrit une lettre, au nom de sa femme et envoie un amoureux par courrier. Le résultat est compréhensible (ouvre la lettre et le code est déjà "dans le cas").

Les programmes célèbres sont: "Angler" (ensemble complexe (travaux en RAM)); "Neutrino" (Brainchina russe à Java, coûte 34 mille dollars); "Kit Blackhole" (bat les navigateurs chrome, "Oslik", "Firefox" ).

Commentaire ("négatif \ positif"). S'abonner. Comme. Au revoir.

Salut Habrovsk. En prévision du début du cours "Administrateur Linux. Professionnel " Notre expert - Alexander Kolesnikov a préparé un article intéressant que nous allons volontiers volontiers avec vous. Invitez aussi les futurs étudiants et tous ceux qui souhaitent visiter une leçon ouverte sur le sujet. "Méthodes et la capacité de déboguer les scripts de la coquille bash."

Le système d'exploitation Linux s'est avéré au monde tout le pouvoir des projets open source - grâce à elle aujourd'hui, nous avons la possibilité d'examiner le code source du système de travail et de celui-ci pour assembler votre propre système pour résoudre certains objectifs. En raison de son ouverture, Linux devait devenir le système d'exploitation le plus sûr au monde, car le code open source permet de développer et d'améliorer les sous-systèmes de protection contre les attaques sur le système d'exploitation et améliorer le système d'exploitation lui-même. En effet, il existe actuellement un grand nombre de protection communautaire créée: il n'est plus aussi facile de submerger les vulnérabilités du type de débordement de la mémoire tampon pour obtenir des privilèges élevés il y a 20 ans. Cependant, aujourd'hui, vous pouvez trouver des exploits dans le domaine public, ce qui, même sur les dernières versions du noyau, peut augmenter les privilèges utilisateur. Considérez dans cet article, comme cela fonctionne et pourquoi il s'avère. Nous passerons par les principaux composants de l'exploitation et examinerons comment certains d'entre eux fonctionnent.

Toutes les informations fournies ont été collectées exclusivement à des fins d'information.

Types d'exploitation

Choisir un terme général que nous allons indiquer ce qui est Exploit - L'algorithme qui viole le fonctionnement normal du système d'exploitation, à savoir les mécanismes de séparation de l'accès. Nous allons également introduire le concept Vulnérabilités - Il s'agit d'une imperfection logicielle pouvant être utilisée par un algorithme d'exploitation. Sans vulnérabilité, l'existence d'un exploit est impossible.

Nous introduisons la classification des exploits. La séparation de base des exploits aux sous-groupes de tout système d'exploitation commence au niveau de l'architecture. Aujourd'hui, les systèmes d'exploitation comprennent au moins 2 niveaux de privilèges utilisés pour leur travail. Vous trouverez ci-dessous une image qui montre clairement la séparation des privilèges. Photo prise D'ici .

L'image montre très clairement que le noyau (espace du noyau) est présent dans le système d'exploitation, il est généralement le mode le plus privilégié, il est ici que nous appelons le système d'exploitation. Et le deuxième niveau est personnalisé (espace utilisateur): applications et services réguliers que nous utilisons chaque jour sont lancés ici.

Il a historiquement développé que, pour chacun des niveaux ci-dessus, des vulnérabilités peuvent être trouvées pour lesquelles un exploit peut être créé, mais l'exploitement de chaque niveau a ses limites.

Au niveau de l'utilisateur, tout exploit qui affecte l'application aura exactement ces privilèges utilisés par l'utilisateur qui a lancé une application vulnérable. Par conséquent, ce type d'exploit vous permet d'obtenir un contrôle total sur le système d'exploitation uniquement si l'application est lancée par l'administrateur système. Contrairement au niveau utilisateur, Niveau de noyau S'il contient un code vulnérable, il peut activer immédiatement le système d'exploitation avec des privilèges maximaux. Vous trouverez ci-dessous l'étude de ces exploits.

Explant

Imaginez de petites statistiques sur la divulgation de vulnérabilités pour le noyau de la distribution du système d'exploitation Linux de Debian, SUSE, Ubuntu, Arch Linux des 4 dernières années.

Données entreprises D'ici . La photo ne prétend pas être complète, mais cela montre qu'il y a beaucoup de vulnérabilités, et même aujourd'hui, il y a de quoi choisir de construire un exploit. Essayons de décrire ce qui est exploité.

Toute exploit pour tout niveau du système d'exploitation est aujourd'hui constitué de pièces qui doivent être mises en œuvre dans son code:

  1. Opérations préparatoires:

    1) Naviguez sur l'affichage de la mémoire nécessaire

    2) Création des objets nécessaires au système d'exploitation

    3) contourner les mécanismes de protection du système d'exploitation pour la vulnérabilité

  2. Appeler une partie vulnérable.

  3. Effectue une charge utile:

    1) ouvrir l'accès au système d'exploitation

    2) Pour changer la configuration du système d'exploitation

    3) Pour la sortie du système

Lors de l'exécution de tous les éléments, qui sont indiqués ci-dessus, vous pouvez écrire une exploitement réalisable. Prenez plusieurs exploits des dernières années et essayez de déterminer s'il est possible de trouver des régularités ou des emprunts utilisés pour violer la séparation de l'accès dans le système d'exploitation Linux. En tant qu'objets d'étude, nous prenons des exploits qui utilisent les vulnérabilités suivantes avec les identificateurs de CVE:

Cve-2020-8835

CVE-2020-27194.

Disaster Exploit

Cve-2020-8835 рAballez le noyau du système d'exploitation Linux de la version 5.5.0. La vulnérabilité est dans la mise en œuvre de la technologie EBPF. . La technologie a été conçue pour s'assurer que l'utilisateur peut créer des gestionnaires personnalisés pour filtrer le trafic réseau. En tant que composant principal de filtrage, une machine virtuelle avec son propre ensemble de commandes est utilisée. Le code effectué par la machine virtuelle vit dans le noyau: une erreur dans ce code apporte un attaquant pour travailler avec la mémoire avec des privilèges maximaux. Dans le cas de la vulnérabilité décrite, le problème était que les opérations de traitement de l'opération 32 bits n'étaient pas correctement traitées et que la machine virtuelle pouvait écrire et lire les données dans la RAM nucléaire.

Comme l'auteur de l'exploit utilise cette vulnérabilité et une charge utile est effectuée, examinez davantage.

Étape préparatoire

Pour cette étape, la partie suivante du code est responsable.

Rangée 394 - Création d'un objet en mémoire qui stockera des données sur les commandes pour EBPF. . La rangée 400 charge dans le code de mémoire qui sera effectuée dans la machine virtuelle et enfreindra les conditions de traitement des commandes 32 bits. La préparation de la mémoire est terminée, les lignes suivantes créeront un objet d'une prise qui s'appellera des commandes téléchargées pour BPF. . Après cela, la chambre de la vulnérabilité commencera.

Appeler le code vulnérable

Appeler un code vulnérable ou plutôt travailler avec les commandes de la machine virtuelle est effectuée à partir de la ligne 423 à 441. La tâche principale de ce code est d'obtenir l'adresse de base de la structure en mémoire, dans ce cas, il s'agit d'une processus de tas (tas). Dès que ces commandes sont effectuées, l'exploitation sera en mesure de détecter les données utilisées par le système d'exploitation pour contrôler la séparation de l'accès. Dans le système d'exploitation Linux, ces données sont stockées dans la structure. Tasktructeur. .

Charge utile

La charge utile de cet exploit est qu'après son exécution, vous pouvez exécuter un processus avec les droits de l'utilisateur. racine . Pour cela, le code Exploit produit la modification des champs de champ de noyau du système d'exploitation Linux - Céder. Ceci est une structure qui entre dans la structure Tasktructeur. . Structure de code source Céder. Peut être trouvé ici .

Actions de modification de champ Struct céder. peut être vu sur des rangées 472 473 474. . C'est-à-dire que cette action réinitialisait la valeur UID, gid, sgid Processus créé. Du point de vue, il est défini sur des valeurs d'identifiant qui utilisent habituellement racine . La méthode est très similaire à celle utilisée pour les attaques sur le système d'exploitation Windows.

Vous pouvez vous protéger sans mettre à jour le système d'exploitation, si vous apportez les modifications suivantes à la configuration: sudo sysctl kernel.unpriviledged_bpf_disabled = 1

CVE-2020-27194. - encore une fois vulnérabilité dans EBPF. . Il y a une version de version 5.8. *. Les créateurs de cette technologie plaisantent que BPF. - C'est JavaScript pour le noyau. En fait, ce jugement n'est pas loin de la vérité. La machine virtuelle mène vraiment des manipulations sur des équipes à l'aide de la technologie JIT, qui transporte elle-même toutes les vulnérabilités des navigateurs typiques du noyau du système d'exploitation, c'est-à-dire qu'il est difficile de configurer le sous-système de protection pour protéger le code. La vulnérabilité considérée est que, à partir du code de la machine virtuelle, vous pouvez modifier n'importe quelle zone de RAM. Cela est peut-être dû au fait que la machine virtuelle est dangereuse de travailler avec des opérations de longueur 64 bits. Vulnérabilité totalement similaire de celle que nous avons considérée ci-dessus.

Exploit, qui est conçu pour utiliser la vulnérabilité décrite, effectue les mêmes opérations que l'exploit CVE-2020-8835. Exploitez l'algorithme Suivant:

  1. Télécharger le code avec le traitement des opérations 64 bits

  2. Créez une prise et envoie des données aux commandes d'appel EBPF.

    1. Trouver à l'esprit l'adresse de la structure Tasktructeur. En effectuant des commandes dans une machine virtuelle

  3. Modifier les valeurs UID, gid, sgid et lancer une coquille interactive.

L'auteur a écrit le code source avec de nouvelles puces et des fonctionnalités supplémentaires. Nous offrons au lecteur de regarder le code vous-même. Les étapes énumérées du travail de l'exploit ci-dessus ne seront pas confuses.

La protection contre cette vulnérabilité sans utiliser de mises à jour est la même: sudo sysctl kernel.unpriviledged_bpf_disabled = 1

Quel est le résultat?

Sur la base de deux exploits, qui ont été pris en compte dans l'article, on peut supposer que l'augmentation des privilèges de l'OS Linux moderne n'est plus la magie de programmation sombre, mais un processus de modèle entièrement chargé comprenant la réutilisation des fonctions et des objets dans la RAM. Dans le même temps, il n'est même pas nécessaire d'écrire du code de la base dépendant de la base (shellcode) qui effectuera la plupart des actions. Il suffit de changer les identificateurs utilisés pour attribuer des privilèges pour les utilisateurs.

En savoir plus sur le parcours "Administrateur Linux. Professionnel. "

Inscrivez-vous pour une leçon ouverte "Méthodes et la capacité de déboguer les scripts de la coquille bash."

Lire la suite:

Qu'est-ce que l'exploit?

Au stade du développement de tous les programmes et réseaux, les mécanismes de protection contre les pirates informatiques dans le type de serrures, avertir une surveillance non autorisée, sont intégrées. La vulnérabilité est similaire à la fenêtre ouverte, pour traverser ce qui ne sera pas beaucoup difficile pour un attaquant. Dans le cas d'un ordinateur ou d'un réseau, les attaquants peuvent établir des logiciels malveillants en utilisant la vulnérabilité afin d'obtenir le contrôle ou d'infecter le système à des fins de mercenaire avec des conséquences pertinentes. Le bol de tout cela se produit sans la connaissance de l'utilisateur.

Explant
Comment se pose l'exploit?

Les exploits sont causés par des erreurs dans le processus de développement de logiciels, à la suite de quelles vulnérabilités sont utilisées avec succès dans le système de protection du programme, qui sont utilisées avec succès par les cybercriminels pour obtenir un accès illimité au programme lui-même et, à l'aide de l'ensemble de l'ordinateur. . Les explants sont classés conformément au type de vulnérabilité, utilisé par un pirate informatique: zéro jour, DOS, entrepoiffage ou XXS. Bien entendu, les développeurs de programmes publieront prochainement des mises à jour de sécurité pour éliminer les défauts trouvés, cependant, jusqu'à présent, le programme est toujours vulnérable aux intrus.

Comment reconnaître l'exploitation?

Étant donné que les exploits utilisent des barres dans des mécanismes de sécurité du programme, un utilisateur ordinaire n'a presque aucune chance de déterminer sa présence. C'est pourquoi il est extrêmement important de maintenir les programmes établis mis à jour, notamment en temps utile de mises à jour de sécurité, fabriquées par les développeurs de programmes. Dans le cas où le développeur de logiciels publie une mise à jour de sécurité pour éliminer une certaine vulnérabilité dans son logiciel, mais l'utilisateur ne l'établira pas, alors, malheureusement, le programme ne recevra pas les définitions virales les plus récentes.

Comment éliminer l'exploitation?

En raison du fait que les exploits sont la conséquence des défauts engagés, leur élimination est incluse dans les fonctions directes des développeurs. Les auteurs devront donc préparer et envoyer une correction d'erreur. Toutefois, l'obligation de conserver les programmes installés mis à jour et d'installer en temps opportun les packages de mise à jour afin de ne pas donner au risque d'utiliser des vulnérabilités, se situe complètement sur l'utilisateur. L'une des manières possibles ne manque pas les dernières mises à jour - utilisez le gestionnaire d'applications qui garantira que tous les programmes installés sont mis à jour ou - ce qui est encore meilleur - utilisez l'outil de recherche et d'installation automatique.

Comment arrêter les tentatives des pirates pour utiliser des vulnérabilités de programmes tiers
  • Assurez-vous d'avoir installé les dernières mises à jour de sécurité et correctifs pour tous les programmes.
  • Pour être en sécurité en ligne et rester au courant des événements, définissez toutes les mises à jour immédiatement après leur libération.
  • Installez et utilisez Premium Anti-Virus, capable de mettre à jour automatiquement les programmes installés.
Sécurisez-vous des exploits

Comptez sur le bon sens et suivez les règles de base des travaux sûrs sur Internet. Les pirates peuvent uniquement tirer parti de la vulnérabilité s'ils parviennent à accéder à votre PC. N'ouvrez pas les pièces jointes dans des messages suspects et ne téléchargez pas de fichiers de sources inconnues. Prise en charge des programmes installés mis à jour et installez également des mises à jour de sécurité. Si vous souhaitez simplifier simultanément cette tâche, téléchargez Avast Antivirus, qui permettra non seulement une protection fiable contre tous les types de logiciels malveillants, mais également aidera à l'installation des mises à jour les plus récentes pour les programmes tiers.

Добавить комментарий