Faire un don ! | | style | statistiques | contactez-nous | plan | lettre d'information

: Howto : comment écrire des virii pour Linux

Posté par alenvers (). Modéré le 14 mars 2002.
Le howto est sous titré : "post-link-time code modification of ELF executables under Linux/i386". Ce document présente des méthodes permettant le parasitage de binaires ELF sous linux. On peut facilement penser que ce genre de document peut profiter seulement aux pirates, mais non ! Il peut profiter aussi à toute personne un peu soucieuse de sécurité. En effets, connaitre les techniques de piratage permet de les détecter ou encore mieux de les éviter.

Afin de comprendre ce document, il est seulement nécessaire d'avoir des bases d'assembleur x86.

Manu nous signale par ailleurs :
Vnu.net nous alerte sur l'existence d'un virus pour Linux, sauf que ce pauvre virus ressemble à un virus d'essai, ni plus ni moins. Il se propage en infectant les exécutables et bibliothèques (tout ce qui est au format ELF je suppose).

> Lire la dépêche (30 commentaires, moyenne: 4,5).  

Vous avez demandé le commentaire #102758.

ca y est!

Posté par Marc (Jabber id, page perso, ) le 14/03/2002 à 18:37. (lien). Évalué à 10.

J'attend avec impatience un Norton Antivirus for Linux, avec son live update. On ira recuperer un crack sur astalavista.box.sk, et là enfin on pourra respirer tranquilement en executant n'importe quoi en root!

  • [^]Re: ca y est!

    Posté par Jésus Christ (page perso, ) le 14/03/2002 à 19:57. (lien). Évalué à 13.

    Arf !
    Ils ont mis le temps avant de trouver comment faire...
    Mais je crois que effectivement leur virus souffre d'une énorme restriction... FAUT LE LANCER EN ROOOOOT !!!
    mouarf !!

    • [^]Re: ca y est!

      Posté par kalahann () le 15/03/2002 à 00:42. (lien). Évalué à 14.

      FAUT LE LANCER EN ROOOOOT

      enfin bon, XP est lui aussi livré en (quasi-)multi-utilisateurs, on apporte enfin des vraies technos à ceux bouseux, et va voir sur les forums HFR: ils se logguent tous en root. Le seul type a un semblant de cerveau et qui se crée un deuxième compte admin au cas où le premier serait planté se prend pour un caïd, les autres le prennent pour un parano (genre "mais heu je m'en fous moi, d'abord faut le réinstaller toutes les semaines alors une fois de plus ou de moins...")

      bon je caricaturise un peu, de plus les types qui trainent sur HFR sont *particulièrement* atteints!!!

      Mais il ne faut pas croire que ce genre d'utilisateurs n'en viendra pas à linux un jour ou l'autre (je dirais presque, malheureusement!)

      • [^]Re: ca y est!

        Posté par pas_moi () le 15/03/2002 à 07:37. (lien). Évalué à 8.

        Quand tu sais que sous XP certains jeux ne peuvent être lancés qu'en tant qu'administrateur, ça donne une bonne idée du modèle de sécurité utilisé sur ce système de m

        -1 mon clavier se blo

        • [+] [^]Re: ca y est!

          Posté par pasBill pasGates () le 15/03/2002 à 07:48. (lien). Évalué à -3.

          Quand tu sais que sous XP certains jeux ne peuvent etre lances qu'en tant qu'administrateur, ca donne une bonne idee du fait que le jeu est mal programme.

          Mais c'est tellement plus simple que rejeter la faute sur XP.

          • [^]Re: ca y est!

            Posté par Aza () le 15/03/2002 à 08:18. (lien). Évalué à 9.

            Faut aussi dire que c'est tellement chiant de bosser sous windows 2000/XP sans etre admin que je comprends qu'on le fasse
            Sous windows 2000 si tu veux installer un soft alors que tu n'est pas admin tu dois le renomer setup.exe pour qu'il accepte de t'afficher l'option "installer comme administrateur". Vachement logique. Si je veux faire une tache nécessitant d'etre admin (au hasard mettre à jour le windows) par défaut j'ai pas trouvé l'équivalent de su, je dois me délogguer et me reloguer en admin pour installer ce p# de patch. Vu le nombre de patch qui sortent en ce moment et les correctifs des patchs (y'a eu cinq version du bulletin MS02-006 vous vous pourriez vous relire...) on passerait son temps a se deloguer en admin.
            Par pitié dis moi que je me trompe et que sous windows 2000 il existe l'équivalent d'un su quelque part dans le système.

            • [^]Re: ca y est!

              Posté par pasBill pasGates () le 15/03/2002 à 08:26. (lien). Évalué à 4.

              runas.exe est le medicament qui guerrira tes souffrances.

              • [^]Re: ca y est!

                Posté par Annah C. Hue (page perso, ) le 15/03/2002 à 10:26. (lien). Évalué à 8.

                Non, le vrai remède c'est mke2fs.

              [^]Re: ca y est!

              Posté par vrm (page perso, ) le 15/03/2002 à 08:44. (lien). Évalué à 1.

              en fait c'est surtout que les utilisateurs on attrapé de mauvaises habitudent avec DOS & Win9x.
              mais bosser en user sous NT c'est possible, en utilisant ruas.exe ou su.exe

              [^]Re: ca y est!

              Posté par Sebastien Tanguy (page perso, ) le 15/03/2002 à 23:32. (lien). Évalué à 2.

              > Par pitié dis moi que je me trompe et que sous windows
              > 2000 il existe l'équivalent d'un su quelque part dans le système.

              En plus, de runas, déjà cité, on pourrait aussi signaler la combinaison shift+<clic droit> qui offrira un joli menu contenant l'entrée « Exécuter en tant que ... ».

              seb.

              • [^]Re: ca y est!

                Posté par Anonyme () le 16/03/2002 à 14:02. (lien). Évalué à 1.

                D'ailleurs, c'est con que ce soit caché derrière un shift+clic droit...

            [^]Re: ca y est!

            Posté par pas_moi () le 15/03/2002 à 10:52. (lien). Évalué à 8.

            Pardon, c'est sûrement de la faute des développeurs des jeux s'ils marchaient très bien sous Windows 98 (le système MS le plus récent à l'époque où ils sortaient) et s'ils ne marchent plus sur XP ou 2000... D'ailleurs, sur la boîte de ces jeux, c'est marqué "Designed For Windows" (ou je ne sais plus quel vignette à base de fenêtre) donc c'est normal que ça ne marche pas sous Windows.

            On ne va quand même pas reprocher aux développeurs de jeux le fait que Microsoft ne sache pas rendre leurs systèmes compatibles entre eux.

            • [^]Re: ca y est!

              Posté par kalahann () le 15/03/2002 à 11:00. (lien). Évalué à 3.

              On ne va quand même pas reprocher aux développeurs de jeux le fait que Microsoft ne sache pas rendre leurs systèmes compatibles entre eux

              on ne peut plus vraiment leur opposer cet argument, vu que maintenant win9x et nt c'est la même chose. De toute façon, jouer sous nt avant, c'était vraiment à la limite du possible...

              Et si certains jeux ne tournent qu'en admin, c'est que les mecs programment mal.
              Peut-être aussi que windows est mal architecturé et que ça pousse les développeurs à faire des trucs porcs qui ne marchent que sous root... mais on n'en sait rien.

              • [^]Re: ca y est!

                Posté par pas_moi () le 15/03/2002 à 11:40. (lien). Évalué à 10.

                1- des développeurs font un logiciel qui marche sur un système
                2- un société sort des «mise à jour» de ce système, maj soit-disant compatibles
                3- le logiciel ne marche plus comme avant

                Il est évident que dans ce cas il s'agit d'une mauvaise programmation de la part des développeurs du logiciel... ou alors faut m'expliquer comment les développeurs pouvaient être au courant de la future gestion des droits dans le système.

                Pendant une époque, j'ai développé sous Windows, et l'un des trucs qui m'a le plus dégouté, c'est que les Knowledge Base pour les développeurs sont énormes et passent leur temps à expliquer comment contourner des bugs en fonction des systèmes... Ce qui me gonfle, c'est que plutôt que de résoudre certains bugs, Microsoft préfère expliquer comment les contourner, parce qu'autrement la plupart des logiciels qui contournent ces bugs ne marcheraient plus lorsque les bug seraient corrigés. C'est aussi ça la philosophie logiciel proprio: étant donné que l'on ne publie pas les sources, il faut faire le moins de changements possibles dans les libs sinon une grosse palanquée de logiciels est à revoir, donc il vaut mieux expliquer comment contourner le bug (c'est ce que j'appelle le "développement par rustine", 80% du temps de codage étant passé à rustiner son propre code à cause de bugs déjà connus).

                • [^]Re: ca y est!

                  Posté par Sylvain Rampacek (Jabber id, page perso, ) le 15/03/2002 à 11:59. (lien). Évalué à 2.

                  plutôt que de résoudre certains bugs, Microsoft préfère expliquer comment les contourner

                  C'est vrai que c'est pas génial...

                  Mais faut prendre en compte aussi que les bugs sont existants et que certaines personnes du grand public ont acheté et l'OS buggé et un logiciel/jeu d'un autre éditeur.
                  Ce jeu/logiciel doit donc prendre en compte ce cas... car s'il affiche une gentille boite en marquant, télécharger le patch n°XYZ sur tel site... le gars il risque de dire que le soft ne fonctionne pas.

                  Donc voilà, c'est pas la meilleur méthode, mais il faut faire avec.

                  • [^]Re: ca y est!

                    Posté par pas_moi () le 15/03/2002 à 13:53. (lien). Évalué à 7.

                    c'est pas la meilleur méthode, mais il faut faire avec

                    Je ne vois pas pourquoi il faudrait faire avec... parce que le système est vendu à des millions d'exemplaires?

                    En ce moment, je fais pas mal de HTML et étrangement, IE est l'un des navigateurs les plus pourris qui soit... sauf si on prend le temps d'installer les Mo de patchs disponibles sur WindowsUpdate, auquel cas on arrive à avoir quelque chose qui peut presque devenir utilisable. Oui, mais les utilisateurs de base n'installeront jamais ces patchs, et donc j'aurai beau faire du code HTML valide avec des CSS valides, le rendu sera toujours beurkbeurk. Pour obtenir ce que l'on veut, on est bien souvent obligé d'utiliser un HTML pas très standard (MS devrait se faire leur propre DTD). Il y en a qui trouvent ça normal d'être obligé de développer n'importe comment, sans respecter les RFC et autres normes, et bien moi non (et certains collègues commencent à comprendre pourquoi, depuis que notre site est tout cracra à cause du code HTML non standard mais qui marchait sur les anciens IE).

                  [+] [^]Re: ca y est!

                  Posté par pasBill pasGates () le 15/03/2002 à 18:01. (lien). Évalué à -2.

                  NT et Win9x sont deux systemes d'exploitation DIFFERENTS.

                  Simplement NT est compatibles avec Win9x, ca veut pas dire que tout tourne a 100%.

                  Ceux qui ne suivent pas les guidelines de MS et qui font des hacks car ils ont vu que sous Win9x ca "marchait quand meme", ils en sont pour leurs frais.

                  Quand a la philo du logiciel proprio, elle est la meme que dans le libre, si tu changes le comportement d'une lib, tu fous la merde partout, et que ce soit dans le libre ou le proprio, faut de sacres raisons pour faire ca quand ca touche 2000 softs voire plus.

                  • [^]Re: ca y est!

                    Posté par Stone Tramo () le 17/03/2002 à 17:25. (lien). Évalué à 1.

                    Pq est ce que ie6 ne tourne pas sous win 95 alors? J'ai vut qu'il tournait sous 2000 et xp, ms utiliserait il des hacks?

                    • [^]Re: ca y est!

                      Posté par pasBill pasGates () le 18/03/2002 à 02:20. (lien). Évalué à 2.

                      Voyons...

                      Est-ce que tous tes softs Linux tournent sur une distrib avec libc5 et kernel 1.2.13 ?

                      Non.

                      Ce sont des hacks ? Non.

                      Ils tirent profit de features qui sont dans les nouvelles versions et qui ne sont pas presentes dans les anciennes versions.

                      Autre possibilite:

                      Redhat cree encore des packages pour Redhat 4 et 5 ? Non

                      Pourquoi ?

                      Parce qu'il ne supporte plus cet OS, ou il le supporte uniquement du point de vue correction de bugs importants genre securite.

      [^]Re: ca y est!

      Posté par alenvers () le 15/03/2002 à 09:21. (lien). Évalué à 2.

      Pas tout à fait vrai. Tu peux infecter les binaires utilisateur. Peut-être que un jour tu feras un make install pour ce binaire (tout développeur à déja fait ça)...