• STATISTIQUES
  • Il y a eu un total de 2 membres et 11773 visiteurs sur le site dans les dernières 24h pour un total de 11 775 personnes!


    Membres: 2 433
    Discussions: 3 585
    Messages: 32 832
    Tutoriels: 78
    Téléchargements: 38
    Sites dans l'annuaire: 58


  • ANNUAIRE
  • [EN] PHPFreaks
    PHPFreaks est un site dédié à l'apprentissage et l'enseignement du PHP. Ici vous trouver...
    Programmation
    [EN] wechall
    Pour les gens n'étant pas familiers avec les sites de challenges, un site de challenges est un site propos...
    Hacking
    [FR] Kalkulators
    Ce projet a plusieurs buts, le premier étant l’étude de toutes formes cryptographiques, le cot&ea...
    Cryptographie
    [EN] phrack
    Lot's of stuff !
    Hacking
    [EN] Rosecode
    Programming: 36, Math: 29, Probability: 5, Sequence: 7, Crypto: 4, Brainf**k: 13, TimeRace: 4, Hack: 9
    Challenges
    [EN] CS Tutoring Center
    Site de challenge spécialisé dans les challenges de programmation C++ et java cependant, d'autres langages pe...
    Challenges
    [FR] µContest
    µContest est un site de challenges de programmation, c'est à dire qu'il propose des épreu...
    Hacking

  • 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
[ASM] hello world 64bits (nasm)
30-11-2012, 21h53 (Modification du message : 08-12-2012, 17h15 par supersnail.)
Message : #1
gruik Hors ligne
gouteur de savon
*



Messages : 757
Sujets : 44
Points: 482
Inscription : Oct 2012
[ASM] hello world 64bits (nasm)
comme son nom l'indique, à la sauce shellcode, pour ceux que ça interesse...
les questions/optimisations/remarques sont évidement les bienvenues Wink

ps: pour ceux à qui geshi manque sur ce forum je mets la version colo ici aussi

Code ASM :

; nasm -f elf64 -o prout.o prout.asm
; ld -m elf_x86_64 -o prout prout.o

section .text

global _start
_start:
        ; sys_write == 1
        mov rax, 0xff0a2120646c726f     ; "orld !\n" + \xff pour padd
        push rax
        mov rax, 0x77202c6f6c6c6568     ; "hello, w"
        push rax
        push rsp
        pop rsi
        xor rax, rax
        inc eax
        mov edi, eax
        xor rdx, rdx
        mov dl, 0x0f
        syscall         ; rax + params dans rdi, rsi, rdx, rcx, r8, r9

        ; sys_exit == 60 (0x3c)
        mov al, 0x3c
        syscall
 
+1 (2) -1 (1) Répondre
01-12-2012, 11h13 (Modification du message : 01-12-2012, 11h15 par spin.)
Message : #2
spin Hors ligne
Contributeur
*****



Messages : 325
Sujets : 15
Points: 38
Inscription : Nov 2011
RE: [ASM] hello world 64bits (nasm)
Pourquoi xorer rax avec lui-même à la place de xorer eax avec lui-même, avant de l'incrémenter (de toute façon Linux ne regarde que le contenu de eax, et pas de tout rax il me semble) ? Et même question pour le xor de edx avec lui-même. On pourrait se contenter de faire avec edx, ça serait encore plus court :

Code :
$ ndisasm -b64 test.bin
00000000  31D2              xor edx,edx
00000002  4831D2            xor rdx,rdx
00000005  31C0              xor eax,eax
00000007  4831C0            xor rax,rax

Et aucun null byte à l'horizon Wink
+1 (0) -1 (0) Répondre
01-12-2012, 13h02
Message : #3
gruik Hors ligne
gouteur de savon
*



Messages : 757
Sujets : 44
Points: 482
Inscription : Oct 2012
RE: [ASM] hello world 64bits (nasm)
effectivement (après vérif) un xor eax, eax mettra à zéro également la partie haute de rax (et idem pour edx du coup)

bien vu Smile
+1 (0) -1 (1) Répondre


Sujets apparemment similaires…
Sujet Auteur Réponses Affichages Dernier message
  [NASM] Bot irc basique Darmo 12 3,149 14-05-2013, 16h55
Dernier message: supersnail
  [NASM] Création d'un thread sous Linux uniquement avec les syscalls supersnail 2 1,237 04-03-2013, 23h36
Dernier message: Dobry

Atteindre :


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