Mr. X: Erkennung einer SSH Verbindung möglich?

Hallo,

mal angenommen ich halte eine SSH Verbindung zu Port 80 ( anstatt Port 22 !) eines anderen Servers, ist es dann für jemanden möglich zu erkennen, dass es sich hier um eine SSH Verbindung handelt oder muss eine andere Person davon ausgehen, dass es sich um eine http Verbindung handelt?

Gruss Mr. X

  1. Moin X,

    mal angenommen ich halte eine SSH Verbindung zu Port 80 ( anstatt Port 22 !) eines anderen Servers, ist es dann für jemanden möglich zu erkennen, dass es sich hier um eine SSH Verbindung handelt oder muss eine andere Person davon ausgehen, dass es sich um eine http Verbindung handelt?

    ich frage mal so blöd dahin: Was hat das mit dem Port zu tun?

    regds
    Mike©

    --
    Freunde kommen und gehen. Feinde sammeln sich an.
    1. Moin X,
      ich frage mal so blöd dahin: Was hat das mit dem Port zu tun?

      regds
      Mike©

      Eigentlich nichts, aber wenn die Verbindung auf Port 22 läuft ist die Wahrscheinlichkeit grösser, dass es sich um eine SSH Verbindung handelt...

      1. Moin X,

        Eigentlich nichts, aber wenn die Verbindung auf Port 22 läuft ist die Wahrscheinlichkeit grösser, dass es sich um eine SSH Verbindung handelt...

        ebent, aber sollte man über den Port auf die Art der Verbindung schließen können?

        regds
        Mike©

        --
        Freunde kommen und gehen. Feinde sammeln sich an.
        1. hi,

          sollte man über den Port auf die Art der Verbindung schließen können?

          Nicht unbedingt. Man kann eventuell über die Fähigkeiten des Server-Administrators Auskünfte erlangen.

          Grüße aus Berlin

          Christoph S.

          1. Also gut, ich stelle die Frage anders: Gibt es irgendwo während der Übertragung Hinweise oder steht vielleicht irgendwo in den Headern oder so, dass es sich um eine SSH Verbindung handelt?

            1. Hallo Mr.,

              Jedes Protokoll hat eine gewisse, ihm eigene Struktur, sonst würde es ja auch nicht viel Sinn machen. Wärend die Verbindung schon aufgebaut ist, kann man verschlüsselte Protokolle evt. nicht unterscheiden, weil man diese Struktur nicht erkennen kann, aber beim Verbindungsaufbau müssen idR erst mal unverschlüsselte Daten ausgetauscht werden. Anhand dieser Daten kann man dann erkennen, was für ein Protokoll das ist.

              Grüße

              Daniel

            2. Moin,

              Also gut, ich stelle die Frage anders: Gibt es irgendwo während der Übertragung Hinweise oder steht vielleicht irgendwo in den Headern oder so, dass es sich um eine SSH Verbindung handelt?

              Najanatürlich. HTTP und SSH unterscheiden sich in Zweck, Anwendung und Protokollart (Klartext vs. Binär, verschlüsselt vs. unverschlüsselt, verbindungsorientiert vs. verbindungslos) vollständig. Bei HTTP gibt es ein bisschen ASCII als Request, ein bisschen ASCII als Response-Header und viele opaque Oktetts als Response, die üblicherweise als ein massiver Strom kommen.

              Wenn man sich aus den Verbindungen nun wahllos ein paar Pakete rausgreift und sich den Inhalt ansieht, dann gibt es drei Möglichkeiten: Man erwischt HTTP-Request- oder -Response-Header, dann ist der Fall klar. Oder man kriegt nur ein bisschen vom Body mit, da liegt aber HTML oder was ähnliches drin, ebenfalls klar. Oder man kriegt was vom Body mit und es wird grade was komprimiertes oder verschlüsseltes übertragen. Nur im letzten Fall besteht die Gefahr SSH- und HTTP-Traffic zu verwechseln. Dann hat man aber immer noch den Unterschied dass HTTP-Traffic in der Regel die gesamte Bandbreite ausnutzt, wärend SSH mal so mit ein paar Bytes pro Sekunde und vielen Pausen dahindümpelt.

              --
              Henryk Plötz
              Grüße aus Berlin
              ~~~~~~~~ Un-CDs, nein danke! http://www.heise.de/ct/cd-register/ ~~~~~~~~
              ~~ Help Microsoft fight software piracy: Give Linux to a friend today! ~~
    2. hi,

      ich frage mal so blöd dahin: Was hat das mit dem Port zu tun?

      SSH läßt man normalerweise nicht über port 80 laufen. Als Voreinstellung gilt port 443

      Grüße aus Berlin

      Christoph S.

      1. 你好 Christoph,

        ich frage mal so blöd dahin: Was hat das mit dem Port zu tun?

        SSH läßt man normalerweise nicht über port 80 laufen. Als Voreinstellung
        gilt port 443

        SSH bitte nicht mit SSL verwechseln.

        再见,
         CK

        --
        If God had a beard, he'd be a UNIX programmer.
        http://wwwtech.de/
        1. hallo CK,

          SSH läßt man normalerweise nicht über port 80 laufen. Als Voreinstellung
          gilt port 443
          SSH bitte nicht mit SSL verwechseln.

          Der Hinweis ist berechtigt und sicher hilfreich. Ich habe da aber nix verwechselt, sondern bloß in etwas ältere Notizen (meine eigenen) geschaut, ohne nochmal darüber nachzudenken, _wann_ und _warum_ ich mir das notiert habe. Vielleicht hast du noch zwei erläuternde Sätze parat.

          Grüße aus Berlin

          Christoph S.

          1. 你好 Christoph,

            hallo CK,

            SSH läßt man normalerweise nicht über port 80 laufen. Als Voreinstellung
            gilt port 443
            SSH bitte nicht mit SSL verwechseln.

            [...] Vielleicht hast du noch zwei erläuternde Sätze parat.

            SSH ist nicht dasselbe wie SSL. SSL, eigentlich “HTTP over TLS”, was
            hinlaenglich als HTTPS bekannt ist, sollte laut IANA auf Port 443 laufen.
            SSH sollte laut IANA auf Port 22 laufen und ist ein ganz anderes Protokoll
            und hat _nichts_ mit HTTPS zu tun.

            再见,
             CK

            --
            Wenn du gehst, gehe. Wenn du sitzt, sitze. Und vor allem: schwanke nicht!
            http://wwwtech.de/
            1. hi,

              SSH ist nicht dasselbe wie SSL. SSL, eigentlich “HTTP over TLS”, was
              hinlaenglich als HTTPS bekannt ist, sollte laut IANA auf Port 443 laufen.
              SSH sollte laut IANA auf Port 22 laufen und ist ein ganz anderes Protokoll
              und hat _nichts_ mit HTTPS zu tun.

              Danke. Dann habe ich mich zwar nicht heute, aber vor rund anderthalb Jahren bei der Niederschrift meiner Notizen geirrt und die beiden port-Angaben schlicht verwechselt (praktisch umzusetzen hatte ich beides noch nicht, da hätte ich ja wohl gemerkt). Ich hätte wohl nochmal bei der IANA nachlesen sollen, das hole ich grade nach.

              Ich hätte auch anstelle meiner Notizen bloß meine eigenen Kommentar-Übersetzungen der httpd.conf nachlesen brauchen, da stehts ja richtig drin ;-)

              Grüße aus Berlin

              Christoph S.

              1. Hallo Christoph,

                Ein grep <protokol> /etc/services ist da auch meist recht aufschlussreich.

                Grüße

                Daniel

              2. Hi,

                schnellr a Ausred wia a Maus a Loch.

                Ciao

            2. Hallo Christian!

              SSH sollte laut IANA auf Port 22 laufen und ist ein ganz anderes Protokoll
              und hat _nichts_ mit HTTPS zu tun.

              immerhin wird openssl von openssh verwendet ;-)

              Grüße
              Andreas

              --
              SELFHTML Feature Artikel: http://aktuell.de.selfhtml.org/artikel/
  2. Hallo Mr. X,

    mal angenommen ich halte eine SSH Verbindung zu Port 80 ( anstatt Port 22 !) eines anderen Servers, ist es dann für jemanden möglich zu erkennen, dass es sich hier um eine SSH Verbindung handelt oder muss eine andere Person davon ausgehen, dass es sich um eine http Verbindung handelt?

    Beim SSH-Protokoll müssen _beide_ Partner zugleich am Anfang eine Versionskennung senden, laut < http://www.ietf.org/internet-drafts/draft-ietf-secsh-transport-22.txt> ist das wie folgt:

    SSH-protoversion-softwareversion SP comments CR LF

    Also wäre

    SSH-2.0-meinsshclient_0.1\r\n

    (wobei \r\n Neuezeile und Wagenrücklauf sind, also CRLF) ein gültiger Anfangsstring für SSH. An Hand dessen müsste der Server durchaus in der Lage sein, eine SSH-Verbindung zu erkennen.

    Viele Grüße,
    Christian

  3. Hi,

    ich kann mir denken, was Du vor hast...

    Du mußt wissen, was Du tust, wenn Du aus Deiner Firma heraus, eine Verbindung tunneln möchtest... (liege ich falsch?).

    Also, wenn Du es nicht übertreibst, fällt es -vielleicht- nicht auf.
    Aber wenn wenn, dann kann "the man in the middle" zwar nicht sehen, was Du da machst, aber er kann mitsniffen, daß es kein http ist!

    Gruß
    Reiner