• STATISTIQUES
  • Il y a eu un total de 0 membres et 6184 visiteurs sur le site dans les dernières 24h pour un total de 6 184 personnes!
    Membres: 2 605
    Discussions: 3 579
    Messages: 32 816
    Tutoriels: 78
    Téléchargements: 38
    Sites dans l'annuaire: 58


  • ANNUAIRE
  • [FR] frameip
    le site de partage des connaissances du monde TCPIP
    Protocole
    [FR] Infomirmo
    Challenge présenté sous la forme de 6 niveaux de difficultés diverses et variées avec chacun plusieurs chall...
    Challenges
    [FR] Kalkulators
    Ce projet a plusieurs buts, le premier étant l’étude de toutes formes cryptographiques, le cot&ea...
    Cryptographie
    [EN] Dare your mind
    JavaScript: 6, Crypto: 44, Stegano: 36, Logic: 13, Special: 27, Science: 11, Realistic: 7, Programming: 10, Crack It: 6,...
    Challenges
    [FR] Asp-php
    Tutoriaux sur ASP, PHP, ASP.net, XML, SQL, Javascript, HTML, VML - Scripts et ressources pour webmasters - Forums d&#...
    Programmation
    [FR] Root-me
    Script: 5, Système: 20, Cracking: 16, Cryptanalyse: 17, Programmation: 8, Réaliste: 11, Réseau: 10, Stéganog...
    Challenges
    [EN] Rosecode
    Programming: 36, Math: 29, Probability: 5, Sequence: 7, Crypto: 4, Brainf**k: 13, TimeRace: 4, Hack: 9
    Challenges

  • DONATION
  • Si vous avez trouvé ce site internet utile, nous vous invitons à nous faire un don du montant de votre choix via Paypal. Ce don servira à financer notre hébergement.

    MERCI!




Note de ce sujet :
  • Moyenne : 0 (0 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5
[C / ASM inline] stack nostdlib
11-12-2012, 15h59 (Modification du message : 11-12-2012, 15h59 par ark.)
Message : #1
ark Hors ligne
Psyckomodo!
*****



Messages : 1,033
Sujets : 48
Points: 317
Inscription : Sep 2011
[C / ASM inline] stack nostdlib
Plop

Je bosse actuellement sur un projet ou j'essaye de compiler sans la libc, parce que j'aimerais pouvoir étudier l’état de la stack a l’état "naturel".

Pour cela, j'ai une fais une fonction _start(), qui est donc l'entry point de mon programme. J'ai coder rapidement une lib utile pour afficher des données (cf pièce jointe)

Bref, quoiqu'il en soit, sur un programme en assembleur compilé avec nasm et linké avec ld, j'ai pas de soucis, je fais un pop au début de mon programme, je récupère bien mon argc.
Mon soucis vient du fait que lorsque je compile mon programme en C avec la commande gcc -nostdlib *.c, lorsque je l’exécute, quand je fais un pop, la valeur obtenu est nulle. Oo

En revanche, il semblerais bien que mes vecteurs auxiliaires de ELF soit bien sur la stack (bien que je n'ai pas vérifié que ce soit vraiment ça pour l'instant).

J'ai donc l'impression que ma stack n'est pas initialisée... J'ai chercher pas mal sur notre ami google, mais il y a pas grands chose a ce sujet malheureusement...

Du coup, si vous avez des idées, de ce qui fait que la stack est init sur un programme en assembleur brute et pas en C, je suis preneur ! ^^
Sinon, si vous avez une idée de ou je peux trouver mes arguments, je suis preneur aussi... parce que ça me semble bizarre... x)

L’idée au final serait d’être capable de se passer de la libc et d'avoir une stack initialisée quand même.

Le code source est dans le tar en pièce jointe, et comme je suis gentil j'ai même fait un makefile \o/

EDIT: J'ai oublier de préciser que je bosse sur du 64bits. J'ai également tester en 32 bits, même soucis. J'ai rajouter les sources en 32 bits au passage.


Pièces jointes
.tar   nolibc.tar (Taille : 10 Ko / Téléchargements : 7)
.tar   nolibc_32.tar (Taille : 10 Ko / Téléchargements : 1)
+1 (0) -1 (0) Répondre


Messages dans ce sujet
[C / ASM inline] stack nostdlib - par Ark - 11-12-2012, 15h59
RE: [C / ASM inline] stack nostdlib - par gruik - 11-12-2012, 18h18
RE: [C / ASM inline] stack nostdlib - par Ark - 11-12-2012, 18h22

Sujets apparemment similaires…
Sujet Auteur Réponses Affichages Dernier message
  [ASM] Prologue Epilogue ou comment récupérer sa stack Junky 2 351 31-08-2014, 20h42
Dernier message: octarin

Atteindre :


Utilisateur(s) parcourant ce sujet : 1 visiteur(s)
N-PN
Accueil | Challenges | Tutoriels | Téléchargements | Forum | Retourner en haut