Ok, je passe sur le mauvais usage du terme hacker ici.
Quel langage utilisent les crackers, les cybercriminels et les experts en sécurité informatique ?
Tout ce dont ils ont besoin pour résoudre la tâche. Généralement, ils choisissent au moins un langage pour les trois couches de programmation 1) couche d'application 2) couche de système et d'implémentation 3) couche de matériel.
En outre, ils apprennent à utiliser l'environnement système, avec des débogueurs, des éditeurs hexa et des désassembleurs comme Radare2 et tout cela. Ils utilisent des langages qui leur donne le plus de rendement et qu'ils peuvent aussi envoyer sur le réseau pour travailler sur différents systèmes cibles.
Donc naturellement le premier langage qu'ils apprennent est le C. Le deuxième langage qu'ils apprennent est l'Assembleur au moins celui de leur système cible. Vous ne pouvez pas aller en profondeur sans lui. Ensuite, ils choisissent un langage dynamique, certaines personnes ont suggéré Python, mais ce langage est vraiment mauvais pour cela, parce qu'il vient avec un prix énorme, il est putain de lent, putain de gonflé et ne rivalise pas vraiment avec LuaJIT sur n'importe quel domaine de cette application.
Donc les premiers malwares sont là, qui travaillent effectivement avec Lua, pas Python. Python est plus le langage typique de calculatrice de poche que beaucoup de la race étudiante récente ont appris.
Mais je ne le rends pas un bon langage pour cet objectif, oui je sais, Metasploit et tout ça, peu importe. Il est trop gonflé.
Lua malware, deux exemples marquants parmi les nombreux :
Flame (malware) - Wikipedia
MMD-0057-2016 - Linux/LuaBot - IoT botnet as service
Et ils arrivent et arrivent maintenant, parce que c'est logique.
Si vous faites des logiciels de vers, il est également logique d'apprendre à programmer Perl, parce que c'est un langage de script qui est disponible dès le départ sur tout système cible connu basé sur Linux. Comme les compilateurs C sont généralement là et au moins un assembleur.
Lua n'a pas besoin d'être sur le système cible, c'est si petit que vous pouvez l'apporter avec vous, lié statiquement. Les plus petites implémentations sont juste 120 kb de taille qui est plus petit que tout autre chose de HLL. LuaJIT a un peu plus de chair sur elle avec 400 kb, mais encore c'est minuscule.
Vous devez connaître le système de part en part et comment il fonctionne, avec cela vous devez être couramment avec Assembly, C, Lua, Perl, Awk, Grep, Gdb, Radare2, Make et tous les autres outils de développement, votre shell Linux moyen, votre libc moyenne, POSIX et si vous prévoyez de casser les systèmes Windows, il n'y a tout simplement pas d'art dans ce domaine.
Vous prenez simplement l'écolier moyen, vous lui donnez un peu de Metasploit et un accès au forum où il peut copier et coller et vous avez terminé. Casser Windows n'est pas un art, cette merde est cassée par défaut. Il y a maintenant douze nouveaux malwares qui sortent chaque minute sur cette plateforme.
Elle est tellement mal maintenue et sécurisée qu'il y a en fait une industrie qui évolue sur les kits de construction de malwares, où vous empilez juste quelques parties de votre malware personnalisé que vous voulez construire, le compilez et c'est fait. Et ces kits ne se cassent pas après une semaine qu'ils entrent sur le marché, ils restent sur le marché pendant des années.
Donc, les "hackers" sont pragmatiques. Ils ont juste choisi les langages qui donnent le plus de rendement, ils sont paresseux, ils font ce qui demande le moins d'effort, ils sont efficaces, un petit malware ne se fait pas détecter, ils essaient de faire le plus possible dans le moins de code possible.
En plus de cela, Lua est un code très complexe et pas facilement détectable.
Je suppose, que c'est pour cela qu'ils sont si nombreux à utiliser ce truc dernièrement. Et c'est la raison, pourquoi j'ai commencé à creuser dans cela et ce langage a obtenu mon plein respect. Eh bien, je suis dans cette chose pour un peu plus longtemps maintenant, pour être honnête. Mais pas aussi longtemps que je le souhaiterais. J'aurais aimé découvrir cela plus tôt, cela m'aurait aidé à sauter Python.
Je veux dire, Lua pour les logiciels malveillants. Juste une pensée supplémentaire.
En général, vous allez juste scanner les logiciels, non ? Exact. Mais Lua n'existe pas directement avant son exécution. Vous ne pouvez pas scanner sur les appels ou les marqueurs spécifiques, c'est un code complet polymorphe et crypté. Vous ne pouvez pas le voir. Vous ne le voyez pas venir.
Au revoir l'ingénierie inverse : " Bruder-Schwester " https://www.quora.com/I-have...
Littéralement, vous ne pouvez pas le voir et il n'y a aucun moyen de le détecter, car c'est du code caché, caché partout, n'importe où.
Vous pouvez écrire du code qui se débloque sur certains médias grand public. Si certains mots y apparaissent. Dites une ville ou une personne ou un grand événement qui va arriver.
Vous ne pouvez pas bloquer cela, vous ne pouvez pas fermer le média et vous ne savez pas quel type de message va activer le code. Vous ne voyez même pas le code, vous voyez juste des trucs déformés. Et ce n'est peut-être pas un seul programme, il peut en cacher plusieurs. Des programmes qui rechargent des trucs de partout.
C'est "Bruder-Schwester", une des choses vraiment mauvaises que nous avons imaginées dans notre centre de test de virus VTC à l'université de Hambourg au début des années 90. Et qui a été caché pendant environ 25 ans maintenant. Et j'ai décidé de le publier. Mon prof a opté contre et donc ça a été caché.
Il n'était pas un scientifique croyant au pouvoir de nettoyage de l'examen, au pouvoir de la science et de la méthode scientifique pour descendre à ce problème à temps. Au lieu de cela, maintenant, cela s'est produit dans l'obscurité et nous ne sommes pas confrontés à un petit logiciel à pas de bébé, qui est juste ennuyeux et que nous aurions pu mettre sous contrôle.
Maintenant, nous avons une plaie qui va planter nos systèmes. Une plaque qui a évolué dans les tranchées de cette guerre, entre les jeunes systèmes assis là, shellshocked et comme dans la Première Guerre mondiale cette plaque arrive sur nous, maintenant. Parce que le malware a eu le temps d'évoluer, de planifier cette attaque, nous n'avons aucun angle pour la contrer.
Et c'est pourquoi les hackers utilisent de plus en plus Lua et autres HLL. La nouvelle génération arrive, et même si j'ai promis de ne jamais publier ce que nous avons travaillé là, je peux vous dire qu'il y a des choses bien pires comme ça qui arrivent.
Et ils sont capables de combiner leurs pouvoirs avec ce qu'il y a déjà. Du code polymorphe ? Oui, on l'a déjà vu, ça peut être pire, bien pire.
Il y a des choses que l'on peut faire.