Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
25 commits
Select commit Hold shift + click to select a range
4cb0bcb
docs: add GeorgeLS as a contributor for translation (#1177)
allcontributors[bot] May 5, 2026
b1e6c66
docs: add SimplyClever96 as a contributor for financial (#1180)
allcontributors[bot] May 6, 2026
8dad721
fix various minor bugs
GyulyVGC May 6, 2026
9b9dcfc
feat: support CIDR ranges in imported IP blacklists
TheMasterOfDisasters May 6, 2026
495377d
replace IpCollection with ipnet::IpNet for use with bogons
GyulyVGC May 7, 2026
90649c6
simplify blacklist line parsing to take first whitespace-separated token
GyulyVGC May 7, 2026
6a0d5a7
perf: use prefix-trie for blacklist network lookups
GyulyVGC May 7, 2026
388c564
remove redundant test in manage_packets.rs
GyulyVGC May 7, 2026
d322775
Merge pull request #1181 from TheMasterOfDisasters/feature/ip-blackli…
GyulyVGC May 7, 2026
e4534b0
docs: add TheMasterOfDisasters as a contributor for code (#1182)
allcontributors[bot] May 7, 2026
51e0396
feat: improve IP blacklist import feedback
TheMasterOfDisasters May 8, 2026
2eafa11
review: limit blacklist feedback to counts
TheMasterOfDisasters May 8, 2026
a1dbc46
refactor: remove redundant tests and simplify blacklist loading checks
TheMasterOfDisasters May 8, 2026
1612c8e
cleanup implementation
GyulyVGC May 9, 2026
6b8313a
update CHANGELOG
GyulyVGC May 9, 2026
bd8b8bd
Merge pull request #1183 from TheMasterOfDisasters/feature/ip-blackli…
GyulyVGC May 9, 2026
ab4340a
docs: add ahassany as a contributor for ideas (#1186)
allcontributors[bot] May 11, 2026
4269a28
update domain to sniffnet.app
GyulyVGC May 27, 2026
3f7a00d
update sniffnet website repo name ref
GyulyVGC May 28, 2026
739ab44
update docs to include official sniffnet emails
GyulyVGC Jun 2, 2026
ee5379a
add note to services.txt stating the file is auto-generated
GyulyVGC Jun 2, 2026
9530600
don't rely on shields.io for README badges
GyulyVGC Jun 4, 2026
4c9ccbb
docs: add golanbenoni as a contributor for financial (#1204)
allcontributors[bot] Jun 8, 2026
e93efd8
add Golan Ben-Oni as sponsor in README
GyulyVGC Jun 8, 2026
236c1b3
feat: add Hungarian translations
pml68 May 28, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
45 changes: 45 additions & 0 deletions .all-contributorsrc
Original file line number Diff line number Diff line change
Expand Up @@ -939,6 +939,51 @@
"contributions": [
"translation"
]
},
{
"login": "GeorgeLS",
"name": "George Liontos",
"avatar_url": "https://avatars.githubusercontent.com/u/24968445?v=4",
"profile": "https://github.com/GeorgeLS",
"contributions": [
"translation"
]
},
{
"login": "SimplyClever96",
"name": "Kevin",
"avatar_url": "https://avatars.githubusercontent.com/u/265333205?v=4",
"profile": "https://technik-kiste.de/",
"contributions": [
"financial"
]
},
{
"login": "TheMasterOfDisasters",
"name": "TheMasterOfDisasters",
"avatar_url": "https://avatars.githubusercontent.com/u/43640311?v=4",
"profile": "https://github.com/TheMasterOfDisasters",
"contributions": [
"code"
]
},
{
"login": "ahassany",
"name": "Ahmed Elhassany",
"avatar_url": "https://avatars.githubusercontent.com/u/691424?v=4",
"profile": "http://hassany.ps",
"contributions": [
"ideas"
]
},
{
"login": "golanbenoni",
"name": "golanbenoni",
"avatar_url": "https://avatars.githubusercontent.com/u/108551998?v=4",
"profile": "https://github.com/golanbenoni",
"contributions": [
"financial"
]
}
],
"contributorsPerLine": 7,
Expand Down
2 changes: 1 addition & 1 deletion .design/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ for this reason implementing an optimal UI for the application is crucially impo

## 🚀 The Main Product

Sniffnet can be downloaded from [here](https://sniffnet.net/download/).
Sniffnet can be downloaded from [here](https://sniffnet.app/download/).

### Target audience

Expand Down
2 changes: 1 addition & 1 deletion .well-known/funding-manifest-urls
Original file line number Diff line number Diff line change
@@ -1 +1 @@
https://sniffnet.net/funding.json
https://sniffnet.app/funding.json
2 changes: 2 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,8 @@
All Sniffnet releases with the relative changes are documented in this file.

## [UNRELEASED]
- Support CIDR ranges in imported IP blacklists ([#1181](https://github.com/GyulyVGC/sniffnet/pull/1181))
- Show number of IP addresses and CIDR ranges in imported IP blacklists ([#1183](https://github.com/GyulyVGC/sniffnet/pull/1183))
- Updated some of the existing translations to v1.5:
- Ukrainian ([#1039](https://github.com/GyulyVGC/sniffnet/pull/1039))
- German ([#1122](https://github.com/GyulyVGC/sniffnet/pull/1122))
Expand Down
2 changes: 1 addition & 1 deletion CODE_OF_CONDUCT.md
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ representative at an online or offline event.

Instances of abusive, harassing, or otherwise unacceptable behavior may be
reported to the community leaders responsible for enforcement at
gyulyvgc99@gmail.com.
`info@sniffnet.app`.
All complaints will be reviewed and investigated promptly and fairly.

All community leaders are obligated to respect the privacy and security of the
Expand Down
53 changes: 30 additions & 23 deletions CONTRIBUTORS.md

Large diffs are not rendered by default.

13 changes: 13 additions & 0 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 3 additions & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ authors = ["Giuliano Bellini <gyulyvgc99@gmail.com>"]
edition = "2024"
description = "Application to comfortably monitor your network traffic"
readme = "README.md"
homepage = "https://sniffnet.net"
homepage = "https://sniffnet.app"
repository = "https://github.com/GyulyVGC/sniffnet"
documentation = "https://github.com/GyulyVGC/sniffnet/wiki"
license = "MIT OR Apache-2.0"
Expand Down Expand Up @@ -46,6 +46,7 @@ ctrlc = { version = "3.5.2", features = ["termination"] }
dns-lookup = "3.0.1"
etherparse = "0.20.1"
iced = { version = "0.14.0", features = ["tokio", "svg", "advanced", "lazy", "image"] }
ipnet = "2.12.0"
listeners = "0.5.1"
maxminddb = "0.28.1"
pcap = "2.4.0"
Expand All @@ -54,6 +55,7 @@ phf_shared = "0.13.1"
picon = "0.1.0"
plotters = { version = "0.3.7", default-features = false, features = ["area_series", "line_series"] }
plotters-iced2 = "0.14.0"
prefix-trie = { version = "0.8.3", features = ["ipnet"] }
reqwest = { version = "0.13.3", features = ["json"] }
rfd = "0.17.2"
rodio = { version = "0.22.2", default-features = false, features = ["mp3", "playback"] }
Expand Down
4 changes: 3 additions & 1 deletion INCIDENT_RESPONSE.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,8 @@ This document describes how Sniffnet handles security incidents.
For how to report a vulnerability, see [`SECURITY.md`](https://github.com/GyulyVGC/sniffnet/blob/main/SECURITY.md).<br>
For the project's threat model, see [`THREAT_MODEL.md`](https://github.com/GyulyVGC/sniffnet/blob/main/THREAT_MODEL.md).

For all security-related communications, please write to `security@sniffnet.app`.

## Scope

An incident is anything that compromises, or could compromise, the integrity
Expand All @@ -13,7 +15,7 @@ or safety of Sniffnet or its users:
- a vulnerability in Sniffnet or one of its dependencies
- a tampered release artifact or compromised signing key
- unauthorized commits, tags, or releases
- a compromised maintainer account or the [sniffnet.net](https://sniffnet.net) website
- a compromised maintainer account or the [sniffnet.app](https://sniffnet.app) website

## Roles

Expand Down
14 changes: 9 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@

<a href="#download"><img alt="" title="Download" src="https://raw.githubusercontent.com/GyulyVGC/sniffnet/main/resources/repository/badges/download.svg"/></a>
<a href="https://github.com/GyulyVGC/sniffnet/blob/main/ROADMAP.md"><img alt="" title="Roadmap" src="https://raw.githubusercontent.com/GyulyVGC/sniffnet/main/resources/repository/badges/roadmap.svg"/></a>
<a href="https://sniffnet.net"><img alt="" title="Website" src="https://raw.githubusercontent.com/GyulyVGC/sniffnet/main/resources/repository/badges/website.svg"/></a>
<a href="https://sniffnet.app"><img alt="" title="Website" src="https://raw.githubusercontent.com/GyulyVGC/sniffnet/main/resources/repository/badges/website.svg"/></a>
<a href="https://github.com/GyulyVGC/sniffnet/wiki"><img alt="" title="Wiki" src="https://raw.githubusercontent.com/GyulyVGC/sniffnet/main/resources/repository/badges/wiki.svg"/></a>

Application to comfortably monitor your Internet traffic.<br>
Expand Down Expand Up @@ -41,6 +41,8 @@ Translated in:<br>

If you appreciate Sniffnet, [sponsor the project](https://github.com/sponsors/GyulyVGC) to support its [growth](https://github.com/GyulyVGC/sniffnet/blob/main/ROADMAP.md).

For sponsorship inquiries, feel free to reach out at `sponsor@sniffnet.app`.

A special shout-out to these awesome organizations and folks who are sponsoring Sniffnet:</i>

<table><tr><td>
Expand All @@ -57,12 +59,13 @@ A special shout-out to these awesome organizations and folks who are sponsoring
<a href="https://github.com/Cthulu201" title="Cthulu201"><img src="https://avatars.githubusercontent.com/Cthulu201?v=4" width="60px" alt="Cthulu201"/></a>&nbsp;&nbsp;
<a href="https://github.com/ZEROF" title="ZEROF"><img src="https://avatars.githubusercontent.com/ZEROF?v=4" width="60px" alt="ZEROF"/></a>&nbsp;&nbsp;
<a href="https://www.janwalter.org/" title="Jan Walter"><img src="https://avatars.githubusercontent.com/wahn?v=4" width="60px" alt="Jan Walter"/></a>
<a href="https://linktr.ee/golanbenoni" title="Golan Ben-Oni"><img src="https://ugc.production.linktr.ee/eed0c0ea-b302-4286-b940-1e4740d4f54d_84D5JxCc-400x400.jpeg?io=true&size=avatar-v3_0" width="60px" alt="Golan Ben-Oni"/></a>
</p>

## Download

<picture><img height="28px" alt="" title="Downloads count" src="https://raw.githubusercontent.com/GyulyVGC/GyulyVGC.github.io/master/assets/img/downloads_badge.svg"/></picture>
<a href="https://github.com/GyulyVGC/sniffnet/releases/latest"><img height="28px" alt="" title="Latest version" src="https://img.shields.io/github/v/release/gyulyvgc/sniffnet?color=blue&label=version&logo=github&style=for-the-badge"/></a>
<picture><img height="28px" alt="" title="Downloads count" src="https://raw.githubusercontent.com/sniffnet/sniffnet.github.io/main/assets/img/badges/downloads_badge.svg"/></picture>
<a href="https://github.com/GyulyVGC/sniffnet/releases/latest"><img height="28px" alt="" title="Latest version" src="https://raw.githubusercontent.com/sniffnet/sniffnet.github.io/main/assets/img/badges/version_badge.svg"/></a>

<table>
<tr>
Expand Down Expand Up @@ -174,12 +177,12 @@ ICED_BACKEND=tiny-skia
## Stay in the loop

Wait... there's more!<br>Sniffnet is rapidly evolving, and new features are added on a regular basis.<br>
Follow the <a href="https://sniffnet.net/news"><b>news</b></a> and Sniffnet socials to never miss an update.
Follow the <a href="https://sniffnet.app/news"><b>news</b></a> and Sniffnet socials to never miss an update.

<table align="center">
<tr>
<td>
<a href="https://bsky.app/profile/sniffnet.net"><img width="48" height="48" alt="Bluesky" title="Bluesky" src="https://raw.githubusercontent.com/GyulyVGC/sniffnet/main/resources/repository/badges/bluesky.svg"/></a>
<a href="https://bsky.app/profile/sniffnet.app"><img width="48" height="48" alt="Bluesky" title="Bluesky" src="https://raw.githubusercontent.com/GyulyVGC/sniffnet/main/resources/repository/badges/bluesky.svg"/></a>
</td>
<td>
<a href="https://www.linkedin.com/company/sniffnet"><img width="48" height="48" alt="LinkedIn" title="LinkedIn" src="https://raw.githubusercontent.com/GyulyVGC/sniffnet/main/resources/repository/badges/linkedin.svg"/></a>
Expand All @@ -196,3 +199,4 @@ Follow the <a href="https://sniffnet.net/news"><b>news</b></a> and Sniffnet soci
</tr>
</table>

You can also reach us by email at `info@sniffnet.app`.
6 changes: 4 additions & 2 deletions SECURITY.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,20 +3,22 @@
We consider the security of Sniffnet a top priority.<br>
The application is developed with a **security-first approach**:
it has always been designed to **protect users' data privacy and system integrity**,
as demonstrated by [security audits](https://sniffnet.net/news/security-audit/) assessing the application safety.
as demonstrated by [security audits](https://sniffnet.app/news/security-audit/) assessing the application safety.

But no matter how much effort we put into securing the app, there can still be **vulnerabilities** present.

For how incidents are handled, see [`INCIDENT_RESPONSE.md`](https://github.com/GyulyVGC/sniffnet/blob/main/INCIDENT_RESPONSE.md).<br>
For the project's threat model, see [`THREAT_MODEL.md`](https://github.com/GyulyVGC/sniffnet/blob/main/THREAT_MODEL.md).

For all security-related communications, please write to `security@sniffnet.app`.

***

If you discover a vulnerability, we would like to know about it so we can take steps to address it as quickly as possible.

Please do the following:

- E-mail your findings to gyulyvgc99@gmail.com
- E-mail your findings to `security@sniffnet.app`
- Do not take advantage of the vulnerability or problem you have discovered
- Do not reveal the problem to others until it has been resolved
- Do provide sufficient information to reproduce the problem, so we will be able to resolve it as quickly as possible
Expand Down
2 changes: 2 additions & 0 deletions THREAT_MODEL.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,8 @@ We'll use STRIDE, a widely adopted framework to help identify common types of th
For how to report a vulnerability, see [`SECURITY.md`](https://github.com/GyulyVGC/sniffnet/blob/main/SECURITY.md).<br>
For how incidents are handled, see [`INCIDENT_RESPONSE.md`](https://github.com/GyulyVGC/sniffnet/blob/main/INCIDENT_RESPONSE.md).

For all security-related communications, please write to `security@sniffnet.app`.

## 1. Project overview and scope of this document

- **Project name:** Sniffnet
Expand Down
4 changes: 4 additions & 0 deletions build.rs
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,10 @@ fn build_services_phf() {
for line_res in input.lines() {
// we want to panic if one of the lines is err...
let line = line_res.unwrap();
// skip comment or blank lines
if line.trim().is_empty() || line.trim().starts_with('#') {
continue;
}
let mut parts = line.split('\t');
// we want to panic if one of the service names is invalid
let val = Cow::Owned(get_valid_service_fmt_const(parts.next().unwrap()));
Expand Down
8 changes: 6 additions & 2 deletions giscus.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
{
"origins": ["https://sniffnet.net"],
"originsRegex": ["http://localhost:[0-9]+"],
"origins": [
"https://sniffnet.app"
],
"originsRegex": [
"http://localhost:[0-9]+"
],
"defaultCommentOrder": "oldest"
}
108 changes: 108 additions & 0 deletions resources/logos/raw/rect.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
4 changes: 3 additions & 1 deletion resources/scripts/services.sh
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,9 @@

OUT=./services.txt

echo -e "# This file is automatically generated from the port-to-service mappings provided by nmap\n# Available at: https://raw.githubusercontent.com/nmap/nmap/master/nmap-services\n# Don't edit this file manually\n" > $OUT

curl https://raw.githubusercontent.com/nmap/nmap/master/nmap-services \
| grep -E '/tcp|/udp' \
| grep -E -v '^#|^unknown\t' \
| cut -d$'\t' -f 1,2 > $OUT
| cut -d$'\t' -f 1,2 >> $OUT
6 changes: 6 additions & 0 deletions resources/test/ip_blacklist_real_cidr_ranges.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
209.186.20.0/22
209.186.24.0/21
209.186.224.0/21
209.186.232.0/22
209.186.236.0/24
209.233.156.0/22
Loading