GithubHelp home page GithubHelp logo

metubeapp / pcapdroid Goto Github PK

View Code? Open in Web Editor NEW

This project forked from emanuele-f/pcapdroid

0.0 0.0 0.0 45.84 MB

No-root network monitor and traffic dump tool for Android devices

Home Page: https://emanuele-f.github.io/PCAPdroid

License: GNU General Public License v3.0

Java 65.85% CMake 0.73% C 32.83% Python 0.60%

pcapdroid's Introduction

PCAPdroid

PCAPdroid is an open source network monitoring and capture tool. It can capture an Android device traffic without rooting the device. The traffic can be sent to a remote receiver.

Features:

  • Log and examine the connections made by the user and system apps
  • Extract SNI, DNS query, HTTP request, HTTP URL and remote IP address
  • Apply a filter to only capture the traffic of the selected app
  • Easily download a PCAP file of the traffic thanks to the integrated HTTP server
  • Stream the PCAP to a remote receiver for further analysis (e.g. wireshark)
  • Decrypt HTTPS/TLS traffic via a remote mitmproxy
  • On rooted devices, it can capture the packets while other VPN apps are running

Important: the PCAP generated by PCAPdroid is not 100% accurate. Check out PCAP Reliability for more details.

PCAPdroid leverages the Android VpnService to receive all the traffic generated by the Android apps. No external VPN is actually created, the traffic is locally processed by the app.

Get it on F-Droid Get it on Google Play

Google Play and the Google Play logo are trademarks of Google LLC.

User Guide

Check out the quick start instructions or the full User Guide.

Community

You can help the PCAPdroid project in many ways:

  • Translate the app in your language
  • Improve the app theme and layout
  • Propose and discuss new features
  • Open bug reports with detailed information
  • Make a donation
  • Star the project on github and on the Play Store
  • Of course provide code pull requests!

You can reach the PCAPdroid community on the telegram group.

What is the netd app

Many applications rely on the Android DNS resolution service netd in order to resolve names. In such cases PCAPdroid will be unable to determine the originating app and will instead mark the connection with a question mark. Nevertheless, unless root capture is enabled, it will properly capture the selected app DNS traffic when an app filter is set.

Decrypting HTTPS/TLS Traffic

PCAPdroid supports decrypting TLS traffic by sending it to mitmproxy. Check out the User Guide for more details.

Third Party

  • zdtun: TCP/UDP/ICMP connections proxy
  • nDPI: deep packet inspection library, used to extract the connections metadata
  • nanohttpd: tiny HTTP server
  • CustomActivityOnCrash: handles app crashes gracefully and allows to copy the crash log

Building

PCAPdroid is intended to be built on a linux distribution, for example Debian or Ubuntu.

  1. Clone this repo
  2. Install the native dependencies: autogen autoconf bison flex libtool pkg-config libpcap-dev libjson-c-dev
  3. Run git submodule update --init
  4. Build the app

pcapdroid's People

Contributors

akihironagai avatar atrate avatar emanuele-f avatar izzysoft avatar sr093906 avatar tacothedank avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.