[C] Socket + envoie de commande
|
23-04-2013, 15h27
(Modification du message : 25-04-2013, 13h02 par notfound.)
Message : #1
|
|
notfound
#!/usr/bin/env bash Messages : 687 Sujets : 47 Points: 271 Inscription : Sep 2012 |
[C] Socket + envoie de commande
|
|
23-04-2013, 15h29
Message : #2
|
|
supersnail
Éleveur d'ornithorynques Messages : 1,609 Sujets : 71 Points: 465 Inscription : Jan 2012 |
RE: [C] Socket + envoie de commande
Et t'as quoi si tu fais "Follow TCP Stream" ?
Mon blog
Code : push esp ; dec eax ; inc ebp ; and [edi+0x41],al ; dec ebp ; inc ebp "VIM est merveilleux" © supersnail |
|
23-04-2013, 18h03
(Modification du message : 24-04-2013, 14h12 par notfound.)
Message : #3
|
|
notfound
#!/usr/bin/env bash Messages : 687 Sujets : 47 Points: 271 Inscription : Sep 2012 |
RE: [C] Socket + envoie de commande
(23-04-2013, 15h29)supersnail a écrit : Et t'as quoi si tu fais "Follow TCP Stream" ? J'ai la chose suivante : EDIT : Avec le logiciel EPSON, j'obtiens la chose suivante en analysant la trame : Or, j'arrive à obtenir le début, mais pas la suite. Malgré le fait que j'envoie ensuite les autres instructions ... Quelqu'un aurait une idée de génie ? |
|
23-04-2013, 18h25
(Modification du message : 23-04-2013, 18h27 par gruik.)
Message : #4
|
|
gruik
gouteur de savon Messages : 757 Sujets : 44 Points: 482 Inscription : Oct 2012 |
RE: [C] Socket + envoie de commande
(23-04-2013, 15h27)notfound a écrit : Si quelqu'un aurait une idée ben j'ai l'impression que tu causes simplement pas exactement le même protocole que l'appareil en face sur la capture des paquets, on voit clairement l'établissement de connexion (SYN - SYN/ACK - ACK), tu envoies 1 paquet de données (PUSH), le serveur te répond un truc lui aussi (PUSH), puis l'un des deux met fin à la connexion (toi avec ton FIN à priori ?) et au niveau du "follow tcp stream" dans wireshark, on voit bien qu'un dialogue normal avec le videoprojecteur, on envoit un paquet (probablement pour dire bonjour), on recoit un paquet du serveur (le meme que tu recevais en envoyant ton PWR OFF), puis on envoit un 2nd paquet à priori pour lui demander la version du protocole ou du logiciel ou autre, le serveur répond et après seulement on renvoit un paquet avec la commande PWR OFF difficile de dire beaucoup plus, si vraiment tu galères ca pourrait etre une bonne idée de mettre les .pcap en piece jointe éventuellement... |
|
23-04-2013, 19h43
Message : #5
|
|
notfound
#!/usr/bin/env bash Messages : 687 Sujets : 47 Points: 271 Inscription : Sep 2012 |
RE: [C] Socket + envoie de commande
Est-ce que ça ne viendrait pas de mon code C ?
Code C :
Peut-être ne faut-il pas que je close ma socket ? |
|
23-04-2013, 19h47
Message : #6
|
|
supersnail
Éleveur d'ornithorynques Messages : 1,609 Sujets : 71 Points: 465 Inscription : Jan 2012 |
RE: [C] Socket + envoie de commande
Ben ça dépend (comme le dit gruik) de comment c'est implémenté au niveau de ton vidéoprojecteur.
Et comme j'ai dit iirc, le plus simple dans ce cas c'est de faire du reverse-engineering sur l'application "officielle" pour comprendre comment c'est fait. Et comme dit gruik (again :>), file-nous le .pcap de la transmission "officielle" faite par le prog epson pour y voir plus clair
Mon blog
Code : push esp ; dec eax ; inc ebp ; and [edi+0x41],al ; dec ebp ; inc ebp "VIM est merveilleux" © supersnail |
|
24-04-2013, 10h51
Message : #7
|
|
notfound
#!/usr/bin/env bash Messages : 687 Sujets : 47 Points: 271 Inscription : Sep 2012 |
RE: [C] Socket + envoie de commande
Le fichier .pcap du trafic entier "officiel" avec le logiciel EPSON
http://dl.free.fr/getfile.pl?file=/lSJuWFKk |
|
24-04-2013, 12h25
(Modification du message : 24-04-2013, 12h27 par Kiwazaru.)
Message : #8
|
|
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.
|
|
24-04-2013, 13h00
(Modification du message : 24-04-2013, 13h10 par gruik.)
Message : #9
|
|
gruik
gouteur de savon Messages : 757 Sujets : 44 Points: 482 Inscription : Oct 2012 |
RE: [C] Socket + envoie de commande
je crois plutot que le probleme vient du fait qu'il n'envoit qu'un seul paquet et ferme la connexion, Ã mon avis envoyer un paquet bonjour / attendre la reponse du videoprojecteur / envoyer la commande IMPWR OFF doit suffire
edit: paquet bonjour : "ESC/VP.net\x10\x03\x00\x00\x00\x00" => doit recevoir du vp : "ESC/VP.net\x10\x03\x00\x00\x20\x00" paquet commande : "IMPWR OFF\n" => et là encore le vp renvoit qqes données suite à ça... j'imagine que le vp shutdown donc qu'on peut fermer la connexion comme un sale, à tester... |
|
24-04-2013, 13h16
Message : #10
|
|
Kiwazaru
Padawan d'un super escargot Messages : 284 Sujets : 26 Points: 139 Inscription : Mar 2012 |
RE: [C] Socket + envoie de commande
"ESC/VP.net\x10\x03\x00\x00\x00\x00" les \xXX\ derrière servent à quoi?
Toucher au Kernel, c'est un peut comme se shooter au LSD, on pense pouvoir tout faire mais ça finit souvent mal.
|
|
24-04-2013, 13h56
Message : #11
|
|
gruik
gouteur de savon Messages : 757 Sujets : 44 Points: 482 Inscription : Oct 2012 |
RE: [C] Socket + envoie de commande
c'est une notation hexadecimale, 0x41 == \x41 == 'A' == 101o (octal) == 0o101
sinon c'est très exactement ce qu'on voit transiter dans la capture en l'occurence, pour des raisons de lisibilité wirehsark remplace les caractères ASCII non-printable par des points '.' |
|
24-04-2013, 13h57
Message : #12
|
|
Kiwazaru
Padawan d'un super escargot Messages : 284 Sujets : 26 Points: 139 Inscription : Mar 2012 |
RE: [C] Socket + envoie de commande
Yep mais comment tu as su que c'était \x10\x03\x00\x00\x00\x00 0x10 puis 0x03 etc ? Vu qu'on ne vois que des points.
Toucher au Kernel, c'est un peut comme se shooter au LSD, on pense pouvoir tout faire mais ça finit souvent mal.
|
|
24-04-2013, 14h00
(Modification du message : 24-04-2013, 14h02 par gruik.)
Message : #13
|
|
gruik
gouteur de savon Messages : 757 Sujets : 44 Points: 482 Inscription : Oct 2012 |
RE: [C] Socket + envoie de commande
ben en fouillant dans les bons paquets (tcp push)et en regardant le détail, ou dans la vue "follow tcp stream" tu peux aussi switcher vers "raw" ou "C array"
edit: typiquement le paquet n°14 de la capture, dans la fenetre principale cliquer sur "data" met en surbrillance dans le paquet les octets en question par exemple |
|
24-04-2013, 14h11
(Modification du message : 24-04-2013, 14h12 par notfound.)
Message : #14
|
|
notfound
#!/usr/bin/env bash Messages : 687 Sujets : 47 Points: 271 Inscription : Sep 2012 |
RE: [C] Socket + envoie de commande
BTW, j'ai réussi hein (cf. edit 1er post)
|
|
24-04-2013, 16h52
Message : #15
|
|
Kiwazaru
Padawan d'un super escargot Messages : 284 Sujets : 26 Points: 139 Inscription : Mar 2012 |
RE: [C] Socket + envoie de commande
Yep j'ai look
Code C :
char peer1_0[] = { On vois bien la chaîne "0x10, 0x03, 0x00, 0x00, 0x20, 0x00" qui donne ton code ensuite
Toucher au Kernel, c'est un peut comme se shooter au LSD, on pense pouvoir tout faire mais ça finit souvent mal.
|
|
Sujets apparemment similaires… | |||||
Sujet | Auteur | Réponses | Affichages | Dernier message | |
[shellcode] Reverse shell over reused socket | ark | 4 | 332 |
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 | 316 |
21-01-2013, 02h18 Dernier message: notfound |
Utilisateur(s) parcourant ce sujet : 1 visiteur(s)