IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Assembleur Discussion :

Contrôler la séquence de boot


Sujet :

Assembleur

  1. #1
    Membre habitué
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juin 2005
    Messages
    608
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Santé

    Informations forums :
    Inscription : Juin 2005
    Messages : 608
    Points : 145
    Points
    145
    Par défaut Contrôler la séquence de boot
    Bonjour à tous et à toutes,

    Tout dabord, bravo pour ce forum et le site en général, il est rarissime de voir autant de compétences partagées de nos jours.

    Mon problème, ou plutôt ma question du jour est la suivante : est il possible d'envoyer en assembleur les instructions nécéssaires a la PROM d'une station pour que son BIOS, initialement configuré pour booter sur HDD0 et verouillé par MDP, botte directement sur la floppy a l'insertion de celle ci, et ce de manière automatique.

    Je précise que cette manipulation est déstinée à un but de recherche dans le cadre du développement d'une procédure automatisée de reinstallation.

    Merci de vos conseils

  2. #2
    Membre habitué
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juin 2005
    Messages
    608
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Santé

    Informations forums :
    Inscription : Juin 2005
    Messages : 608
    Points : 145
    Points
    145
    Par défaut pour faire plus simple .....
    en fait, je voudrais surtout savoir si c'est chose possible que d'outrepasser la sequence de boot programmée dans le "bios features setup", à noter que l'accès au bios est protégé par mot de passe (pour eviter aux etudiants de faire booter la machine sur autre chose que le HDD0) et si c'est possible, est ce bien en assembleur et vers quelle direction chercher, je ne vois pas exactement par ou commencer .....

    merci

  3. #3
    sdx
    sdx est déconnecté
    Membre régulier Avatar de sdx
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    106
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 106
    Points : 90
    Points
    90
    Par défaut
    Salut !

    Le fait que les BIOS aient des mots de passes ne devrait pas te gêner, puisque le mot de passe n'est demandé que lorsque tu rentre dans le Setup du BIOS, de toute façon, on peut trouver sur internet des astuces pour les virer avec qq I/O

    http://worldserver.oleane.com/heissl.../astuces1.html


    Il faudrait trouver à quel(s) adresse(s) sont stoquées les informations sur la séquense de démarrage dans le CMOS, une fois que tu sais où elles se trouvent, essaye ça :

    Citation Envoyé par http://www.cgsecurity.org/Articles/biospwd/
    Pour lire un octet de la Cmos ou plus exactement une valeur sur 8 bits de la mémoire connectée à l'horloge temps réel, on envoie sur le port 0x70 l'adresse de la cellule que l'on veut lire. Puis, la valeur est lu sur le port 0x71. Pour écrire un octet dans la Cmos, c'est presque pareil, on envoie l'adresse sur le port 0x70 et la valeur sur le port 0x71. Au niveau de la machine, les instructions assembleurs in et out sont utilisées.
    Bon courage

    ps: pour faire quelques recherches, il faudrait que tu connaisse la marque et le modèle de tes BIOS

  4. #4
    Membre habitué
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juin 2005
    Messages
    608
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Santé

    Informations forums :
    Inscription : Juin 2005
    Messages : 608
    Points : 145
    Points
    145
    Par défaut re ...
    mon environnement sera eterogène dans la mesure ou dans une unif, le parc est rarement à 100% homogène.

    Par contre à l'heure actuelle, ma requète est la suivante sur un BIOS donné:

    - par défaut, il est configuré pour booter sur le disque dur et l'accès qu BIOS est protégé par mot de passe.

    - Je veux que, à l'insertion d'une disquette, la station puisse automatiquement booter sur A: et ce sans modifier manuellement la séquence de boot dans le BIOS.

    Je veux qu'ensuite, quand le PC reboote une fois la disquette retirée, il reparte sur sa séquence de boot initiale, à savoir HDD0.

    merci

  5. #5
    Responsable Pascal, Lazarus et Assembleur


    Avatar de Alcatîz
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Mars 2003
    Messages
    7 937
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2003
    Messages : 7 937
    Points : 59 417
    Points
    59 417
    Billets dans le blog
    2
    Par défaut
    Bonjour !

    La structure des données de la mémoire CMOS diffère d'un constructeur à l'autre. De plus, l'information sur la séquence de démarrage est stockée sous forme d'un index dans une liste de possibilités.
    Par exemple :
    1 = A, C, CD-ROM
    2 = C, CD-ROM, A
    3 = SCSI, C, A
    ... etc
    Sachant cela, il ne me paraît pas évident du tout d'aller changer un octet bien précis dans la mémoire CMOS d'une machine indéfinie (à moins de créer un programme différent pour chaque type de machine).

    Par contre, il est possible de sauvegarder une image entière de la CMOS sur une machine et de la recharger à volonté. Pour chaque type de machine, il faudrait (une seule fois) :
    - Sauvegarder une image de la CMOS avec le HD bootable;
    - Sauvegarder une seconde image de la CMOS avec la disquette bootable.
    Il existe des utilitaires (genre Norton Rescue Disk) qui peuvent s'occuper de sauvegarder et charger très facilement l'une ou l'autre image dans la CMOS.

    Enfin, c'est comme cela que je procèderais je pense.
    Règles du forum
    Cours et tutoriels Pascal, Delphi, Lazarus et Assembleur
    Avant de poser une question, consultez les FAQ Pascal, Delphi, Lazarus et Assembleur
    Mes tutoriels et sources Pascal

    Le problème en ce bas monde est que les imbéciles sont sûrs d'eux et fiers comme des coqs de basse cour, alors que les gens intelligents sont emplis de doute. [Bertrand Russell]
    La tolérance atteindra un tel niveau que les personnes intelligentes seront interdites de toute réflexion afin de ne pas offenser les imbéciles. [Fiodor Mikhaïlovitch Dostoïevski]

  6. #6
    Membre habitué
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juin 2005
    Messages
    608
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Santé

    Informations forums :
    Inscription : Juin 2005
    Messages : 608
    Points : 145
    Points
    145
    Par défaut pourquoi pas effectivement
    c'est une piste a explorer, en fait pour l'instant, la premiere etape du projet se limite a UNE station, donc a UN BIOS (paramétré boot sequency HDD0, A,CDROM le tout protégé par MDP), et ce que je veux, c'est :

    - quand j'insère une disquette, la station boote dessus et me lance FDISK

    mon prob etant que le projet exige de ne pas modifier les parametres du BIOS par action manuelle (entrer dans le setup et modifier manuellement la boot sequency)

    pour cela, toute idée est la bienvenue, qu'elle passe par l'ASM ou non (aucun language n'est imposé)

    voili voila

  7. #7
    sdx
    sdx est déconnecté
    Membre régulier Avatar de sdx
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    106
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 106
    Points : 90
    Points
    90
    Par défaut
    Je me permet de demander une précision : la réinstallation automatisée démarre-t-elle quand le PC est allumé (auquel cas tu peux commencer par exécuter le programme qui modifie ton CMOS) ou quand le PC est éteint (auquel cas, se serait (a mon avis) une grosse faille de sécurité que tu puisses faire ce que tu souhaites )

  8. #8
    Membre habitué
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juin 2005
    Messages
    608
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Santé

    Informations forums :
    Inscription : Juin 2005
    Messages : 608
    Points : 145
    Points
    145
    Par défaut RE SDX
    Elle commence effectivement quand le PC est allumé

    cordialement

  9. #9
    Membre expérimenté
    Avatar de Juju_41
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Février 2003
    Messages
    974
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués

    Informations forums :
    Inscription : Février 2003
    Messages : 974
    Points : 1 557
    Points
    1 557
    Par défaut Re: re ...
    Citation Envoyé par Attila54
    - Je veux que, à l'insertion d'une disquette, la station puisse automatiquement booter sur A: et ce sans modifier manuellement la séquence de boot dans le BIOS.
    J'aimerais saisir quelque chose : pourquoi ne pas laisser la séquence de boot [disquette, disque dur], et trouver un programme permettant de rebooter une fois une disquette installée ? Ou alors il faut ajouter un test sur la disquette insérée avant le reboot, mais l'utilisateur aurait le temps de la changer pendant le chargement du BIOS

    Concernant la sécurité, faire un petit programme qui modifie les paramètres du CMOS en assembleur est tout à fait faisable et peu compliqué si l'on utilise la méthode indiquée par Alcatîz, seulement il faut bien sûr que l'OS fournisse les droits d'écriture sur ces ports particuliers ... et si les droits sont acquis par l'utilisateur, qu'est-ce qui l'empêche de faire "sauter" le mot de passe du BIOS ?
    Avant de poster, merci de consulter les règles du forum

  10. #10
    Membre habitué
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juin 2005
    Messages
    608
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Santé

    Informations forums :
    Inscription : Juin 2005
    Messages : 608
    Points : 145
    Points
    145
    Par défaut en fait .....
    la Séquence de démarrage m'est imposée dans les contraintes, c'est pourquoi je ne peux pas la bouger. Ce que je voudrais juste, c'est que à l'insertion de la disquette, la station recoive une information lui indiquant de booter sur cette disquette et non sur le "boot sequency" defini dans le BIOS.

  11. #11
    sdx
    sdx est déconnecté
    Membre régulier Avatar de sdx
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    106
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 106
    Points : 90
    Points
    90
    Par défaut
    Essaie de faire le petit programme qui fait les images de la CMOS, comme l'a conseillé Alcatîz, ensuite, vérifie que tu peux changer à volonté d'image de CMOS et que cela fonctionne. (Tu as bien le droit de toucher au BIOS le temps de la mise au point du programme ?)
    Ecrit le programme pour qu'il puisse tourner sous DOS, ce sera plus simple que pour windows (je n'ai aucune idée de ce que cela pourrait donner)

    Ensuite, il faudra que tu te débrouille pour faire éxecuter ce prog sous DOS, par exemple en ajoutant la ligne de commande dans c:\autoexec.bat (ce fichier pourra être édité à distance, comme cela tu pourra tout contrôler depuis un autre poste )

    J'ai aussi pensé à une autre technique : la mise à jour que tu dois faire, c'est une réinstallation d'un système d'exploitation ? Si c'est le cas, tu peux faire comme cela :
    - exécute un petit programme qui copie sur le disque dur un secteur de boot que tu auras fait toi même.
    - redémarre ta machine
    - le secteur de boot se charge de lancer le système d'exploitation contenu dans ta disquette, et le lance.
    - ta disquette fait ce qu'elle a à faire ...
    - après la réinstallation de l'os, ton secteur de démarrage est remplacé par un autre.

    Tout fonctionne sans que tu ais à toucher au BIOS !!! Mais il faut te débrouiller encore pour éxecuter ton programme sous DOS (même technique avec l'autexec.bat )

    J'éspère que je ne m'exprime pas trop mal Tiens nous au courant de l'avancée

  12. #12
    Membre habitué
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juin 2005
    Messages
    608
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Santé

    Informations forums :
    Inscription : Juin 2005
    Messages : 608
    Points : 145
    Points
    145
    Par défaut
    salut ,

    Bon, alors j'ai regardé ce que tu m'as dit mais franchement, je dois être un boulet car je ne comprends pas comment faire.

    Si tu veux, je comprends la séquence que tu proposes mais pas du tout comment faire. Je n'ai que des bases en asm et faire un petit prog qui fait des images CMOS ????? j'avoue que je suis largué la ....

    Mais mon systéme a un peu evolué et je pense que ma recherche est un peu simplifiée.

    Deja, je boote sur PXE, ma reinstallation se fait sans aucun problème, et maintenant, mon but est:

    Toujours a distance, de faire en sorte qu'après la reinstall, la machine boote sur don HDD0 et non plus sur PXE.

    Bien sûr, je dois être capable de la faire rebooter de nouveau sur PXE si besoin est .......


    De plus, je cherche a faire une disquette (ou un .exe peu importe) qui, au lancement, fait le chose suivante :

    - vire toutes les partitions de mon DD
    - cree, active et formate une partition FAT de 2 GO

    merci de ton aide

  13. #13
    Nouveau Candidat au Club
    Inscrit en
    Décembre 2007
    Messages
    1
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 1
    Points : 1
    Points
    1
    Par défaut
    salut! je repond peut etre un peut tard mais ca peut servir.
    avez vous essayé de vous attaquer au secteur boot du disque?
    comme avec grup sous linux tu peux peut etre verifier si une disquette et dans le lecteur et si oui booter dessu au lieu de continuer la sequence de boot standard.
    si qq1 peut aidé je suit le sujet merci!!
    un lien utile: http://www.emu8086.com/assembly_lang...torial_11.html
    a suivre....
    cordialement....

  14. #14
    Membre éclairé
    Avatar de edfed
    Profil pro
    être humain
    Inscrit en
    Décembre 2007
    Messages
    476
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : être humain

    Informations forums :
    Inscription : Décembre 2007
    Messages : 476
    Points : 701
    Points
    701
    Billets dans le blog
    1
    Par défaut
    si tu modifies le dernier octet du secteur de boot du disque dur, celui ci n'est plus reconnu en tant que secteur de boot valide, et automatiquement, le bios boot sur le device suivant... hé hé

    donc, il faut lire le secteur de boot, modifier le derneir octet, et ecrire le resultat sur le secteur de boot.

    pas besoin de sauver quoi que ce soit, il suffit ensuite de relire le secteur de boot, ecrire 0aah a la fin et le reécrire, et le tour est joué

Discussions similaires

  1. [PC portable] BIOS UEFI et séquence de boot
    Par Paul TOTH dans le forum Ordinateurs
    Réponses: 2
    Dernier message: 20/03/2015, 22h46
  2. pc bloqué avant séquence de boot après "soft reset"
    Par benoit910 dans le forum Ordinateurs
    Réponses: 1
    Dernier message: 27/06/2011, 10h00
  3. pb d'installation - Séquence de boot
    Par monpseudonom dans le forum Ordinateurs
    Réponses: 2
    Dernier message: 22/12/2008, 15h20
  4. [FLASH 8] Contrôler les séquences
    Par achos dans le forum Flash
    Réponses: 3
    Dernier message: 23/03/2007, 16h12
  5. De quoi dépend la séquence de boot ?
    Par Attila54 dans le forum Assembleur
    Réponses: 1
    Dernier message: 07/09/2005, 16h50

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo