[C] Socket + envoie de commande
|
24-04-2013, 17h00
(Modification du message : 24-04-2013, 17h00 par notfound.)
Message : #16
|
|
notfound
#!/usr/bin/env bash Messages : 687 Sujets : 47 Points: 271 Inscription : Sep 2012 |
RE: [C] Socket + envoie de commande
En fait, y'a un truc CAPITAL dans bordel ! C'est de mettre à la fin, le caractère 0x0d (CR, carrier return) sinon ça push pas le merdier et rien ne se passe ...
|
|
24-04-2013, 21h37
(Modification du message : 24-04-2013, 21h43 par Kiwazaru.)
Message : #17
|
|
Kiwazaru
Padawan d'un super escargot Messages : 284 Sujets : 26 Points: 139 Inscription : Mar 2012 |
RE: [C] Socket + envoie de commande
Exact, si on regarde le stream en "C Array" on vois bien :
Code C :
Donc si tu veux que ça marche du coup, soit tu fait avec la technique j'envoie tout les paquets , soit tu fait la technique à gruik qui fait: Bonjour -> Shutdown Code C :
Je sais pas si le code est bon ou pas, j'ai enlevé les sprintf(); , ça servait pas à grand chose à part encombrer et ralentir l’exécution du programme PS : Pas eu le temps d'édit, juste remplace STRCMP(); par MEMCMP();
Toucher au Kernel, c'est un peut comme se shooter au LSD, on pense pouvoir tout faire mais ça finit souvent mal.
|
|
25-04-2013, 12h59
(Modification du message : 25-04-2013, 12h59 par notfound.)
Message : #18
|
|
notfound
#!/usr/bin/env bash Messages : 687 Sujets : 47 Points: 271 Inscription : Sep 2012 |
RE: [C] Socket + envoie de commande
Je paste mon code demain quand je retourne au boulot, il est fonctionnel
Edit : Code fonctionnel copié dans le 1er post ! |
|
25-04-2013, 13h32
(Modification du message : 25-04-2013, 13h33 par Kiwazaru.)
Message : #19
|
|
Kiwazaru
Padawan d'un super escargot Messages : 284 Sujets : 26 Points: 139 Inscription : Mar 2012 |
RE: [C] Socket + envoie de commande
Toucher au Kernel, c'est un peut comme se shooter au LSD, on pense pouvoir tout faire mais ça finit souvent mal.
|
|
25-04-2013, 13h43
(Modification du message : 25-04-2013, 13h43 par notfound.)
Message : #20
|
|
notfound
#!/usr/bin/env bash Messages : 687 Sujets : 47 Points: 271 Inscription : Sep 2012 |
RE: [C] Socket + envoie de commande
Un peu what ?
|
|
25-04-2013, 13h45
(Modification du message : 25-04-2013, 13h46 par Kiwazaru.)
Message : #21
|
|
Kiwazaru
Padawan d'un super escargot Messages : 284 Sujets : 26 Points: 139 Inscription : Mar 2012 |
RE: [C] Socket + envoie de commande
Bah scanf(); vérifie pas la taille de la chaîne envoyé donc si ton char choix[vaut 10] et que j'entre 012345678910AAAAAAAAAAAAAAAAAAAAAAAAAAA ça va planter :p. Certes c'est un code personnel mais c'est toujours bien de s'habituer :p
Là avec fgets(); tu peux limiter la chaîne , et faut vider après stdin qui sert de "buffer" , avec fseek(); donc :p
Toucher au Kernel, c'est un peut comme se shooter au LSD, on pense pouvoir tout faire mais ça finit souvent mal.
|
|
25-04-2013, 15h56
Message : #22
|
|
notfound
#!/usr/bin/env bash Messages : 687 Sujets : 47 Points: 271 Inscription : Sep 2012 |
RE: [C] Socket + envoie de commande
Ok ok je le saurai ! Thx
|
|
26-04-2013, 08h14
(Modification du message : 26-04-2013, 08h38 par gruik.)
Message : #23
|
|
gruik
gouteur de savon Messages : 757 Sujets : 44 Points: 482 Inscription : Oct 2012 |
RE: [C] Socket + envoie de commande
|
|
26-04-2013, 10h03
(Modification du message : 26-04-2013, 10h04 par Kiwazaru.)
Message : #24
|
|
Kiwazaru
Padawan d'un super escargot Messages : 284 Sujets : 26 Points: 139 Inscription : Mar 2012 |
RE: [C] Socket + envoie de commande
Ah , je savais pas ça ! Sûrement trop d'idées reçues de dire que scanf(); == fonction horrible à oublier
Mais pourquoi ça existe pour les decimal et pas pour les chaînes de caractères? :o
Toucher au Kernel, c'est un peut comme se shooter au LSD, on pense pouvoir tout faire mais ça finit souvent mal.
|
|
26-04-2013, 10h33
Message : #25
|
|
supersnail
Éleveur d'ornithorynques Messages : 1,609 Sujets : 71 Points: 465 Inscription : Jan 2012 |
RE: [C] Socket + envoie de commande
Ben si y'a le %10s qui limite la taille de l'entrée à 10 caractères.
Par contre comme partout, faut penser à vider le buffer avant de refaire un autre appel à scanf ,sous peine de bugs "bizarres".
Mon blog
Code : push esp ; dec eax ; inc ebp ; and [edi+0x41],al ; dec ebp ; inc ebp "VIM est merveilleux" © supersnail |
|
26-04-2013, 10h40
Message : #26
|
|
Kiwazaru
Padawan d'un super escargot Messages : 284 Sujets : 26 Points: 139 Inscription : Mar 2012 |
RE: [C] Socket + envoie de commande
Ah bah voilà, alors pourquoi tu me disais que scanf(); était à oublier? :p
Toucher au Kernel, c'est un peut comme se shooter au LSD, on pense pouvoir tout faire mais ça finit souvent mal.
|
|
26-04-2013, 20h24
Message : #27
|
|
supersnail
Éleveur d'ornithorynques Messages : 1,609 Sujets : 71 Points: 465 Inscription : Jan 2012 |
RE: [C] Socket + envoie de commande
Mon blog
Code : push esp ; dec eax ; inc ebp ; and [edi+0x41],al ; dec ebp ; inc ebp "VIM est merveilleux" © supersnail |
|
26-04-2013, 20h41
Message : #28
|
|
Kiwazaru
Padawan d'un super escargot Messages : 284 Sujets : 26 Points: 139 Inscription : Mar 2012 |
RE: [C] Socket + envoie de commande
Yep effectivement :p
Oui donc en fait, c'est utilisable mais ça peut provoquer des erreurs de gestion donc fgets(); reste la meilleur solution pour avoir un programme fonctionnel et non "bugué"
Toucher au Kernel, c'est un peut comme se shooter au LSD, on pense pouvoir tout faire mais ça finit souvent mal.
|
|
« Sujet précédent | Sujet suivant »
|
Sujets apparemment similaires… | |||||
Sujet | Auteur | Réponses | Affichages | Dernier message | |
[shellcode] Reverse shell over reused socket | ark | 4 | 328 |
11-03-2014, 11h51 Dernier message: Ark |
|
[C] Socket Client-Serveur -> Write() + Read() | sakiir | 7 | 447 |
18-03-2013, 07h19 Dernier message: sakiir |
|
NEED HELP / SOCKET;FILTRES XDR; RPC | notfound | 4 | 313 |
21-01-2013, 02h18 Dernier message: notfound |
Utilisateur(s) parcourant ce sujet : 1 visiteur(s)