2016-09-28 2 views
0

Vor allem Entschuldigung für mein Englisch.Capture-Paket von Handy mit Wireshark

Ich muss Pakete erfassen von meiner Android-Anwendung zu Webservice, wenn es wirklich verschlüsselt ist.

Um dies zu tun, habe ich meine WLAN-Hotspot meines Mobiltelefons eingeschaltet.

Nach, ich mein PC mit diesem WLAN verbunden in der Lage sein, dieses Netzwerk mit wireshark zu beobachten.

Dann lief ich das Wireshark Programm und beginne zu beobachten, dass WLAN-Netzwerk.

Ich erwarte HTTP Protokoll-Pakete zu sehen, wenn ich HTTPS POST requets von meinem Android App gesendet.

Aber ich kann das nicht sehen. Stattdessen sehe ich einige TCP- und QUIC-Protokollpakete. Eigentlich hat QUIC-Pakete Feld, das "Encrypted" sagt, das ich sehen möchte, aber wie ich weiß, ist es UDP-Paket und ich weiß nicht, warum es viele UDP-Pakete auch gibt und ich denke, dass sie nicht das sind, was ich brauche (aber nicht sicher).

Eigentlich manchmal habe ich HTTP-Pakete, aber Host ist ssw.live.com. Aber mein Ziel-Host ist eigentlich anders. Das möchte ich also nicht erfassen.

Folgende ist meine HTTP-Anforderung

HttpsURLConnection urlConnection = setUpHttpsConnection(url.toString()); 

    try { 
     urlConnection.setRequestMethod("POST"); 
    } catch (ProtocolException e) { 
     e.printStackTrace(); 
    } 
    urlConnection.setRequestProperty("Content-Type", "text/plain; charset=utf-8"); 

    urlConnection.setHostnameVerifier(new HostnameVerifier() { 

     @Override 
     public boolean verify(String s, SSLSession sslSession) { 
      HostnameVerifier hv = 
        HttpsURLConnection.getDefaultHostnameVerifier(); 
      return hv.verify("my.hostname.com.tr", sslSession); 
     } 

    }); 

Es folgt Screenshot, nachdem ich HTTP POST-Anforderung senden. Es gibt nur ein HTTP-Paket und es ist nicht verwandt.

enter image description here

Innerhalb dieses HTTP-Paket;

enter image description here

Hostname ist anders.

Ich habe auch versucht, einige Websites auf meinem PC zu öffnen, um zu sehen, ob ich die Pakete meines PCs erfassen kann, aber manchmal werden keine HTTP-Protokollpakete gesendet, während ich durch das Öffnen einiger Websites rechne.

Ich möchte wissen, gibt es irgendeine unangemessene Sache von denen, die ich schrieb.

Ist es möglich, auf diese Weise Pakete von meinem Handy zu erfassen?

Wenn ja, warum kann ich sie nicht sehen?

Jede Idee wäre willkommen. Danke im Voraus.

Antwort

0

Ich gehe davon aus, dass der Webservice auf einem Webserver im Internet gehostet wird. Die Anwendung auf Ihrem Telefon greift über das mobile Datennetz Ihres Telefons auf den Webservice zu. Ihr PC sieht diesen Datenverkehr nicht. Es wird nur der Datenverkehr angezeigt, der über das WLAN-Hotspot-Netzwerk gesendet wird. Und so kann Wireshark es nicht erfassen.

Sie können versuchen, die Anwendung auf dem Android-Simulator auf Ihrem PC auszuführen. Der Android-Simulator verwendet die Netzwerkverbindung Ihres PCs, um mit dem Webservice zu kommunizieren.Dann sollten Sie diesen Netzwerkverkehr erfassen können.

Oder installieren Sie tcpdump auf Ihrem Telefon.

+0

Tatsächlich habe ich bemerkt, dass es auch TLS-Pakete gibt. Jedes Mal, wenn ich eine HTTPS-POST-Anfrage gesendet habe, habe ich diese TLS-Pakete bekommen. Sind sie nicht was ich will? Sie sind auch verschlüsselt. – Hilal