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


  • ANNUAIRE
  • [EN] Defcon
    Lancé en 1992 par Dark Tangent, DEFCON est la plus ancienne et la plus grande conférence underground de...
    Hacking
    [FR] Le site du zero
    Découvrez gratuitement la programmation (C, C++, PHP, MySQL, XHTML, CSS...), Linux, le Mapping, la modé...
    Programmation
    [EN] social-engineer
    Site dédié au Social Engineering en général.
    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
    [EN] PHPFreaks
    PHPFreaks est un site dédié à l'apprentissage et l'enseignement du PHP. Ici vous trouver...
    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] Listbrain Version 3
    Site proposant 66 challenges présentés dans une liste mélangée.
    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] Socket + envoie de commande
24-04-2013, 17h00 (Modification du message : 24-04-2013, 17h00 par notfound.)
Message : #16
notfound Hors ligne
#!/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 ...
+1 (0) -1 (0) Répondre
24-04-2013, 21h37 (Modification du message : 24-04-2013, 21h43 par Kiwazaru.)
Message : #17
Kiwazaru Hors ligne
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 :

/* Le seul qui ne contient pas de CR */
char peer0_0[] = {
0x45, 0x53, 0x43, 0x2f, 0x56, 0x50, 0x2e, 0x6e,
0x65, 0x74, 0x10, 0x03, 0x00, 0x00, 0x00, 0x00 };

/* Tout les autres en contiennent */
char peer0_1[] = {
0x56, 0x45, 0x52, 0x3f, 0x0d };

char peer0_2[] = {
0x4c, 0x41, 0x4d, 0x50, 0x3f, 0x0d };

char peer0_3[] = {
0x50, 0x57, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53,
0x3f, 0x0d };

char peer0_4[] = {
0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x3f, 0x0d };

char peer0_5[] = {
0x56, 0x45, 0x52, 0x3f, 0x0d };

char peer0_6[] = {
0x53, 0x4e, 0x4f, 0x3f, 0x0d };

char peer0_7[] = {
0x4d, 0x42, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53,
0x3f, 0x0d };

char peer0_8[] = {
0x49, 0x4d, 0x50, 0x57, 0x52, 0x20, 0x4f, 0x46,
0x46, 0x0d };
 


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 :

/* Bonjour -> VP */
send(sock, "ESC/VP.net\x10\x03\x00\x00\x00\x00", len, 0);
recv(sock, reponse, MAX, 0);

/* Si on reçois une réponse "Bonjour" VP -> PC on essaye de l'éteindre */
if(strcmp(reponse, "ESC/VP.net\x10\x03\x00\x00\x20\x00") == 0){
      send(sock, "IMPWR OFF\x0d", len, 0);
      recv(sock, reponse, MAX, 0);
}

/* Si on reçois la requête disant que le VP a été éteint on affiche que VP est éteint */
if(strcmp(reponse, ":IMEVENT=0001 04 00000002 00000000 T1 F1\x0d\x3a:IMEVENT=0001 04 00000002 00000000 T1 F1\x0d\x3a") == 0){
      printf("[+] Vidéo-Projecteur Éteint !");
}
else{
      printf("[+] Erreur pendant la tentative !");
}
 


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 Smile

PS : Pas eu le temps d'édit, juste remplace STRCMP(); par MEMCMP(); Smile
Toucher au Kernel, c'est un peut comme se shooter au LSD, on pense pouvoir tout faire mais ça finit souvent mal.
+1 (1) -1 (0) Répondre
25-04-2013, 12h59 (Modification du message : 25-04-2013, 12h59 par notfound.)
Message : #18
notfound Hors ligne
#!/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 Wink

Edit : Code fonctionnel copié dans le 1er post !
+1 (0) -1 (0) Répondre
25-04-2013, 13h32 (Modification du message : 25-04-2013, 13h33 par Kiwazaru.)
Message : #19
Kiwazaru Hors ligne
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.
+1 (0) -1 (0) Répondre
25-04-2013, 13h43 (Modification du message : 25-04-2013, 13h43 par notfound.)
Message : #20
notfound Hors ligne
#!/usr/bin/env bash
*



Messages : 687
Sujets : 47
Points: 271
Inscription : Sep 2012
RE: [C] Socket + envoie de commande
Un peu what ? Smile
+1 (0) -1 (0) Répondre
25-04-2013, 13h45 (Modification du message : 25-04-2013, 13h46 par Kiwazaru.)
Message : #21
Kiwazaru Hors ligne
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.
+1 (2) -1 (0) Répondre
25-04-2013, 15h56
Message : #22
notfound Hors ligne
#!/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 Smile
+1 (0) -1 (0) Répondre
26-04-2013, 08h14 (Modification du message : 26-04-2013, 08h38 par gruik.)
Message : #23
gruik Hors ligne
gouteur de savon
*



Messages : 757
Sujets : 44
Points: 482
Inscription : Oct 2012
RE: [C] Socket + envoie de commande
+1 (0) -1 (0) Répondre
26-04-2013, 10h03 (Modification du message : 26-04-2013, 10h04 par Kiwazaru.)
Message : #24
Kiwazaru Hors ligne
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 Smile
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.
+1 (0) -1 (0) Répondre
26-04-2013, 10h33
Message : #25
supersnail Hors ligne
É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
+1 (1) -1 (0) Répondre
26-04-2013, 10h40
Message : #26
Kiwazaru Hors ligne
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.
+1 (0) -1 (0) Répondre
26-04-2013, 20h24
Message : #27
supersnail Hors ligne
É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
+1 (0) -1 (0) Répondre
26-04-2013, 20h41
Message : #28
Kiwazaru Hors ligne
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é" Smile
Toucher au Kernel, c'est un peut comme se shooter au LSD, on pense pouvoir tout faire mais ça finit souvent mal.
+1 (0) -1 (0) Répondre


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 315 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