Generovanie packetov...
Generovanie packetov...
zdravim
mam vygenerovat sietovy packet...
ako by ste to robili??
vieme ze sietovy paket je nieco taketo
00 04 76 13 97 df 00 00 c0 d7 80 c2 08 00 45 00 00 30 0c 12 40 00 80 06...
postupnost HEXa cisel, z toho prvych 6 je to druhych 6 je to atd...
otazka znie ako vytvorit takyto paket??
tieto hexa cisla mam zapisat do suboru a vznikne paket alebo ako ho vytvorim? ako vytvorim paket?
sorry za lamersku otazku....
mam vygenerovat sietovy packet...
ako by ste to robili??
vieme ze sietovy paket je nieco taketo
00 04 76 13 97 df 00 00 c0 d7 80 c2 08 00 45 00 00 30 0c 12 40 00 80 06...
postupnost HEXa cisel, z toho prvych 6 je to druhych 6 je to atd...
otazka znie ako vytvorit takyto paket??
tieto hexa cisla mam zapisat do suboru a vznikne paket alebo ako ho vytvorim? ako vytvorim paket?
sorry za lamersku otazku....
-
pipiak
Medium Star
- Príspevky: 321
- Registrovaný: 11 jún 2006, 9:24
- Bydlisko: KE
- Kontaktovať používateľa:
Re: Generovanie packetov...
v c# je na to hotova trieda, neviem v akom jazyku to chces urobit
Re: Generovanie packetov...
otazka je co to ten Packet vobec je?
robim to v C++
a ja pytam ze akym sposobom (akym formatom) mam ulozit postupnost hexadecimalnych cisel aby v konecnom dosledku tato postupnost tvorila standardny/pouzitelny packet, ktory bude mozne poslat dalej, alebo analyzovat bez prenosu sietou.
Dakejm za odpoved.
robim to v C++
a ja pytam ze akym sposobom (akym formatom) mam ulozit postupnost hexadecimalnych cisel aby v konecnom dosledku tato postupnost tvorila standardny/pouzitelny packet, ktory bude mozne poslat dalej, alebo analyzovat bez prenosu sietou.
Dakejm za odpoved.
Re: Generovanie packetov...
http://www.security-freak.net/packet-in ... ction.html
hned prve video ... inak si si mohol pozret co ti napriklad vypluje wireshark ked odchytavaš packety a on ti aj znazornuje ktora cast predstavuje ktoru cast v HEXe
hned prve video ... inak si si mohol pozret co ti napriklad vypluje wireshark ked odchytavaš packety a on ti aj znazornuje ktora cast predstavuje ktoru cast v HEXe
Re: Generovanie packetov...
sa nechapeme asi ...
ja nepotrebujem vediet ktore hexadecimalne cislo co znamena...
potrebujem vediet ako z
33 33 00 01 00 02 00 1b 24 91 ed 87 86 dd 60 00
00 00 00 40 11 01 fe 80 00 00 00 00 00 00 04 8b
03 db 68 b0 96 11 ff 02 00 00 00 00 00 00 00 00
00 00 00 01 00 02 02 22 02 23 00 40 f9 2f 0b e6
05 b2 00 08 00 02 00 20 00 01 00 0e 00 01 00 01
0e 85 e7 08 00 1b 24 91 ed 87 00 10 00 0e 00 00
01 37 00 08 4d 53 46 54 20 35 2e 30 00 06 00 06
00 18 00 17 00 11
vytvorim REGULARNY packet.
PS to hore sa rovna tomuto:
DA: 33 33 00 01 00 02
SA: 00 1b 24 91 ed 87
Ethernet II, IPv6
Source IP: fe80:0000:0000:0000
03db:68b0:9611
Dest IP: ff02:0000:0000:0000:0000:0000
0002
UDP protocol
Source Port: 546
Dest Port: 547
...
a ja potrebujem vediet co mam spravit s tym HEX kodom - ci ho staci ulozit do suboru alebo ja neviem co, aby z toho vznikol REGULARNY packet.
a vobec nechcem nic odchytavat... ani nic podobne.
ja nepotrebujem vediet ktore hexadecimalne cislo co znamena...
potrebujem vediet ako z
33 33 00 01 00 02 00 1b 24 91 ed 87 86 dd 60 00
00 00 00 40 11 01 fe 80 00 00 00 00 00 00 04 8b
03 db 68 b0 96 11 ff 02 00 00 00 00 00 00 00 00
00 00 00 01 00 02 02 22 02 23 00 40 f9 2f 0b e6
05 b2 00 08 00 02 00 20 00 01 00 0e 00 01 00 01
0e 85 e7 08 00 1b 24 91 ed 87 00 10 00 0e 00 00
01 37 00 08 4d 53 46 54 20 35 2e 30 00 06 00 06
00 18 00 17 00 11
vytvorim REGULARNY packet.
PS to hore sa rovna tomuto:
DA: 33 33 00 01 00 02
SA: 00 1b 24 91 ed 87
Ethernet II, IPv6
Source IP: fe80:0000:0000:0000
Dest IP: ff02:0000:0000:0000:0000:0000
UDP protocol
Source Port: 546
Dest Port: 547
...
a ja potrebujem vediet co mam spravit s tym HEX kodom - ci ho staci ulozit do suboru alebo ja neviem co, aby z toho vznikol REGULARNY packet.
a vobec nechcem nic odchytavat... ani nic podobne.
Re: Generovanie packetov...
no tam si mal vysvetlene co to je packet ak si to pozrel cele tak si tam videl aj C Structury packetu...
skusal si sa to pytat googla ? lebo je to mrte vela materialov ...
takze ak to chapem spravne ty budes mat subor plny tamtoho Hexa blabolu a budes z toho vyrabat packet a posielat cez siet
http://stackoverflow.com/questions/7818 ... ckets-in-c
pod Windowsmi mas Winsock2 na siete tam to podla mna viac menej tiez dokazes
Potom mas moznost este Pcap resp. WinPCap
skusal si sa to pytat googla ? lebo je to mrte vela materialov ...
takze ak to chapem spravne ty budes mat subor plny tamtoho Hexa blabolu a budes z toho vyrabat packet a posielat cez siet
http://stackoverflow.com/questions/7818 ... ckets-in-c
pod Windowsmi mas Winsock2 na siete tam to podla mna viac menej tiez dokazes
Potom mas moznost este Pcap resp. WinPCap
Re: Generovanie packetov...
ty das do googla, skopirujes prvy link, a odpoved na moju otazku nikde... za taku pomoc "dakujem".
Otazka ostava, ako vytvorit a ulozit regularny packet?
Otazka ostava, ako vytvorit a ulozit regularny packet?
Re: Generovanie packetov...
pockaj vytiahnem Visual Studio a hned ti to nakodim lebo teraz vidim ze asi ocakvas odpoved hotovy program a najlepsie keby ti knemu dam aj Source
...
myslim ze ten link je dost relevantna odpoved na to co chceš ... tak ako ten predchadzajuci ...
dalej som ta nasmeroval kam sa mas kuknut ze mas kuknut na WinSock2 alebo na Pcap ...
tu presne vidis informacie ktore potrebuješ pre vytvorenie packetu jeho otvorenie odoslanie dat a jeho nasledne odoslanie...
ukazka winsock2 http://www.installsetupconfig.com/win32 ... 14_13.html
teraz ked sa pozres na HEX a toto tak vidis ze to je to iste ... vidis ze prvych 6HEX cisel = DA ... dalsich = SA ... dalsie predstavuju toto Ethernet II, IPv6 ... dalej tam mas IP ... a tak dalej proste to vyparsuješ a vyskladaš tak ako je v linku vysie ...
//edit: akoze ze ulozit
vsak ho mas ulozeny v HEX a ty chceš odoslat co ine by si snim asi tak mohol robit ... tak bud chceš vytvorit najprv packet cez niečo a potom nad nim zavolat "toString()" a ho iba Ulozit ... alebo ho chceš vyskladat z HEX a odoslat ? a ukladanie nema vyznam
myslim ze ten link je dost relevantna odpoved na to co chceš ... tak ako ten predchadzajuci ...
dalej som ta nasmeroval kam sa mas kuknut ze mas kuknut na WinSock2 alebo na Pcap ...
Kód: Vybrať všetko
DA: 33 33 00 01 00 02
SA: 00 1b 24 91 ed 87
Ethernet II, IPv6
Source IP: fe80:0000:0000:0000:048b:03db:68b0:9611
Dest IP: ff02:0000:0000:0000:0000:0000:0001:0002
UDP protocol
Source Port: 546
Dest Port: 547
ukazka winsock2 http://www.installsetupconfig.com/win32 ... 14_13.html
teraz ked sa pozres na HEX a toto tak vidis ze to je to iste ... vidis ze prvych 6HEX cisel = DA ... dalsich = SA ... dalsie predstavuju toto Ethernet II, IPv6 ... dalej tam mas IP ... a tak dalej proste to vyparsuješ a vyskladaš tak ako je v linku vysie ...
//edit: akoze ze ulozit
Re: Generovanie packetov...
ja tomu celkom nerozumiem preto sa pytam.
chcem generovat packety podla poziadavky, napr, ipv6 ipv4, icmp, arp ....
viem ako tieto pakety vyzeraju... a preto ich viem vytvorit hex string.
a teraz chcem ten tie vytvorene pakety (hex string) ulozit do standardnej formy paketu aby som ich mohol neskor (na inom pc) analyzovat, pripadne posielat cez siet.
a neviem akym sposobom to mam spravit spravne tak aby to bol REGULARNY paket a nie subor s hexa cislami a aby som ich mohol otvorit v hocijakom paketovom analyzatore alebo
mohol zavolat funkciu """sendpacket(paket)""" ktora bude pracovat z kniznice WinPcap a posielat ich inde.
chcem generovat packety podla poziadavky, napr, ipv6 ipv4, icmp, arp ....
viem ako tieto pakety vyzeraju... a preto ich viem vytvorit hex string.
a teraz chcem ten tie vytvorene pakety (hex string) ulozit do standardnej formy paketu aby som ich mohol neskor (na inom pc) analyzovat, pripadne posielat cez siet.
a neviem akym sposobom to mam spravit spravne tak aby to bol REGULARNY paket a nie subor s hexa cislami a aby som ich mohol otvorit v hocijakom paketovom analyzatore alebo
mohol zavolat funkciu """sendpacket(paket)""" ktora bude pracovat z kniznice WinPcap a posielat ich inde.
Re: Generovanie packetov...
ani ja tomu nerozumiem iba sa pytam googla a nieco okolo viem
...
tak hej ked vies vygenerovat HEX tak ho staci ukladat do suboru suboru daj koncovku .cap a otvoris ho napr. vo wiresharku ktory Pcap pouziva
ked chceš vidiet ako taky subor vyzera odchyt par packetov cez wireshark a uloz si ich v nom (a otvor cez HexEditor alebo PSPad ktory ma hex editor)... ten Pcap ich vie citat potom zo suboru (to som vycital tu http://www.winpcap.org/docs/docs_412/ht ... tring.html) a mal by ich vediet ked ich nacita aj posielat... ma na to funkcie vytvorene ... ale nikdy som snim priamo nerobil iba som vyuzival programy ktore ho vyuzivaju
//edit: ten HEX nie ze tam budes ukladat cisla 00 33 11 a tak ale musis previest na znaky ... takze subor zapisuj binarne
tak hej ked vies vygenerovat HEX tak ho staci ukladat do suboru suboru daj koncovku .cap a otvoris ho napr. vo wiresharku ktory Pcap pouziva
ked chceš vidiet ako taky subor vyzera odchyt par packetov cez wireshark a uloz si ich v nom (a otvor cez HexEditor alebo PSPad ktory ma hex editor)... ten Pcap ich vie citat potom zo suboru (to som vycital tu http://www.winpcap.org/docs/docs_412/ht ... tring.html) a mal by ich vediet ked ich nacita aj posielat... ma na to funkcie vytvorene ... ale nikdy som snim priamo nerobil iba som vyuzival programy ktore ho vyuzivaju
//edit: ten HEX nie ze tam budes ukladat cisla 00 33 11 a tak ale musis previest na znaky ... takze subor zapisuj binarne
Re: Generovanie packetov...
0000 00 1a 73 a1 3a 16 00 22 75 5f 1c 18 08 00 45 00
0010 00 28 00 00 40 00 38 06 da 8e 51 5b 54 39 c0 a8
0020 02 05 00 50 c9 8b 38 0d db f6 35 50 95 b5 50 10
0030 00 47 9e 66 00 00
..s.:.." u_....E.
.([email protected]. ..Q[T9..
...P..8. ..5P..P.
.G.f..
ok wireshark ukazuje to co som chcel..
myslis ze mam ukladat aj to co je cervenym? to je vlaste generovane cislo riadku .
to co je zelenym je packet to je vlastne co chcem.
a ako dostanem to co je zltym lebo to nieje binarne ale ako to je kodovane? pripadne ako dostanem text na to kodovanie v C++ ?
//autoeditácia príspevku (04 Mar 2011, 14:28)
Takze novy problem:
z tohto:(toto ukazuje WS)
0000 00 22 75 5f 1c 18 00 1a 73 a1 3a 16 08 00 45 00
0010 00 28 2a 8b 40 00 80 06 6b b2 c0 a8 02 05 4a 7d
0020 57 68 ca e2 00 50 58 e7 1d ba 63 09 3b 8f 50 10
0030 10 92 5a 43 00 00
."u_.... s.:...E.
.(*.@... k.....J}
Wh...PX. ..c.;.P.
..ZC..
dostat na toto (toto ukazuje subor po otvoreni v txt)
Ôòˇ ˙˙ ęçpMOż 6 6 "u_ sˇ: E (*‹@ €k˛Ŕ¨J}WhĘâ PXçşc ;ŹP’ZC
0010 00 28 00 00 40 00 38 06 da 8e 51 5b 54 39 c0 a8
0020 02 05 00 50 c9 8b 38 0d db f6 35 50 95 b5 50 10
0030 00 47 9e 66 00 00
..s.:.." u_....E.
.([email protected]. ..Q[T9..
...P..8. ..5P..P.
.G.f..
ok wireshark ukazuje to co som chcel..
myslis ze mam ukladat aj to co je cervenym? to je vlaste generovane cislo riadku .
to co je zelenym je packet to je vlastne co chcem.
a ako dostanem to co je zltym lebo to nieje binarne ale ako to je kodovane? pripadne ako dostanem text na to kodovanie v C++ ?
//autoeditácia príspevku (04 Mar 2011, 14:28)
Takze novy problem:
z tohto:(toto ukazuje WS)
0000 00 22 75 5f 1c 18 00 1a 73 a1 3a 16 08 00 45 00
0010 00 28 2a 8b 40 00 80 06 6b b2 c0 a8 02 05 4a 7d
0020 57 68 ca e2 00 50 58 e7 1d ba 63 09 3b 8f 50 10
0030 10 92 5a 43 00 00
."u_.... s.:...E.
.(*.@... k.....J}
Wh...PX. ..c.;.P.
..ZC..
dostat na toto (toto ukazuje subor po otvoreni v txt)
Ôòˇ ˙˙ ęçpMOż 6 6 "u_ sˇ: E (*‹@ €k˛Ŕ¨J}WhĘâ PXçşc ;ŹP’ZC
Re: Generovanie packetov...
no v C ked otvaras subor tak davas ze Mode jeho otvorenia ... R or W. R+ W+ RB WB ... tak to B znamena Binary ... v podstate to cislo 33Hex = 51Dec tak zapises ono ho tam zapise priamo takto a ty ho precitas cez HEX editor nejaky. napr. PSPad ma vsebe ... ide o to ze ty tam tie cisla nemozes priamo pisat ... alebo ked nie binary ... tak mozno pomocou formatovania .. tu si to mozes pozret fromatovanie http://people.tuke.sk/igor.podlubny/C/Kap6.htm a pracu zo subormi http://people.tuke.sk/igor.podlubny/C/Kap8.htm
Re: Generovanie packetov...
no po dlhsom badani
si nemyslim ze je to binarny zapis ani nic podobne...
takze otazka ostava ako z
dostat
alebo rovno
pretoze toto posledne potrebujem dostat.
takze otazka ostava ako z
Kód: Vybrať všetko
00 1a 73 a1 3a 16 00 22 75 5f 1c 18 08 00 45 00
00 28 8e 10 40 00 6d 06 5f 45 40 0c 1d c1 c0 a8
02 05 14 46 c0 17 50 41 6e 62 eb fd a7 a6 50 14
40 00 28 b0 00 00 Kód: Vybrať všetko
..s.:.." u_....E.
.([email protected]. _E@.....
...F..PA nb....P.
@.(...
Kód: Vybrať všetko
Ôòˇ ˙˙ ęçpMOż 6 6 "u_ sˇ: E (*‹@ €k˛Ŕ¨J}WhĘâ PXçşc ;ŹP’ZC
Re: Generovanie packetov...
netvrdil som ze je to binarny zapis to by tam boli jednotky a nuly tvrdim ze ten subor bol zapisany binarne ... alebo s formátovany dal som ti linky pravdepodobne si moc necital co sa vnich uvadza a ak to funguje ... na ukazku ti spravim function C++ ktora z tamtoho HEX ti spravi tam ten text ... do suboru napr... aj ked podla mna by bolo jednoduchsie generovat packet v desiatkovej sustave ... ale nevadi...Forsaken napísal:no po dlhsom badanisi nemyslim ze je to binarny zapis ani nic podobne...
len sa musi doinstalovat VS10
//edit:vidim ze uz to spravil paralen v C presne tak som to myslel ak chceš pomocou streamov tak sa na to kuknem
Re: Generovanie packetov...
V Cecku by som to ulozil tak nejak
Kód: Vybrať všetko
#include <stdio.h>
int main(){
FILE *f1;
FILE *f2;
f1 = fopen("paket.txt", "r");
f2 = fopen("paket", "wb");
int cislo;
while (fscanf(f1,"%x ",&cislo) != EOF){
fwrite(&cislo, sizeof(cislo)/4, 1 ,f2);
}
fclose(f1);
fclose(f2);
}Re: Generovanie packetov...
zdravim Paralen ...
je tam este nejaka ina moznost ako to ulozit?
pretoze to vygeneruje nejaku postupnost no nezhoduje sa.
//autoeditácia príspevku (04 Mar 2011, 23:29)
upresnim to:
majme S-MAC: ff ff ff ff ff ff
s paralenovym programom to vyhodi: ˙˙˙˙˙˙
= zhoda s wiresharkom
lenze ked exportujem cely packet.. nielen smac
tj:
0000 ff ff ff ff ff ff 00 1a 73 a1 3a 16 08 06 00 01
0010 08 00 06 04 00 01 00 1a 73 a1 3a 16 c0 a8 02 05
0020 00 00 00 00 00 00 c0 a8 02 01
Wireshark ukaze
........ s.:.....
........ s.:.....
........ ..
= zhoda s wiresharkom
potrebujem dostat ale nieco ine... neda sa to sem skopirovat. nezhoduje sa to. ked ulozim packet vo wiresharku do suboru. a ked to prejdem tvojim programom
//este skusim vlozit to tam 2x
ok takze nefunguje to spravne... pri FF FF FF FF FF FF to slo... inak to nejde... neviem preco akoby to nevedelo nacitat cely retazec.
je tam este nejaka ina moznost ako to ulozit?
pretoze to vygeneruje nejaku postupnost no nezhoduje sa.
//autoeditácia príspevku (04 Mar 2011, 23:29)
upresnim to:
majme S-MAC: ff ff ff ff ff ff
s paralenovym programom to vyhodi: ˙˙˙˙˙˙
= zhoda s wiresharkom
lenze ked exportujem cely packet.. nielen smac
tj:
0000 ff ff ff ff ff ff 00 1a 73 a1 3a 16 08 06 00 01
0010 08 00 06 04 00 01 00 1a 73 a1 3a 16 c0 a8 02 05
0020 00 00 00 00 00 00 c0 a8 02 01
Wireshark ukaze
........ s.:.....
........ s.:.....
........ ..
= zhoda s wiresharkom
potrebujem dostat ale nieco ine... neda sa to sem skopirovat. nezhoduje sa to. ked ulozim packet vo wiresharku do suboru. a ked to prejdem tvojim programom
//este skusim vlozit to tam 2x
ok takze nefunguje to spravne... pri FF FF FF FF FF FF to slo... inak to nejde... neviem preco akoby to nevedelo nacitat cely retazec.
Re: Generovanie packetov...
No to bude tym, ze ked das vo wiresharku ulozit paket (File/Save as/napr. wireshark pcap) tak ten format obsahuje aj hlavicku
Pochopil som dobre?
Pochopil som dobre?
Re: Generovanie packetov...
ok a teda ako tam tu hlavicku pridat?
Re: Generovanie packetov...
Budes postupovat podla toho linku co som dal vyssie
Cize pridas tam tu strukturu (ak nerobis v unixe tak tie guint16 a guint32(kniznica glib) zmenis na :
Vyplnis kazdy jeden zaznam tejto strktury, napr.
Zapises to do toho suboru
a nakoniec doplnis svoje hexa data...
Kód: Vybrať všetko
typedef struct pcap_hdr_s {
int magic_number; /* magic number */
int16_t version_major; /* major version number */
int16_t version_minor; /* minor version number */
int thiszone; /* GMT to local correction */
int sigfigs; /* accuracy of timestamps */
int snaplen; /* max length of captured packets, in octets */
int network; /* data link type */
} pcap_hdr_t;
Kód: Vybrať všetko
pcap_hdr_t hlavicka;
hlavicka.magic_number = 0xd4c3b2a1;
hlavicka.version_major = 2;
hlavicka.version_minor = 4;
hlavicka.thiszone = 0;
hlavicka.sigfigs =0;
hlavicka.snaplen = 0xFFFF;
hlavicka.network = 1; Kód: Vybrať všetko
fwrite(&hlavicka, sizeof(pcap_hdr_t), 1 ,f2);Re: Generovanie packetov...
ok diky...
spravim to a pastnem to tu... lebo to urcite nepojde... zatial dobru noc.
//autoeditácia príspevku (05 Mar 2011, 16:08)
btw
magic_number: used to detect the file format itself and the byte ordering. The writing application writes 0xa1b2c3d4 with it's native byte ordering format into this field. The reading application will read either 0xa1b2c3d4 (identical) or 0xd4c3b2a1 (swapped). If the reading application reads the swapped 0xd4c3b2a1 value, it knows that all the following fields will have to be swapped too.
dal som tam to writing co nato vravite?
//autoeditácia príspevku (05 Mar 2011, 16:13)
_____________________________________________________
takze takto: zaciatok ide dobre... ale potom sa to posere...
kde moze byt chyba?
spravim to a pastnem to tu... lebo to urcite nepojde... zatial dobru noc.
//autoeditácia príspevku (05 Mar 2011, 16:08)
btw
magic_number: used to detect the file format itself and the byte ordering. The writing application writes 0xa1b2c3d4 with it's native byte ordering format into this field. The reading application will read either 0xa1b2c3d4 (identical) or 0xd4c3b2a1 (swapped). If the reading application reads the swapped 0xd4c3b2a1 value, it knows that all the following fields will have to be swapped too.
dal som tam to writing co nato vravite?
//autoeditácia príspevku (05 Mar 2011, 16:13)
_____________________________________________________
takze takto: zaciatok ide dobre... ale potom sa to posere...
kde moze byt chyba?