Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   С/С++, C#, Delphi, .NET, Asm (https://forum.antichat.xyz/forumdisplay.php?f=24)
-   -   Создать пакет на win RAW Socket (https://forum.antichat.xyz/showthread.php?t=202841)

mal4Ik 09.05.2010 19:10

Создать пакет на win RAW Socket
 
Как взаимодействовать с TCP заголовком отсылаемого пакета, а именно мне нужно самому изменять sequenceNumber и acknowledgeNumber в TCP заголовке пакета.

Если у кого есть, на любом языке, киньте примерчик. :)

slesh 09.05.2010 19:21

а смысл? подделка TCP пакета сейчас тебе мало что даст потому что винда врядли выпустит его. так что юзать надо дрова или спец либы (с темеже дровами)

mal4Ik 09.05.2010 22:32

Код:

Structure  TCPHeader
    sourcePort.w        ; порт отправителя
    destinationPort.w  ; порт назначения
    sequenceNumber.l    ; номер последовательности
    acknowledgeNumber.l ; номер подтверждения
    dataoffset.b        ; смещение на область данных
    flags.b            ; флаги
    windows.w          ; размер окна
    checksum.w          ; контрольная сумма
    urgentPointer.w    ; срочность
EndStructure

Global addr1.SOCKADDR_IN

If InitNetwork()
  ExamineIPAddresses()
  IPnet=NextIPAddress()
EndIf

            socket1 = SOCKET_(#AF_INET, #SOCK_RAW, #IPPROTO_TCP)
            addr1\sin_family = #AF_INET
            addr1\sin_addr = IPnet
            addr1\sin_port = htons_(81)
            headtcp.TCPHeader\acknowledgeNumber=123
            headtcp.TCPHeader\checksum=0
            headtcp.TCPHeader\dataoffset=0
            headtcp.TCPHeader\destinationPort=htons_(80)
            headtcp.TCPHeader\flags=0
            headtcp.TCPHeader\sequenceNumber=321
            headtcp.TCPHeader\sourcePort=htons_(81)
            headtcp.TCPHeader\urgentPointer=0
            headtcp.TCPHeader\windows=0
            bind_(socket1, @addr1, SizeOf(SOCKADDR_IN))
            Debug sendto_(socket1, headtcp, SizeOf(TCPHeader), 0, @addr1, SizeOf(SOCKADDR_IN))
            closesocket_(socket1)

пробую отослать любой пакет, но в результате -1 ERROR :(
пишу на PureBasic


Время: 17:28