begin process at 2012 05 25 09:52:13
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Assembleur

 > 

Processeurs

 > 

X86

 > 

question de sécurité


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

question de sécurité

mercredi 7 mars 2007 à 16:06:41 | question de sécurité

deck_bsd

Membre Club
Yop,

Voila j'ai apris récemment que le flag IF (int flag) quand il est à 0 stop toutes les interruptions matériels , donc la clock fonctionne plus , le clavier non plus , enfin bref tout les périphérique connectés aux 2 8259 (je ne sais plus si NMI et reset sont concerné). Et il existe en ASM une instruction (CLI) qui met ce flag à 0. Ma question est la suivante, j'espère que il y à une sécurité à cela :s si oui laquelle ? car en plus ds le cadre scolaire, on va devoir programmer un dispatcher et tout le toutim et donc cette fonction va aparètre ds le code et donc si je test chez moi cava pas le faire :D . Donc voila je me demandai si windows intégrai une sécurité à cela :D


++
deck_bsd
___________________________________
[ [ Lien ]]
mercredi 7 mars 2007 à 16:38:47 | Re : question de sécurité

_dune2_

Membre Club
Salut,



Pour ce qui concerne les interruptions concernées par CLI/STI la datasheet de Intel nous donne la description suivante :
************************************
If protected-mode virtual interrupts are not enabled, CLI clears the IF flag in the EFLAGS register. No other flags are affected. Clearing the IF flag causes the processor to ignore maskable external interrupts. The IF flag and the CLI and STI instruction have no affect on the generation of exceptions and NMI interrupts.
When protected-mode virtual interrupts are enabled, CPL is 3, and IOPL is less than 3; CLI clears the VIF flag in the EFLAGS register, leaving IF unaffected.
************************************

Normalement, une application dans l'espace utilisateur n'a pas le privilège 3, il faut être dans l'espace "kernel" pour celà (on trouve d'ailleur l'utilisation de CLI/STI essentiellement dans les handlers d'interruption, donc dans le contexte noyau avec les privilèges qui en découlent).
Je parle pour linux/unix, mais je pense que Windows2000/XP/2003/Vista doivent fonctionner sur ce principe aussi ... c'est principe même de la protection par gestion de privilège sur les CPUs modernes. (Attention, Win95/98 ne gèrent pas ces contextes il me semble !! d'où leurs vulnérabilité d'ailleur ;) ).

D'ailleurs la datasheet est clair sur ce point de protection :

************************************
Protected Mode Exceptions
#GP(0) If the CPL is greater (has less privilege) than the IOPL of the current
program or procedure.
************************************

#GP(0) étant le "General Protection Fault" bien connu sous le doux nom de GPF ;)

Donc la question de la protection de windows me semble résolu ...
Par contre, si le but des TP est de réaliser des drivers et d'utiliser CLI/STI ... alors là, c'est une autre question ... c'est un peu comme si tu donnais les clefs de ton appart à un inconnu en lui disant de ne pas entrer chez toi :)


Gentoo... que du bonheur ...
mercredi 7 mars 2007 à 16:47:27 | Re : question de sécurité

deck_bsd

Membre Club

mmm oui le kernel mode sous NT , oui effect 95 et 98 non pas cette architecture. Pourtant l'asm étant un langage de ba niveau je pensai que cela était possible, surtout que une bête disquette de boot avec le prog asm ferai l'affaire, vu que IF stop le intérruptions matériels. Mais oui ok sous NT pas possible alors , c'est bien ce que je voulai savoir, merci bien.
++
deck_bsd
___________________________________
[ [ Lien ]]


Cette discussion est classée dans : question, sécurité, ds, deck, flag


Répondre à ce message

Sujets en rapport avec ce message

softice, winice, ds, ..... [ par raoulli ] salut a vous.Juste une petite question, car j'ai fini maintenant dans mon dernier projet.Pourquoi, je ne vois rien a propos de si, vous en etes alergi Double question : Dual Core et Heap [ par epineurien ] Salut !J'aurais deux questions complétement différentes :1) Comment fait-on pour gérer les processeurs double coeur (ou plus) en ASM ?2) J'utilise bea Programme en C [ par smasher81 ] Je ne programme pas vraiment en assembleur(Seulement le C.. basic..) mais j'ai une question bête à poser : Est-ce qu'on peut lancer un programme écr VBA:vb:Exel [ par vbnetvb ] bonjour J'aimerais bien passer mes nobles sentiments de respect envers tous les membres de CodeS-SourceSje suis un débutant VBA/VB , j tp [ par rajabo ] je suis débutante en assembleur et je veux ecrire un programme qui fait la saisie d'une suite de nbres à stocker ds 1 tableau,la saisie s'arrete lors  question en assembleur urgent [ par ham1984 ] salut a tout !! bein je suis débutant en assembleur et je veux savoire comment réliser un programme qui trouve les solution d'une equation de 2ème ° j question sur le language asm [ par dyroj ] bonjour,j'ai qulque question sur l'asm :-quand je fait un : mov ax, 10 , quesqui va dans le registre (ladresse de 10 dans la ram, ou 10).-pourquoi se en quel langage est ecrit ce programme [ par jedilu ] bonjouren quel language est ecrit ce programme car j'ai un probleme pour le lancermerci00629DE5   AE               SCAS BYTE PTR ES:[EDI]00629DE6   9E Inter de sécurité avec PIC 10F200 [ par Jetboy51 ] Bonjour à Tous, Voila, je me considère "pas mauvais du tout" (!) en RF Hyper, mais null en programmation des microcontroleur ! Je cherche pour un gros


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,373 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales