[php] TCP Socket ism Packetsniffer

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • Snow_King
  • Registratie: April 2001
  • Laatst online: 12:38

Snow_King

Konijn is stoer!

Topicstarter
Hoi,

Ik wil een PHP script schrijven waarmee ik een Battlefield 1942 server kan restarten.


Je verbind naar de BF server op poort 4711 via een DoS achtig prog en geeft dan het commando exit en de server restart.
Dit gaat via het TCP protocol.

Nu wil ik dit dus met PHP gaan doen.

Ik heb dus een packetsniffer geïnstalleerd (Ethereal).
Ik zet Ethereal op Capture, start de "Remote Console" en geef het commando "exit"


Dit duurt 2,8 sec en ik heb dan al 63 pakketjes achter de rug.

je kan met ethereal die pakketjes opslaan in een file.
Kan je deze inladen in php dat deze dat nadoet op een of andere manier?

Als ik in php het volgende doe:
PHP:
1
2
3
4
5
6
<?php

$fp = fsockopen ("62.212.75.xxx", 4711, $errno, $errstr, 30);
echo($fp);

?>


Uit die pakketjes wordt ik echt niets wijs!
Ik vind nergens "exit" tussen de commando's.

Wie kan mij een beetje op de goede weg helpen met tips oid?

Acties:
  • 0 Henk 'm!

  • Helmet
  • Registratie: Januari 2002
  • Laatst online: 21-08 15:00
fsockopen opent alleen je verbinding je zult met
fputs($fp,'dedatadiejenaardeserverwilsturen');
moeten gaan werken :)

Icons are overrated


Acties:
  • 0 Henk 'm!

  • Snow_King
  • Registratie: April 2001
  • Laatst online: 12:38

Snow_King

Konijn is stoer!

Topicstarter
Helmet schreef op 28 mei 2003 @ 20:48:
fsockopen opent alleen je verbinding je zult met
fputs($fp,'dedatadiejenaardeserverwilsturen');
moeten gaan werken :)
k, das al een start!

maar, hoe wordt ik wat wijzer uit zo'n packet sniffer?
ik zie alleen maar nullen en andere getallen!
moet ik dat allemaal versturen?

Acties:
  • 0 Henk 'm!

Verwijderd

Je kan met ethereal neem ik aan best het verkeer loggen dat IN de pakketjes zit, dus niet de headers e.d. Dat verkeer sla je op in een bestand en analyseer je. Die data kan jij ook gewoon naar de server sturen, waar je wel op moet letten is dat de server ook responses kan geven waar je rekening mee moet houden.

Acties:
  • 0 Henk 'm!

Verwijderd

Als je op een systeem werkt die ELF binaries ondersteunt (bijvoorbeeld linux), kan dit programma misschien helpen http://spugium.net/storage/dev/c/net/common-proxy/proxy

Zelf gemaakt dus verwacht geen duidelijk handleidingen.

Het is een proxy servertje wat je bind naar aan een port en dan bij een inkomende verbinding een connectie legt naar bijvoorbeeld jouw server. En hij stuurt alle informatie gewoon door, maar logt het in een bestand. Werkt in princiepe met elke tcp connectie...

Acties:
  • 0 Henk 'm!

  • Snow_King
  • Registratie: April 2001
  • Laatst online: 12:38

Snow_King

Konijn is stoer!

Topicstarter
Verwijderd schreef op 28 mei 2003 @ 21:23:
Je kan met ethereal neem ik aan best het verkeer loggen dat IN de pakketjes zit, dus niet de headers e.d. Dat verkeer sla je op in een bestand en analyseer je. Die data kan jij ook gewoon naar de server sturen, waar je wel op moet letten is dat de server ook responses kan geven waar je rekening mee moet houden.
ja, want je logt in met username en pass, de server geeft dan login terug, correct of incorrect

Acties:
  • 0 Henk 'm!

  • Onno
  • Registratie: Juni 1999
  • Niet online
Verwijderd schreef op 28 May 2003 @ 21:33:
Als je op een systeem werkt die ELF binaries ondersteunt (bijvoorbeeld linux),
Haal dat bijvoorbeeld maar weg. Dat er meerdere OS'en zijn die ELF gebruiken zegt niet dat die ook dezelfde binaries kunnen uitvoeren. En dit is een Linux ELF binary, en die werkt in principe dus alleen in Linux. :)

De output van ethereal vind ik zelf overigens vrij duidelijk, hij laat netjes zien welk stuk van een packet data en header is enzo.

[ Voor 16% gewijzigd door Onno op 28-05-2003 22:48 ]


Acties:
  • 0 Henk 'm!

  • Snow_King
  • Registratie: April 2001
  • Laatst online: 12:38

Snow_King

Konijn is stoer!

Topicstarter
Ik heb even screen van ethereal gemaakt:
http://duck.ath.cx/zooi/img/sniffer.gif

Is dat ondererste deel de data?
Dat 00 09 0a e6 e.d.?

PHP:
1
2
3
4
5
6
7
8
<?php

$fp = fsockopen ("62.212.75.115", 4711, $errno, $errstr, 30);

fputs($fp,'00 09 0a e6');
echo($fp);

?>


Krijg je dan zoiets?
of snap ik het toch niet helemaal?

[ Voor 6% gewijzigd door Snow_King op 29-05-2003 17:26 ]


Acties:
  • 0 Henk 'm!

  • Onno
  • Registratie: Juni 1999
  • Niet online
Snow_King schreef op 29 May 2003 @ 17:26:
Ik heb even screen van ethereal gemaakt:
http://duck.ath.cx/zooi/img/sniffer.gif

Is dat ondererste deel de data?
Dat 00 09 0a e6 e.d.?
Uh. Wat je daar nu geselecteerd hebt is het MAC adres van je router. Je hebt iets als

> Frame
> Ethernet
> Internet Protocol
> Transmission Control Protocol
> Data

En zoals misschien voor de hand ligt moet je de laatste hebben.

[ Voor 6% gewijzigd door Onno op 29-05-2003 17:46 ]

Pagina: 1