Etikettarkiv: tcpdump

Apple iPhone/iPad och Remote Virtual Interfaces

Jag har tidigare skrivit om hur du analyserar iPhone och iPad-appars nyttjande av API:er med hjälp av Charles Proxy. Dock så när jag testade en App nyligen så sket den högaktningsfullt i mina proxy-inställningar. Det man då kan göra är att använda något som heter Remote Virtual Interfaces (RVI).

Att använda RVI kräver en Mac med kommandot rvictl. Det enda du behöver göra är att skriva in följande kommando från kommandotolken med iPhone eller iPad ansluten via USB-kabeln:

$ rvictl -s 91f2312af0624dade4731e934d3962e45dda0833

Där den långa strängen ska vara din UDID eller identifier som det heter i Xcode Organizer. Du kan även hitta UDID genom att klicka på enhetens serienummer i iTunes.

När kommandot genomförts så skapas en ny virtuell enhet vid namn rvi0 enligt följande:

$ ifconfig rvi0
rvi0: flags=3005<UP,DEBUG,LINK0,LINK1> mtu 0

Sen är det bara att använda Wireshark eller tcpdump för att lagra och titta på kommunikation till och från telefonen. Skillnaden mot att exempelvis använda Charles är att du ej ser krypterad https-trafik.

Exempel på hela förfarandet:

Klicka på bilden för en större version.

Uppdatering: Glömde att skriva att Apple även har en supportsida för ”Getting a Packet Trace”.