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


  • ANNUAIRE
  • [EN] Gekko
    Site de challenge présenter sous la forme d'une quête. Vous êtes un agent secret qui répond sous le nom...
    Challenges
    [FR] Zmaster
    Articles sur l'informatique, le hacking, le P2P, les divx, les astuces windows XP, les GSM, Emule, la cryptograph...
    Hacking
    [FR] NewbieContest
    Nous vous proposons une série de challenges regroupant plusieurs domaines allant de l'exploitation de fail...
    Hacking
    [EN] Lost-chall
    Site de challenge présenté sous la forme de différente saison. Pour passer une saison vous devez avoir accumulÃ...
    Challenges
    [FR] Root-me
    Script: 5, Système: 20, Cracking: 16, Cryptanalyse: 17, Programmation: 8, Réaliste: 11, Réseau: 10, Stéganog...
    Challenges
    [EN] PHPFreaks
    PHPFreaks est un site dédié à l'apprentissage et l'enseignement du PHP. Ici vous trouver...
    Programmation
    [FR] PHP France
    Pour tout savoir sur le PHP, en français. Vous trouverez des tutoriels, des exemples, des astuces, toute la do...
    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
[NASM] Bot irc basique
10-05-2013, 23h51
Message : #1
Darmo Hors ligne
Newbie
*



Messages : 22
Sujets : 3
Points: 6
Inscription : Mar 2013
[NASM] Bot irc basique
Bonsoir!

Après une semaine à bouffer de l'asm, moi et Trivial avons enfin fini de coder notre bot irc en NASM.

Bon ok il est très basique, il ne fait que lire en brut les messages renvoyés par le serveur auquel on est connecté (irc.big-daddy.fr) et du channel.

Code :
BITS    32

EXTERN  puts
EXTERN  printf
EXTERN  send
EXTERN  recv
      
SECTION .data
        sock_error      db      "[-] Echec de creation de la socket", 0
        sock_ok         db      "[+] Creation de la socket", 0
        connect_error   db      "[-] Echec de la connection au serveur", 0
        connect_ok      db      "[+] Connection au serveur irc.big-daddy.fr", 0
        nick_cmd        db      "NICK BotDe7Lieu", 0xd, 0xa, 0
        user_cmd        db      "USER BotDe7Lieu 0 0 :BotDe7Lieu", 0xd, 0xa, 0
        input_print     db      "\ninput: %s", 0
        channel         db      "JOIN #Secu-appli", 0xd, 0xa, 0
SECTION .bss
        buffer          resb    256
SECTION .text
        GLOBAL  main
main:
        push    ebp
        mov     ebp, esp
make_socket:                    ; _
        push    0               ;  |
        push    0x1             ;  | struct sockaddr_in
        push    0x2             ; _|
        mov     ecx, esp        ; on passe le début de la struct en arg
        mov     ebx, 1          ; syscall socket
        mov     eax, 102        ; syscall sys_socketcall
        int     0x80
        mov     esi, eax        ; file descriptor du socket
        cmp     eax, 0
        jb      sock_fail       ; if (eax < 0) on jmp à sock fail
        push    sock_ok
        call    puts
connect:
        push    0
        push    dword 0xC589BF58 ; irc.big-daddy.fr
        push    dword 0x0B1A0002 ; port: 6667
        mov     ecx, esp         ; ecx = début de la structure
        push    0x10            
        push    ecx
        push    esi
        mov     ecx, esp
        mov     ebx, 3          ; 3 = sys_connect
        mov     eax, 102        ; sys_socketcall
        int     0x80
        test    eax, eax      
        jnz     connect_fail    ; si la connection a échoué
        push    connect_ok
        call    printf
send_:
        push    0               ; int flags
        push    17              ; size_t len
        push    nick_cmd        ; *buf
        push    esi             ; sockfd
        call    send
        push    0               ; int flags
        push    33              ; size_t len
        push    user_cmd        ; *buf
        push    esi             ; sockfd
        call    send
receive:
        push    0               ; int flags
        push    256             ; size_t len
        push    buffer          ; *buf
        push    esi             ; fd du socket
        call    recv
        push    buffer
        call    puts
        push    0
        push    256
        push    buffer
        push    esi
        call    recv
        push    buffer
        call    puts
join:
        push    0               ; flags
        push    18              ; length
        push    channel         ; nom du chan
        push    esi             ; fd du socket
        call    send
        jmp     receive
        leave
        ret
sock_fail:    
        push    sock_error
        call    puts
        leave
        ret
connect_fail:
        push    connect_error
        call    puts
        leave
        ret

Toutes critiques / remarques ou commentaires sont les bienvenus évidemment Wink
+1 (6) -1 (0) Répondre


Messages dans ce sujet
[NASM] Bot irc basique - par Darmo - 10-05-2013, 23h51
RE: [NASM] Bot irc basique - par Ark - 11-05-2013, 00h36
RE: [NASM] Bot irc basique - par Trivial - 11-05-2013, 00h38
RE: [NASM] Bot irc basique - par fr0g - 11-05-2013, 00h57
RE: [NASM] Bot irc basique - par b0fh - 11-05-2013, 01h05
RE: [NASM] Bot irc basique - par Trivial - 11-05-2013, 01h15
RE: [NASM] Bot irc basique - par sakiir - 11-05-2013, 12h31
RE: [NASM] Bot irc basique - par Ark - 13-05-2013, 15h14
RE: [NASM] Bot irc basique - par gruik - 13-05-2013, 18h50
RE: [NASM] Bot irc basique - par Ark - 14-05-2013, 01h50
RE: [NASM] Bot irc basique - par Trivial - 14-05-2013, 13h19
RE: [NASM] Bot irc basique - par gruik - 14-05-2013, 14h01
RE: [NASM] Bot irc basique - par supersnail - 14-05-2013, 16h55

Sujets apparemment similaires…
Sujet Auteur Réponses Affichages Dernier message
  [NASM] Création d'un thread sous Linux uniquement avec les syscalls supersnail 2 297 04-03-2013, 23h36
Dernier message: Dobry
  [ASM] hello world 64bits (nasm) gruik 2 313 01-12-2012, 13h02
Dernier message: gruik

Atteindre :


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