Analiza izmenjave podatkov med spletno inicializacijo WhatsApp

Analiza izmenjave podatkov med spletno inicializacijo WhatsApp
Analiza izmenjave podatkov med spletno inicializacijo WhatsApp

Razumevanje spletne inicializacije WhatsApp

V digitalni dobi je razumevanje komunikacije med napravami ključnega pomena, zlasti za aplikacije, kot je WhatsApp Web. Pri inicializaciji WhatsApp Web s skeniranjem kode QR se med napravo Android in brskalnikom izmenjujejo različni parametri. Ta postopek vključuje šifriran promet, ki ga je lahko težko analizirati.

Kljub uporabi orodij, kot sta tpacketcapture in Burp Suite, s certifikatom, nameščenim v napravi, promet ostaja šifriran, kar sproža vprašanja o protokolih, ki jih uporablja WhatsApp. Ta članek se poglobi v mehanizme za tem postopkom in razišče možne metode za analizo izmenjanih parametrov med spletnimi sejami WhatsApp.

Ukaz Opis
mitmproxy.http.HTTPFlow Predstavlja en sam tok HTTP v mitmproxy, ki zajame zahtevo in odgovor.
ctx.log.info() Beleži informacije v konzolo mitmproxy za namene odpravljanja napak.
tshark -i wlan0 -w Zažene zajem omrežnega prometa na vmesniku wlan0 in ga zapiše v datoteko.
tshark -r -Y -T json Prebere datoteko za zajemanje, uporabi filter za prikaz in izpiše rezultat v formatu JSON.
jq '.[] | select(.layers.http2)' Obdela izhod JSON za filtriranje vnosov, ki vsebujejo promet HTTP/2.
cat whatsapp_filtered.json Prikaže vsebino filtrirane datoteke JSON, ki vsebuje spletni promet WhatsApp.

Podrobna razlaga skriptov za analizo prometa

Prvi scenarij izkorišča mitmproxy, zmogljivo orodje za prestrezanje prometa HTTP in HTTPS. V tem skriptu definiramo razred WhatsAppWebAnalyzer ki zajame zahteve za web.whatsapp.com. The request metoda se prikliče za vsako zahtevo HTTP, ki poteka skozi proxy. S preverjanjem, ali je zahteva vložena na web.whatsapp.com, povečamo števec in zabeležimo URL zahteve z uporabo ctx.log.info. To nam omogoča spremljanje in beleženje vse komunikacije med napravo Android in WhatsApp Web, kar omogoča vpogled v izmenjane podatke med postopkom skeniranja kode QR. The addons seznam registrira naš dodatek po meri z mitmproxy, kar omogoča nemoteno delovanje skripta, ko se zažene mitmproxy.

Drugi skript uporablja tshark, različico Wiresharka v ukazni vrstici, za zajem in analizo omrežnega prometa. Ukaz tshark -i wlan0 -w sproži zajem na brezžičnem vmesniku in zapiše izhod v datoteko. Ta datoteka se nato prebere in filtrira, da prikaže samo promet, povezan z naslovom IP naprave Android, z uporabo tshark -r -Y -T json. Izhod JSON je nadalje obdelan z jq, procesor JSON ukazne vrstice, za filtriranje prometa HTTP/2 z uporabo jq '.[] | select(.layers.http2)'. Filtrirani promet se shrani in prikaže z uporabo cat whatsapp_filtered.json, ki zagotavlja podroben pregled spletne komunikacije WhatsApp. Ti skripti skupaj ponujajo robustno metodo za analizo šifriranega prometa in pomagajo odkriti parametre, izmenjane med inicializacijo WhatsApp Web.

Prestrezanje in analiziranje spletnega prometa WhatsApp

Uporaba Pythona in mitmproxy za analizo prometa

import mitmproxy.http
from mitmproxy import ctx

class WhatsAppWebAnalyzer:
    def __init__(self):
        self.num_requests = 0

    def request(self, flow: mitmproxy.http.HTTPFlow) -> None:
        if "web.whatsapp.com" in flow.request.pretty_host:
            self.num_requests += 1
            ctx.log.info(f"Request {self.num_requests}: {flow.request.pretty_url}")

addons = [WhatsAppWebAnalyzer()]

Dešifriranje spletnega prometa WhatsApp za analizo

Uporaba Wireshark in Tshark za dešifriranje omrežnega prometa

#!/bin/bash

# Start tshark to capture traffic from the Android device
tshark -i wlan0 -w whatsapp_traffic.pcapng

# Decrypt the captured traffic
tshark -r whatsapp_traffic.pcapng -Y 'ip.addr == <ANDROID_DEVICE_IP>' -T json > whatsapp_traffic.json

# Filter for WhatsApp Web traffic
cat whatsapp_traffic.json | jq '.[] | select(.layers.http2)' > whatsapp_filtered.json

# Print the filtered traffic
cat whatsapp_filtered.json

Raziskovanje naprednih tehnik za analizo spletnega prometa WhatsApp

Eden ključnih vidikov analize spletnega prometa WhatsApp je razumevanje uporabljenih šifrirnih protokolov. WhatsApp uporablja šifriranje od konca do konca, kar pomeni, da so sporočila šifrirana v napravi pošiljatelja in dešifrirana samo v napravi prejemnika. Zaradi tega je prestrezanje in dešifriranje prometa zahtevna naloga. Vendar pa lahko razumevanje mehanizma izmenjave ključev ter vloge javnih in zasebnih ključev zagotovi vpogled v možne ranljivosti in metode za zakonito prestrezanje. Poleg tega lahko analiza začetnega rokovanja med napravo in strežnikom razkrije dragocene informacije o procesu šifriranja in vseh metapodatkih, ki bi se lahko izmenjali.

Drug pristop je uporaba specializirane strojne ali programske opreme, ki lahko izvaja globoko preverjanje paketov (DPI). Orodja DPI lahko analizirajo vsebino podatkovnih paketov, ko gredo skozi omrežje, kar je uporabno za prepoznavanje določenih aplikacij ali protokolov, tudi če je promet šifriran. Na primer, uporaba orodij, kot je Wireshark, v kombinaciji z vtičniki, zasnovanimi za promet WhatsApp, lahko pomaga razčleniti komunikacijske vzorce in identificirati vrste sporočil, ki se izmenjujejo. Poleg tega lahko razumevanje osnovnega protokola WebSocket, ki ga uporablja WhatsApp Web, ponudi dodatne vpoglede, saj ima ta protokol pomembno vlogo pri komunikaciji v realnem času med brskalnikom in strežniki WhatsApp.

Pogosta vprašanja o analizi spletnega prometa WhatsApp

  1. Katera orodja so najboljša za zajemanje spletnega prometa WhatsApp?
  2. Orodja kot mitmproxy in tshark se običajno uporabljajo za zajem in analizo omrežnega prometa.
  3. Kako WhatsApp zagotavlja varnost svojega spletnega prometa?
  4. WhatsApp uporablja šifriranje od konca do konca, ki zagotavlja, da so sporočila šifrirana v napravi pošiljatelja in dešifrirana samo v napravi prejemnika.
  5. Ali je promet mogoče dešifrirati, če je šifriran?
  6. Dešifriranje je izjemno zahtevno zaradi uporabe šifriranja od konca do konca, vendar lahko razumevanje mehanizmov izmenjave ključev zagotovi vpogled.
  7. Kaj je globinski pregled paketov?
  8. Globoko preverjanje paketov (DPI) je oblika obdelave podatkov, ki podrobno pregleduje podatke, poslane po omrežju, za identifikacijo protokolov ali aplikacij.
  9. Kako WebSockets prispevajo k spletni komunikaciji WhatsApp?
  10. WebSockets omogočajo komunikacijo v realnem času med brskalnikom in strežniki WhatsApp ter igrajo ključno vlogo pri dostavi sporočil.
  11. Ali obstajajo pravni vidiki pri prestrezanju prometa WhatsApp?
  12. Da, prestrezanje prometa ima lahko pravne posledice in ga je treba izvesti v skladu z lokalnimi zakoni in predpisi.
  13. Ali je mogoče javne in zasebne ključe kakorkoli izkoriščati?
  14. Izkoriščanje javnih in zasebnih ključev je zelo zapleteno in običajno nepraktično brez pomembnih računalniških virov ali ranljivosti.
  15. Kakšne so omejitve uporabe mitmproxy za ta namen?
  16. mitmproxy lahko zajame promet, vendar ga morda ne bo dešifriral zaradi robustnih metod šifriranja WhatsApp.
  17. Kako so lahko metapodatki uporabni pri analizi prometa?
  18. Metapodatki lahko zagotovijo vpogled v komunikacijske vzorce, kot so časovni žigi sporočil in uporabniške interakcije, ne da bi razkrili vsebino sporočila.

Končne misli o analizi spletnega prometa WhatsApp

Razumevanje izmenjave parametrov med inicializacijo WhatsApp Web zahteva napredna orodja in tehnike zaradi uporabljenega močnega šifriranja. Medtem ko tradicionalne metode, kot sta tpacketcapture in Burp Suite, morda ne uspejo, lahko uporaba globokega pregleda paketov in specializirane programske opreme ponudi boljše vpoglede. Čeprav so te metode zahtevne, lahko pomagajo pri dešifriranju šifriranega prometa in zagotavljajo jasnejšo sliko podatkov, izmenjanih med napravo Android in brskalnikom med postopkom skeniranja kode QR.