begin process at 2010 02 09 21:13:36
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Assembleur

 > 

Archives

 > 

Autres asm

 > 

Placer l'Interrupt Flag (IF) a zéro en Ring3 et sous XP !


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

Placer l'Interrupt Flag (IF) a zéro en Ring3 et sous XP !

dimanche 23 novembre 2003 à 10:26:07 | Placer l'Interrupt Flag (IF) a zéro en Ring3 et sous XP !

toto8966

La question est assez parlante ...
et n'est pas anodine ... croyez le bien !
Bien évidemment, en Ring3 sous Xp, CLI est interdit !
Alors ?
Comment trouver l'astuce ou le chemin détourné pour
pouvoir placer ce flag IF a zéro ... ( sous ring3 et XP) ...
Celui qui a une solution, c'est un as ! clair !
Avant de penser que vous avez une solution ...
essayez la vite fait ... car ce n'est pas aussi évident que l'on pourrait le penser. Certaines solutions qui donneraient l'impression de pouvoir arriver a cela sans problème ...
Ne fonctionne pas du tout !
Toutes les idées sont les bien venues,
et merci, merci, a tous et toutes ....
Robby,
dimanche 23 novembre 2003 à 13:17:21 | Re : Placer l'Interrupt Flag (IF) a zéro en Ring3 et sous XP !

BruNews

Administrateur CodeS-SourceS
J'ai deja fait tout un tas de vaines tentatives, le seul moyen correct est d'utiliser BlockInput(1) mais faut voir si correspond a tes besoins.
BruNews, ciao...
dimanche 23 novembre 2003 à 14:28:51 | Re : Placer l'Interrupt Flag (IF) a zéro en Ring3 et sous XP !

toto8966

J'ai fait connaissance avec cette fonction BlockInput !
Je ne connaissais pas ...c'est déjà ca !
Mais sinon, non ... ca suffit pas !
BlockInput ne place pas l' interrupt flag a 0.

dimanche 23 novembre 2003 à 20:04:08 | Re : Placer l'Interrupt Flag (IF) a zéro en Ring3 et sous XP !

BruNews

Administrateur CodeS-SourceS
A sur qu'il ne le place pas, il faut passer en ring0 pour cela mais XP laisse un temps si court qu'on ne peut rien faire.
BruNews, ciao...
dimanche 23 novembre 2003 à 20:18:39 | Re : Placer l'Interrupt Flag (IF) a zéro en Ring3 et sous XP !

toto8966

Oui, Ring0 est, en principe, le seul état dans lequel on puisse zéroter facilement le IF via l'instruction CLI, ok !
Je ne comprends pas cette phrase:
mais XP laisse un temps si court qu'on ne peut rien faire.
Que veux tu dire par la ?
Il laisse trop peu de temps quand, quand on fait quoi ?
merci de bien voiloir m'expliquer ta phrase.
Robby,
dimanche 23 novembre 2003 à 20:34:35 | Re : Placer l'Interrupt Flag (IF) a zéro en Ring3 et sous XP !

BruNews

Administrateur CodeS-SourceS
Je parlais en Ring0, on peut passer mais c'est quasi limite qu'on ne peut rien y faire. Nous avons deja effectue pas mal de tests, vois les sources deja publiees ou nous avons eu un debat sur le sujet. Le flag en lui meme n'a plus d'importance, XP a devie les interruptions et les events se produisent mais tu as une faute generale des qu'il s'aperçoit qu'il n'est plus seul en Ring0.
BruNews, ciao...
dimanche 23 novembre 2003 à 20:55:09 | Re : Placer l'Interrupt Flag (IF) a zéro en Ring3 et sous XP !

toto8966

Ah bon !
moi, je passe en Ring0 via diverses méthodes.
1) je hook un service de la table de service n°0 et ensuite Sysenter
2) ou alors je construis une table n°2, depuis ring3.
3) je hook le vecteur n°0 de l' IDT et je passe en ring0 via
un "mov eax,0 + dic eax"
4) CallGate aussi ...
Et je peux rester en ring0 autant de temps que je veux.
As tu positionner le registre FS a 30h quand tu te trouves en
Ring0 ? Car sous XP, Fs est tjs a 38h en ring3 et tjs a 30h en ring0 ! Via un appel Sysenter (table de service n°0 hookée ou table de services n°2), le système place lui meme le registre FS a 30h. Mais je ne sais pas quelle méthode tu utiises ... attention a FS, c'est hyper important. Si tu passes en ring0 en conservant dans FS sa valeur ring3 ... boum!
voila .. a+
dimanche 23 novembre 2003 à 21:20:50 | Re : Placer l'Interrupt Flag (IF) a zéro en Ring3 et sous XP !

BruNews

Administrateur CodeS-SourceS
Derniers essais etaient faits en CallGate mais faudra revoir en verifiant avec tes indications, le prob est que le temps manque pour les delires.
BruNews, ciao...
lundi 24 novembre 2003 à 09:24:11 | Re : Placer l'Interrupt Flag (IF) a zéro en Ring3 et sous XP !

Chrishka

Salut,

Je n'apporterai rien de constructif, mais quand même, j'aimerais réagir, parce que bon, je sais que mon source est loin d'être parfait, mais de là à affirmer qu'on a même pas le temps de faire un cli, c'est quand même une sacré dose de mauvaise foi.
lundi 24 novembre 2003 à 09:44:27 | Re : Placer l'Interrupt Flag (IF) a zéro en Ring3 et sous XP !

BruNews

Administrateur CodeS-SourceS
Ohe Chrishka, faut pas faire d'interpretation sur mes propos pour ensuite taxer de mauvaise foi. Le 'cli' bien entendu passe mais la moindre boucle de temporisation non.
Il n'est pas question d'attaquer qui que ce soit ici, on n'est pas dans les querelles de gamins. Si toto8966 ou qui que ce soit d'autre apporte des lumieres sur un sujet, elles sont les bienvenues.
Sans rancune Chrishka, le but n'etait vraiment pas de te froisser mais de faire avancer le chmilibilic.
BruNews, ciao...

1 2

Cette discussion est classée dans : xp, placer, zéro, flag, ring3


Répondre à ce message

Sujets en rapport avec ce message

Problème de syles Windows XP [ par Nemesis ] Suite à une mauvaise manipulation (c toujours comme ça que ça arrive), j'ai perdu le style de Windows XP (fenètres bleues, etc...) et je retrouve la v Placer là "partie basse" d'un registre 32 bits dans un registre 16 bits ??? [ par Otaku ] Salut, tout est dans le titre, comment faire pour placer la partie basse (LOWWORD) d'une valeur stockée dans le registre EAX dans un registre 16 bits passer en "mono-tache" sous XP ??? [ par toto8966 ] Bonjour a tous,Jaimerais pouvoir passer en mono-tache sous Windows XP, le temps nécessaire a l'exécution d'une routine assembleur et ensuite revenir a Passer en RING0 sous Windows XP ! [ par toto8966 ] Hello, Pour pouvoir placer du code en mode Ring0 jutilise jusqu'a présent le Driver TVicHW32. ( http://www.entechtaiwan.com/tvichw32.htm ) Ca fonction affichage lcd et calculatrice [ par lefrans ] bojour a tous voila mon probleme je doit tj faire cette calculatrice et je suis bloqué, je narrive pas a afficher plusieur chiffre ala suite sur mon l pb de flag [ par rana ] je voudrais savoir comment faire pour mettre le cf a un sachant que je voudrais faire un jump (jc).merci Problème sur les thèmes XP [MASM32] [ par frobinet ] Bonjour,je recherche des infos pour appliquer les thèmes XP en assembleur pour les boutons...J'ai vu qu'il faut utiliser les fonctions OpenThemeData,D Tasm sous win2000 et xp ? Comment programmer en mode protégé ? [ par hamburger_de_dinde ] Y a-t-il moyen de programmer en assembleur sous win2000 ou xp ?Le problème se pose quand je veux accéder à certains emplacements mémoire (0B800h par e in / out windows XP : comment ? [ par cedc ] Bonjour à tousSous windows XP les instruction in / out sont interdites, comment peut on contourner le problème pour lire une adresse. Mon but étant de routines d'interruptions sous XP [ par vecchio56 ] Bonjour, j'aimerais savoir s'il est possible de connaitre l'adresse des routines d'interruptions (j'ai entendu parler de vecteur d'interruptions), et


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
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 : 0,889 sec (4)

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