Wie wird eine Website übertragen?



  • Hallo,
    ich habe gerade rein interessehalber mit Wireshark mal meine HTTP Übertragungen aufgezeichnet. Dabei ist mir aufgefallen, dass lediglich der Header in Reinform übertragen wird, denn alle anderen Packets ergeben nur wirres Zeug. Dabei war die geladene Seite nicht verschlüsselt. Wir werden die Seiten jetzt also übertragen, wird immer eine Verschöüsselung angewandt oder wie?



  • Wahrscheinlich komprimiert, wenn du einen entsprechenden Header mal hier postest könnte man genaueres sagen.



  • Wenn du im header

    Accept-Encoding: text/plain
    

    angibst bekommst du auch Klartest.
    Ansonsten u.U. komprimiert, wie TheToast schon geschrieben hat.



  • Habe ich mal ausgegraben, vielleicht hilft dir das ja.
    Beispiel mit:

    Server: de.wikipedia.org
    Message: 
    GET /wiki/Hypertext_Transfer_Protocol
    Host: de.wikipedia.org
    <-- Leerzeile
    

    Edit: (stdin/stdout kannste ja umlenken 😉 Edit2: zB. mit: " tcpsend.exe < in.txt > out.txt ")

    #include <stdio.h>
    #include <WinSock2.h>
    
    #pragma comment (lib, "Ws2_32.lib")
    
    void errorexit(int code, const char *msg, ...)
    {
      va_list argv;
      va_start(msg, argv);
      vprintf(msg, argv);
      va_end(argv);
      getchar(); //blah, Windows ;)
      exit(code);
    }
    
    int main()
    {
      char buf[0x1000];
      int sock, rval;
      struct sockaddr_in addr = {0};
      struct hostent *host = 0;
      struct WSAData wsa;
    
      if (WSAStartup(WINSOCK_VERSION, &wsa) != 0)
        errorexit(-1, "WSAStartup() failed with: %i.", 
          WSAStartup(WINSOCK_VERSION, &wsa));
    
      while (!host)
      {
        printf("Server: ");
        fgets(buf, sizeof(buf), stdin);
        buf[strlen(buf) - 1] = '\0';
        host = gethostbyname(buf);
      }
      addr.sin_addr = *(struct in_addr*)host->h_addr;
      addr.sin_family = AF_INET;
      addr.sin_port = htons(80);
    
      buf[0] = '\0';
      puts("Message: (double return to send)");
      while (!strstr(buf, "\n\n"))
      {
        char tmp[0x100];
        fgets(tmp, sizeof(tmp), stdin);
        strcat(buf, tmp);
        if (strlen(buf) > sizeof(buf) - sizeof(tmp))
          break;
      }
    
      sock = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
      if (!sock)
        errorexit(-2, "socket() failed with: %i.", WSAGetLastError());
    
      if (connect(sock, (struct sockaddr*)&addr, sizeof(addr)) != 0)
        errorexit(-3, "Could not connect to host: %s. Error: %i.", 
          inet_ntoa(addr.sin_addr), WSAGetLastError());
    
      if (send(sock, buf, strlen(buf), 0) < strlen(buf))
        errorexit(-4, "send() failed with: %i.", WSAGetLastError());
    
      while ((rval = recv(sock, buf, sizeof(buf) - 1, 0)) > 0)
        buf[rval] = '\0', printf("%s", buf);
    
      closesocket(sock);
      WSACleanup();
      getchar();
      return 0;
    }
    


  • Danke für eure Antworten, mal schauen, ob die Website dekomprimiert bekomme.
    Ansonsten hier der Header, den ich vom Forum bekomme:

    ..~+..GET /forum
    / HTTP/1.1..Host
    : www.c-plusplus
    .de..User-Agent:
     Mozilla/5.0 (Wi
    ndows NT 6.1; WO
    W64; rv:2.0.1) G
    ecko/20100101 Fi
    refox/4.0.1..Acc
    ept: text/html,a
    pplication/xhtml
    +xml,application
    /xml;q=0.9,*/*;q
    =0.8..Accept-Lan
    guage: de-de,de;
    q=0.8,en-us;q=0.
    5,en;q=0.3..Acce
    pt-Encoding: gzi
    p, deflate..Acce
    pt-Charset: ISO-
    8859-1,utf-8;q=0
    .7,*;q=0.7..Keep
    -Alive: 115..Con
    nection: keep-al
    ive..Cookie: vie
    worhide=lastforu
    m_idX8XXresize_m
    essage_area_link
    sXinlineXX; phpb
    b2mysql_data=a%3
    A0%3A%7B%7D; php
    bb2mysql_sid=1fe
    c5e80139b034978c
    eb99e2783acbc; _
    _utma=184861883.
    28608477.1306081
    776.1306081776.1
    306086622.2; __u
    tmc=184861883; _
    _utmz=184861883.
    1306082901.1.2.u
    tmcsr=google|utm
    ccn=(organic)|ut
    mcmd=organic|utm
    ctr=std%3A%3Avec
    tor.push_back%20
    %C3%BCberladen; 
    phpbb2mysql_t=a%
    3A1%3A%7Bi%3A287
    096%3Bi%3A130608
    2717%3B%7D; __ut
    mb=184861883.4.1
    0.1306086622....
    


  • Das ist nicht die Antwort vom Forum, sondern der HTTP-Request, den dein Browser gesendet hat.



  • Athar schrieb:

    Das ist nicht die Antwort vom Forum, sondern der HTTP-Request, den dein Browser gesendet hat.

    Erstmal das und dein extrem übersichtliches Zitat zeigt auch, daß FF ausdrücklich

    Accept-Encoding: gzip, deflate
    

    akzeptiert. Dann musst du auch damit rechnen.


Anmelden zum Antworten