Windows peut il controler un prog executé en assembleur? - ASM - Programmation
Marsh Posté le 02-09-2004 à 17:42:09
pour le disque dur je sais pas, mais par exemple pour régler l'heure et la date (INT 21h fonctions 2Bh et 2Dh), si sous Windows XP tu es sous un compte limité ca ne marchera pas.
Il y a donc bien un contrôle de l'os, même sur des programmes en assembleur
Marsh Posté le 02-09-2004 à 18:25:48
deumilcat a écrit : et si le virus logge comme administrateur? |
alors il fait ce qu'il veut avec les droits admin
Et vu que 80% du monde sur S&R se loggue en admin, ca sera pas difficile d'avoir ces droits
Marsh Posté le 02-09-2004 à 18:35:19
void_ppc a écrit : alors il fait ce qu'il veut avec les droits admin |
sauf bidouiller n importe quoi sur le hardware du DD puisque meme un virus s execute en UserMode et que y a que les progs systemes en Kernel Mode qu on acces direct au hardware
je viens de lire ca:
Citation : Kernel mode is a privileged mode. Those parts of NT that execute in kernel mode, such as device drivers and subsystems such as the Virtual Memory Manager, have direct access to all hardware and memory. |
y a pas moyen pour un virus de bidouiller un driver d ecriture disk afin que sa bidouille en ASM passe sans probleme de controle du noyau de l OS? (je cherche je cherche )
Marsh Posté le 02-09-2004 à 18:52:35
deumilcat a écrit : et si le virus logge comme administrateur? |
Contrairement à Unix ou root = Dieu, l'Admin sous Windows ne peut pas tout faire. Aucune application n'a le droit d'écrire sur un port physique. Cela dit, ça l'empêche pas d'utiliser les API classiques pour écrire ce qu'elle veut sur le DD...
Citation : y a pas moyen pour un virus de bidouiller un driver d ecriture disk afin que sa bidouille en ASM passe sans probleme de controle du noyau de l OS? (je cherche je cherche ) |
Patcher un driver en cours d'utilisation, ca m'étonerais. Mais y'a + simple : tu peux intercaller ton propre driver au dessus/dessous d'un autre. Mais là encore, c'est quoi l'utilité, puisque même depuis Explorer rien t'empêche de bouziller tes données.
Faut arrêter de mystifier l'assembleur.
deumilcat> tu mélanges bcp de choses. Windows n'a rien à voir avec C++. C++, en gros, c'est un générateur de code assembleur. Ouvrir un fichier, que tu le codes en assembleur, en C++ ou VB, ca change rien, c'est l'API Windows qui sera appelée. Et bien sûr que Windows peut contrôler les instructions machines, grace au mode protégé des processeurs. Les procs ont différents niveaux de privilèges, Windows et les drivers peuvent tout faire, les applis sont en user mode => peuvent faire ce que Windows leur autorise via les possibilités du processeur.
Il n'y a pas grand chose que l'on puisse faire en asm et pas en C++.
Marsh Posté le 02-09-2004 à 18:57:36
Citation : Mais en tout etat de cause je vois comment Windows controle l execution du C++ par controle de compilation puis par integration des librairies à son architecture, |
ben pas moi
Marsh Posté le 02-09-2004 à 19:03:58
Il faut vous documenter sur le mode protégé par rapport au mode réel.
Sur le papier, Windows reçoit une exception lorsqu'un programme ne faisant pas partie de l'OS exécute "certaines" instructions :
- int xx
- in / out
- tout accés mémoire en dehors de sa propre zone
- le cas des tâches DOS est à part (elles peuvent exploser tout ce qu'elle veulent tant qu'elles se limitent à la machine virtuelle DOS).
Windows peut donc décider d'arrêter le processus en cause, et je ne suis pas sûr qu'être loggé en admin ou non intervienne sur ce point.
Ah, quelle belle sécurité nous offre Micro$oft ! Les concepteurs de virus n'arriveront jamais à percer un système aussi sûr...
Marsh Posté le 02-09-2004 à 19:09:43
HelloWorld a écrit :
|
bon ben tant pis (et tant mieux )
Marsh Posté le 03-09-2004 à 00:05:38
a mon avis, avec l'assembleur, enfin plutot avec le code machine, on peut faire ce qu'on veut, y compris repositionner le proc en mode reel, et donc faire des e/s sur n'importe quel perif
c'est clair qu'il faut toucher un peu, mais c'est pas tres dur, ne serait-ce qu'en passant par le bios (et ses redirections)
mais bon on ne va pas expliquer tout non plus
Marsh Posté le 03-09-2004 à 00:25:39
chrisbk a écrit : j'ai comme un gros doute |
ben tu sais si le pc le plus recent et le plus rapide actuellement peut faire tourner msdos 2.0 rien qu'avec une disquette, alors on peut tout faire
il ne faut pas oublier que windows n'est pas dans le proc, mais sur un disque
Marsh Posté le 03-09-2004 à 00:36:43
purée pas si vite j'arrive plus a cocher les cases de mon loto pipo
Marsh Posté le 03-09-2004 à 08:32:44
Il parait que seul Ringo Starr peut exécuter du code privilégié, quelqu'un a des informations à ce sujet ?
Marsh Posté le 03-09-2004 à 08:54:14
printf a écrit : Il parait que seul Ringo Starr peut exécuter du code privilégié, quelqu'un a des informations à ce sujet ? |
Ca s'écrit Ring0 Starr
Marsh Posté le 03-09-2004 à 09:09:01
prorel a écrit : ben tu sais si le pc le plus recent et le plus rapide actuellement peut faire tourner msdos 2.0 rien qu'avec une disquette, alors on peut tout faire |
oh le joli topac que voilà...
Marsh Posté le 03-09-2004 à 10:00:43
mais qu'est ce que c'est que ce tomic bordayl
à part la réponse d'HelloWorld, j'ai jamais vu un tel ramassis de conneries et de contres vérités rassemblées dans un seul topic
Marsh Posté le 03-09-2004 à 10:02:35
euh de toutes façons, à part certains virus genre le Saddam sur Amiga, il y en a qui bouffent les disques durs?
Marsh Posté le 03-09-2004 à 10:35:11
Bon, let's face it : personne ici ne sait vraiment de quoi il retourne, et on reste au niveau des suppositions et des suputations. On est, sauf exception, dans les limbes et dans le flou.
Marsh Posté le 03-09-2004 à 10:37:33
+1 avec Moktar, c'est un tomic inutile, pour la simple raison que ce qui intéresse les créateurs de virii de nos jours, c'est que leur "création" se répande le plus possible, donc il n'ont *aucun* intérêt à détruire la machine qui les a choppé !
Marsh Posté le 03-09-2004 à 11:12:44
prorel a écrit : a mon avis, avec l'assembleur, enfin plutot avec le code machine, on peut faire ce qu'on veut, y compris repositionner le proc en mode reel, et donc faire des e/s sur n'importe quel perif |
Ben voyons. Vous avez pas compris que Windows n'y est pour rien là dedans. C'est les mecs d'Intel qui ont bossé à faire un processeur qui puisse permettre de créer des OS fiables. Et les mecs d'Intel, c'est eux qui ont inventé l'assembleur 80x86, alors ils ont du faire ça bien. Tu vois, par exemple, le BIOS, apparement mystique et super puissant, ben sous Windows si un programme DOS appelle des fonctions du BIOS tu sais ce qu'il se passe ? Eh beh l'appel est intercepté par WIndows, et même là, c'est les API Windows qui prennent le relais ! => mode virtuel du processeur. C'est pas pour rien qu'il s'appelle virtuel.
Quant à un virus qui remplace le driver filesystem par le siens, faut arrêter le délire. Faut déjà être administrateur, mais surtout c'est un des drivers les plus complexe à développer, le PC bootera même pas.
Et n'oubliez pas qu'un virus qui bouzille entièrement le PC dès qu'il est exécuté n'est pas dangereux, puisqu'il bouzille son seul moyen d'exister et de se propager. Pas de propogation, pas de virus.
Marsh Posté le 03-09-2004 à 16:20:45
HelloWorld a écrit : Ben voyons. Vous avez pas compris que Windows n'y est pour rien là dedans. C'est les mecs d'Intel qui ont bossé à faire un processeur qui puisse permettre de créer des OS fiables. Et les mecs d'Intel, c'est eux qui ont inventé l'assembleur 80x86, alors ils ont du faire ça bien. Tu vois, par exemple, le BIOS, apparement mystique et super puissant, ben sous Windows si un programme DOS appelle des fonctions du BIOS tu sais ce qu'il se passe ? Eh beh l'appel est intercepté par WIndows, et même là, c'est les API Windows qui prennent le relais ! => mode virtuel du processeur. C'est pas pour rien qu'il s'appelle virtuel. |
je ramenerais pas ma fraise pour tout ce qui est machine virtuel/mode kernel/mode utilisateur/APi ect.. Quoiqu ayant un peu potassé l'achitecture NT hier soir ca m'a l air faisable de bidouiller un driver du DD mais bon
mais par contre faut arreter avec le mythe du virus qui detruira pas la machine parce que ca serait son seul moyen de propagation: il suffit que le virus soit réglé pour ne se déclencher qu a une certaine date en se basant sur l horloge du PC (le hacker estime un délai de propagation suffisant) et toutes les machines touchées petent au meme moment)
Marsh Posté le 03-09-2004 à 16:22:14
ReplyMarsh Posté le 03-09-2004 à 16:38:44
HelloWorld a écrit : Ben voyons. Vous avez pas compris que Windows n'y est pour rien là dedans. C'est les mecs d'Intel qui ont bossé à faire un processeur qui puisse permettre de créer des OS fiables. Et les mecs d'Intel, c'est eux qui ont inventé l'assembleur 80x86, alors ils ont du faire ça bien. Tu vois, par exemple, le BIOS, apparement mystique et super puissant, ben sous Windows si un programme DOS appelle des fonctions du BIOS tu sais ce qu'il se passe ? Eh beh l'appel est intercepté par WIndows, et même là, c'est les API Windows qui prennent le relais ! => mode virtuel du processeur. C'est pas pour rien qu'il s'appelle virtuel. |
visiblement tu ne connais pas grand chose aux virus, tu ne sort que des babanlités et des contres verités, c'est affligeant
deja il faudrait deja que tu te mette d'accord avec..toi-meme
on n'ecrit pas
Citation : Vous avez pas compris que Windows n'y est pour rien là dedans |
puis un peu plus loin
Citation : si un programme DOS appelle des fonctions du BIOS tu sais ce qu'il se passe ? Eh beh l'appel est intercepté par WIndows, et même là, c'est les API Windows qui prennent le relais ! |
si windows n'y est pour rien, ce que je confirme, il ne peut detourner rien du tout
quand aux louanges sur les superconcepteur de 8086 , je te rappel que 80% des instructions du P4 sont issue du 8086, et qu'a l'epoque des premiers virus sous dos, ceux-ci etaient destructifs et ne se propageaient qu'a travers les disquettes
Citation : Quant à un virus qui remplace le driver filesystem par le siens, faut arrêter le délire. Faut déjà être administrateur, mais surtout c'est un des drivers les plus complexe à développer, le PC bootera même pas. |
t1 l'incompetant
1 - le boot n'a rien a voir avec l'os, c'est d'abord une adresse en dur qui renvoi vers le bios qui possede un mini loader capable de lire le premier secteur du disque ou de la disquette, et les infos contenus dans le premier seceteur permettent d'aller plus loin
donc si tu ne connait pas l'informatique, evite de raconter n'importe quoi, merci d'avance
2 - si je mets une disquette msdos, montres-moi ou je dis que je suis administrateur??, c'est n'importe quoi!!!
3 - si tu regarde un driver de DD, tu verrais qu'il s'appuye aussi sur le bios, tout comme les bons virus
Marsh Posté le 03-09-2004 à 16:45:02
prorel a écrit : visiblement tu ne connais pas grand chose aux virus, tu ne sort que des babanlités et des contres verités, c'est affligeant
|
dis donc toi qu a l air compétent, tu crois que c est possible d ecrire un virus qui crame un cpu en arretant le ventilo et en desactivant la protection antiburn? (mon interrogation de base etant: si c est possible pourquoi aucun taré ne l a jamais fait. Le fait que ce ne soit pas possible serait une explication logique )
Marsh Posté le 03-09-2004 à 17:02:55
la gestion des ventilo est faite au niveau de la carte mere, et je ne pense pas qu'on puisse agir dessus via le proc, il faudrait qu'un fabricant de cm soit assez fou pour mettre un port disponible relié a un circuit de gestion de ventillo
je sais qu'a une epoque il y avait un vieux fantasme qui faisait croire au'on pouvait faire cramer un proc, mais ca n'a jamais ete demontré, surtout qu'avant de "cramer", le proc tombera en panne, et donc risque d'arreter le "processus"
Marsh Posté le 03-09-2004 à 17:03:42
prorel a écrit : visiblement tu ne connais pas grand chose aux virus, tu ne sort que des babanlités et des contres verités, c'est affligeant
|
Je sens le topic d'anthologie que vient tout doucement là...
Et l'écran, il te pète pas à la gueule aussi des fois ?
Marsh Posté le 03-09-2004 à 17:09:42
t1 encore un qui est né avec windows, et qui s'imagine qu'il n'existe rien a part ce monde
demande a ton grand-pere il te racontera le monde ou les 8086 tournaient sous cp/m, ou meme md-dos n'existait pas
ca te donnera un peu d'humilité, tu verras ca ne te ferra pas de mal
Marsh Posté le 03-09-2004 à 17:13:02
prorel a écrit : si windows n'y est pour rien, ce que je confirme, il ne peut detourner rien du tout [...] quand aux louanges sur les superconcepteur de 8086 , je te rappel que 80% des instructions du P4 sont issue du 8086, et qu'a l'epoque des premiers virus sous dos, ceux-ci etaient destructifs et ne se propageaient qu'a travers les disquettes |
Trop bien! L'execution d'interruptions mode réel en mode protégé sur un 8086
Nous avons notre maitre
Marsh Posté le 03-09-2004 à 17:14:12
prorel a écrit : la gestion des ventilo est faite au niveau de la carte mere, et je ne pense pas qu'on puisse agir dessus via le proc, il faudrait qu'un fabricant de cm soit assez fou pour mettre un port disponible relié a un circuit de gestion de ventillo |
Ah ouais, on peut pas toucher aux ventilos, j'ai du rêver que SpeedFan existait moi
prorel (je peux t'appeler Jean Kevin? on est potes après tout), tu devrais arrêter, tu es ridicule
Marsh Posté le 03-09-2004 à 17:18:30
Masklinn a écrit : Ah ouais, on peut pas toucher aux ventilos, j'ai du rêver que SpeedFan existait moi |
ben alors oh mon bon maitre, veneré puit de science, expliques a tous ici present comment marche speedfan
Marsh Posté le 03-09-2004 à 17:21:52
BMenez a écrit : Trop bien! L'execution d'interruptions mode réel en mode protégé sur un 8086 |
t1 encore un qui n'a rien compris
depuis quand le boot positionne le proc d'office en mode protégé?
as-tu deja vu des virus qui s'attaquent au dd, tu crois quoi qu'ils fotn ca de suite??, tu rigole, c'est au redemarrage qu'ils bouyzille tout, quand ils sont en mode reel
faut suivre un peu et ne pas sauter les etapes pour faire croire qu'on s'y connait
Marsh Posté le 03-09-2004 à 17:22:41
prorel a écrit : ben alors oh mon bon maitre, veneré puit de science, expliques a tous ici present comment marche speedfan |
Citation : but its main feature is that it can control the speed of the fans (depending on the capabilities of your sensor chip and your hardware) |
Le ventilo a plusieurs vitesses possibles, mais l'arrêt et le tourniquet à 50 000 000 de tours par minute n'en font pas partie... Il est impossible d'arrêter ou d'accélérer un ventilo jusqu'à mettre en danger le proco, c'est évidemment une limite hardware... Idem pour les DD ou n'importe quoi d'autre.
C'est aussi ridicule que prétendre qu'on peut monter la luminosité d'un écran jusqu'à le faire claquer...
Un virus ne va pas inventer un potard sur ton écran, ni changer les capacités de ton ventilo ou de ton DD.
Marsh Posté le 03-09-2004 à 17:24:31
Masklinn a écrit : Ah ouais, on peut pas toucher aux ventilos, j'ai du rêver que SpeedFan existait moi |
oui d autant que ma question a la base vient justement du fait que Speedfan existe..
Marsh Posté le 03-09-2004 à 17:25:32
l'histoire de l'ecran est par contrte bine reel, non pas l'explosion, ca c'est un troll, par contre, a une epoque (lors des premiers ecran vga), on avait des cartes qui montaient assez haut en frequence pour qu'un ecran (ancien) ne puisse plus suivre et tombe en panne, mais bon ca n'a jamais implosé
Marsh Posté le 03-09-2004 à 17:30:13
prorel a écrit : l'histoire de l'ecran est par contrte bine reel, non pas l'explosion, ca c'est un troll, par contre, a une epoque (lors des premiers ecran vga), on avait des cartes qui montaient assez haut en frequence pour qu'un ecran (ancien) ne puisse plus suivre et tombe en panne, mais bon ca n'a jamais implosé |
Ben peut être... Mais bon, c'est l'écran qui est mal foutu à ce moment là... Et vu que personne n'a le même...
Bref, il est impossible de nicker que ce soit le ventilo, le DD, la CG, l'écran ou je ne sais quoi d'autre... D'autant que chaque PC ou presque a des périph différents des voisins... Donc déjà, les drivers en assembleur je ne sais pas quoi, ben vous pouvez oublier...
Un virus, ce qui l'intéresse, c'est pas de toucher le possesseur de tel ou tel périph, c'est de pouvoir contaminer le max de monde, quelque soit le matos. Donc, les concepteurs de virus cherche ce qu'il y a de commun et d'exploitable --> windows + outook express + IE (présent d'office ou presque dans les ordis vendus).
Marsh Posté le 03-09-2004 à 17:32:09
prorel a écrit : l'histoire de l'ecran est par contrte bine reel, non pas l'explosion, ca c'est un troll, par contre, a une epoque (lors des premiers ecran vga), on avait des cartes qui montaient assez haut en frequence pour qu'un ecran (ancien) ne puisse plus suivre et tombe en panne, mais bon ca n'a jamais implosé |
Ils ne tombaient pas en panne, le signal en entrée sortait de leurs capacités de traitement et ils n'affichaient plus rien c'est tout
Il suffisait de revenir aux anciens paramètres et ils repartaient comme en 40
Je le sais, puisque j'ai collé du 1600*1200 en 90Hz sur un 13" datant des années 90 (c'était l'écran d'un packard bell P75!), l'écran a rien affiché, j'ai collé un autre écran, changé les paramètres, remis le vieux machins hop no problem
Après, le problème est de revenir aux anciens paramètres quand t'as pas d'écran dispo qui gère les paramètres modifiés (et qui est donc capable d'afficher une image te permettant de modifier les dits paramètres)
Marsh Posté le 02-09-2004 à 17:23:11
salut!
à la suite d une discussion dans le forum "sécurité" où on se posait la question de savoir si il était possible pour un virus d utiliser une routine assembleur exportant directement des millions d'octets bidons sur le port de sortie du DD afin d'en detruire les données sans aucune possibilité de réparation (on est parano au forum "sécurité" )
certains arguent que Windows ne laisserait pas faire ce genre de truc alors que personnellement je pense que Windows ne peut pas empecher un langage aussi "brut" que le langage machine d ecrire n importe quoi n importe ou tant que ca n est pas directement le hardware qui l en empeche. ma supposition est que la fonction save de windows ou n importe quel fonction de vb ou c++ permettant d enregistrer sur un DD est en fait executé au niveau machine sous la forme moins "humaine" d un paquet d instructions du genre
OUT &NUMERO DE PORT,&VALEUR D'OCTET
J ai des notions d assembleur (lointaines cela dit) sur des machines genre avec des cpu ZX80 et donc ma supposition vient de là
Mais en tout etat de cause je vois comment Windows controle l execution du C++ par controle de compilation puis par integration des librairies à son architecture,
mais je vois mal comment il peut empecher un prog assembleur de faire ce qu il veut au niveau machine... Que ca plante quand Windows reprend la main je veux bien mais le mal serait fait sur le DD, non?