Commit Graph

379 Commits

Author SHA1 Message Date
emanuele-f
479aeb794b Add search by source port via exact match 2021-07-16 12:21:55 +02:00
emanuele-f
5637191b13 Add TCP flags for debugging 2021-07-16 12:15:28 +02:00
RyoidenshiAokigahara
488af1e6ad
Update Russian localization (#97) 2021-07-16 10:57:28 +02:00
sr093906
5f3949ead7
Update Chinese Strings (#91)
Thanks!
2021-07-11 16:40:33 +02:00
emanuele-f
0fe951396d Improve copyright notice 2021-07-11 15:37:21 +02:00
emanuele-f
892599ce22 Update TCP timeouts 2021-07-11 11:28:04 +02:00
emanuele-f
dfeb9e5006 Use monotonic timer for root purging logic 2021-07-06 18:43:35 +02:00
emanuele-f
fa4fdb1e1b Delay closed connections free with root
This prevents creating a new connection on packets retransmissions
2021-07-06 18:27:26 +02:00
emanuele-f
4d5ad71429 Fix wrong constraints used 2021-07-06 17:40:12 +02:00
emanuele-f
8d7f3d7777 Implement connection status detection in root mode 2021-07-06 17:30:15 +02:00
emanuele-f
bc28244e21 Rework time handling
Periodic tasks are now based on a monotonic timer. The timestamp in
the exported PCAP now corresponds to the original timestamp when using
root. Moreover, in-app first/last seen time now displays the milliseconds.

Closes #89
2021-07-06 15:54:26 +02:00
emanuele-f
acf5377507 Fix wrong count and missing connections with root 2021-07-06 11:40:23 +02:00
emanuele-f
ad64716013 Rename some fields 2021-07-04 15:44:48 +02:00
emanuele-f
4846a0b546 Add preference to toggle the PCAPdroid trailer
Closes #36
2021-07-04 15:08:08 +02:00
emanuele-f
11a68a5f6a Fix root capture stall when interface disappears
Sometimes libpcap does not detect that the capture interface has been
removed, causing the capture to stall. Use RTM_DELLINK to detect this
and recover.
2021-07-04 14:19:25 +02:00
emanuele-f
69066e3ef9 Fix wrong address used for RTM_GETROUTE 2021-07-04 14:05:01 +02:00
emanuele-f
1518f49026 Add PCAPdroid trailer support to udp_receiver.py 2021-07-03 20:13:25 +02:00
emanuele-f
349d5c7493 Replace the CRC-32 implementation
The new implementation uses the faster Slicing-by-4 algorithm
2021-07-03 15:54:10 +02:00
emanuele-f
0a935be6e4 Initial export of app info in PCAP
Initial work for #36
2021-07-02 00:45:19 +02:00
emanuele-f
da141fa8df Cleanup pcap_utils 2021-07-01 18:58:37 +02:00
emanuele-f
51dc0dde7e Fix bogus connections with root due to fragments
Connections with random ports sometimes appeared while capturing packets
as root, in particular while exporting data via the UDP exporter. These
were actually IP fragments, whose data was misinterpreted due to the
lack of L4 headers.
2021-07-01 18:27:28 +02:00
emanuele-f
4291d606c5 Fix truncated full size packets in root mode
The snaplen did not take the datalink size into account, causing full
size ethernet frames (1500 B) to be truncated to 1486 B. Arbritrary MTU
is now also supported.
2021-07-01 14:44:29 +02:00
emanuele-f
9d427461cb Fix UDP exporter and HTTP dump modes with root
When exporting traffic over the network, we must exclude this traffic
from the monitoring, otherwise the traffic will be captured in a loop
2021-07-01 14:30:37 +02:00
emanuele-f
91cc995eff Refactor PCAP dump
PCAP dump now always occurs in Java
2021-07-01 11:01:15 +02:00
emanuele-f
258930d110 Fix multiple issues with ICMP connections
- Fix ping to known DNS servers being blocked
- Hide port number for ICMP connections
- Fix monodirectional ICMP connnections in root mode
2021-06-30 17:31:41 +02:00
emanuele-f
6e02a3e9a9 Fix crash when no interface is available 2021-06-30 16:16:28 +02:00
emanuele-f
7d52548d1d Fix SELINUX error while getting interface MAC 2021-06-30 15:00:50 +02:00
emanuele-f
3cce0f547c Fix daemon sometimes hanging on interface down 2021-06-30 12:40:47 +02:00
emanuele-f
334e84fa3d Add IPv6 support for root capture 2021-06-30 12:13:00 +02:00
emanuele-f
ca7c8127d9 Hide connections matching whitelist after delay
Some info of the connections, such as the host and the protocol, can
become available after the connection has been shown. Such info could
determine a match with the whitelist, in which case the connection must
be hidden.
2021-06-29 19:39:11 +02:00
emanuele-f
3e9680b96c Fix missing update_type 2021-06-29 16:33:53 +02:00
emanuele-f
76daeaa849 Fix idle check in root mode 2021-06-29 16:29:10 +02:00
emanuele-f
5b50e3e8a1 Optimize JNI calls on connections updates
Connections data is now split into three groups:

- The connection identifier (e.g. 5 tuple)
- The connection statistics
- The connection L7 information (e.g. HTTP URL and request data)

With this optimization, most updates will only pass the connection
statistics throught the JNI interface. The connection identifier will
only be passed for new connections and the L7 information will only be
passed when needed (e.g. after extracting the URL).

Closes #82
2021-06-29 15:31:30 +02:00
emanuele-f
f1a69ccfa7 Fix missing save button with open search bar 2021-06-29 01:01:17 +02:00
emanuele-f
69f21be864 Allow searching by destination port 2021-06-28 23:55:04 +02:00
emanuele-f
a1f96c08ed Implement separate connections activity
This allows filtering by app by keeping activities navigation
consistent
2021-06-28 23:50:55 +02:00
emanuele-f
762b09620e Add copy/share to the App Details activity 2021-06-28 23:12:34 +02:00
emanuele-f
b308666687 Add packet drops for root capture 2021-06-27 19:43:18 +02:00
emanuele-f
bfb1390499 Implement app details
Show information about an app, including its target SDK version,
install/update date and its requested permissions. Also add a button to
quickly open the app info/settings in android.

Closes #45
2021-06-25 14:50:38 +02:00
emanuele-f
6b3fb1c2d0 Fix root domain rule label 2021-06-25 09:22:56 +02:00
mezysinc
c7499b4b2f
Update ptbr localization (#85) 2021-06-23 11:47:28 +02:00
sr093906
02c429567e
Update Chinese Strings (#86) 2021-06-23 11:46:54 +02:00
RyoidenshiAokigahara
003ce0eb93
Renamed app filter to target app (#84) 2021-06-22 16:31:58 +02:00
emanuele-f
3130cabcae Fix su invocation in some devices
Not all the "su" implementations support the -c option
2021-06-21 21:08:13 +02:00
mezysinc
4986614eb1
Update ptbr localization (#81) 2021-06-18 11:07:56 +02:00
emanuele-f
3b06db1733 Bump version to 1.3.9 2021-06-16 19:50:15 +02:00
Akihiro Nagai
a45d1cdbbf
Update Japanese strings.xml (#80) 2021-06-16 16:28:30 +02:00
RyoidenshiAokigahara
ed7a8d6005
added new strings to russian strings.xml (#79) 2021-06-16 14:07:49 +02:00
sr093906
86fbc3e9f8
Update Chinese Strings (#78) 2021-06-15 09:12:27 +00:00
emanuele-f
01b4fa1a60 Add null check 2021-06-14 18:34:38 +02:00