Skip to content
KitploitKITPLOIT
StrumentiExploitsBlog
Log in
Invia
StrumentiExploitsBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

FeedContattoPrivacy© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
file-notification-attacks — Artefatti di ricerca per attacchi side-channel basati sulle notifiche dei file su Linux, Windows e macOS, che dimostrano la fuga di informazioni tramite inotify/FSEvents, il timing dei tasti e il fingerprinting dei siti web. | Kitploit
Strumenti/GitHubGitHub/isec-tugraz/file-notification-attacks
Sicurezza AndroidAnalisi delle VulnerabilitàExploitSfruttamento di Applicazioni WebRaccolta InformazioniSicurezza MobilePrivacyPaper e RicercaApprendimento e Formazione

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi
GitHubisec-tugraz/file-notification-attacks

file-notification-attacks

Artefatti di ricerca per attacchi side-channel basati sulle notifiche dei file su Linux, Windows e macOS, che dimostrano la fuga di informazioni tramite inotify/FSEvents, il timing dei tasti e il fingerprinting dei siti web.

Vedi Repository
1310228 giorni faNon ancora revisionato

File Notification Attacks - Artifacts

Questo repository contiene gli artefatti (ancora in revisione!) per il paper "File Notification Attacks: Templating and Exploiting Side-Channel Leakage from the File-Notification Systems on Linux, Windows, and macOS", accettato a CCS '26.

Visita il sito web con le demo su: https://inoti.fyi/

Leggi il paper su: https://snee.la/pdf/pubs/file-notification-attacks.pdf o http://inoti.fyi/pubs/file-notification-attacks.pdf

Indice

  • Prefazione
  • Linux
    • Requisiti: Versione del Kernel
    • Configurazione
    • Attacchi
      • 1. Bypass di File Non Leggibili
      • 2. Risoluzione Temporale
      • 3. Timing tra Tasti
      • 4. Auth UI Redress
      • 5. Website Fingerprinting tramite Font
  • Android
  • Windows
    • Requisiti Hardware / Software
    • Direct Website Leakage su Firefox
  • macOS
    • Requisiti Hardware / Software
    • Monitoraggio di /Applications

Prefazione

Come parte della valutazione degli artefatti a CCS'26 (ancora in corso!), abbiamo fornito una VM Debian 13 + KDE Plasma 6 con un kernel pre-patchato. Questa VM non è stata utilizzata per produrre i risultati di valutazione del paper e non è pensata per riprodurne l'esatta magnitudine. Questo repository potrebbe essere aggiornato per incorporare le revisioni e i feedback dei nostri valutatori di artefatti. Renderemo la VM pubblicamente accessibile quando la nostra valutazione degli artefatti sarà completata.

Abbiamo impiegato Claude (Opus 4.8) per incapsulare il nostro codice in artefatti decentemente documentati e ad alte prestazioni (ad esempio, quello per Windows era un po' lento). Tuttavia, il codice, gli script e i makefile generati erano basati su

Le istruzioni per testare il codice Linux di seguito sono specifiche per l'esecuzione di comandi nella VM. Si prega invece di guardare il codice in Linux/.

La VM esiste puramente per comodità, in modo che il montaggio di ogni attacco non richieda una configurazione dell'ambiente da zero o un downgrade del kernel. Il meccanismo sottostante dimostrato nella VM è identico a quello descritto nel paper, ma si noti che non abbiamo utilizzato la VM per produrre i numeri riportati nel paper. I tempi assoluti possono differire a causa dell'ambiente virtualizzato e dell'hardware sottostante.

Linux

I risultati sono riprodotti all'interno di una VM Debian 13 (linux-vm/), installata dall'ISO live ufficiale di Debian con KDE Plasma 6 (Wayland) installato con un kernel precedente alla correzione di fsnotify. Sono installati inotify-tools, gli header di sviluppo Qt6 e pkexec. Nient'altro viene aggiornato e il kernel non viene mai toccato dopo l'installazione. Si prega di NON eseguire apt upgrade o tentare di aggiornare il kernel. Questa immagine della VM è deliberatamente vecchia, non è aggiornata e non dispone delle ultime patch di sicurezza. Questa immagine della VM è pensata solo per una rapida validazione e test!

Il codice, gli attacchi e le dimostrazioni presenti all'interno della VM sono rispecchiati in Linux/.

Nota: Indichiamo come quale utente eseguire i comandi all'inizio di ogni blocco di comandi. C'è [host], che è la macchina host che esegue la VM, [user] che è la vittima degli attacchi nella VM, e [spyuser] che richiede di essere configurato e sarà l'attaccante nella maggior parte degli attacchi Linux.

L'immagine del disco è fornita come linux-vm-upload.qcow2, compressa con zstd. Rinominarla in linux-vm.qcow2 prima di eseguire run.sh (che si aspetta quel nome di file):

# Run As: [host]
cd linux-vm/
mv linux-vm-upload.qcow2 linux-vm.qcow2
./run.sh

La lettura di un qcow2 compresso con zstd richiede qemu-img/qemu-system-x86_64 versione 5.2 o successiva (2020+), verificare con qemu-img --version. Se si utilizza una versione precedente di QEMU e questa non riesce ad aprire l'immagine, decomprimerla prima in un qcow2 flat:

qemu-img convert -O qcow2 linux-vm-upload.qcow2 linux-vm.qcow2

4 core, 4GB di RAM, display GUI. Le credenziali di accesso sono:

  • username root, password password,
  • username user, password password,
  • username spyuser, password password (non effettuare il login come spyuser!)

Configurazione

La VM fornita esegue già un kernel vulnerabile e pre-patchato (6.12.43+deb13-amd64), quindi non è necessario alcun downgrade per utilizzarla. Sarà necessario QEMU per eseguire questa immagine (che ha una GUI). L'artefatto si trova in /home/user/Linux-File-Notification-Attacks all'interno della VM.

Un singolo comando configura tutto da zero nella VM: (i) un account spyuser non privilegiato (non-sudo), (ii) la propria copia della directory degli artefatti (un account non privilegiato separato non può altrimenti accedere alla home directory di user), (iii) e ogni script reso eseguibile in entrambe le copie.

# In the VM, Run As: [user]
sudo bash ~/Linux-File-Notification-Attacks/setup_attacks.sh

Ogni attacco di seguito viene eseguito come spyuser (su - spyuser, password password), tranne auth-ui-redress, che viene eseguito come user (spiegato di seguito).

Attacchi

1. Bypass di File Non Leggibili

Dimostra che le notifiche delle operazioni sui file vengono consegnate per file che non possono essere letti direttamente, purché la loro directory genitore sia leggibile.

# Run As: [spyuser]
# To switch to spyuser, in a new terminal type `su - spyuser`. The password
# is `password`.
cd ~/Linux-File-Notification-Attacks/unreadable-file-bypass
./watch-syslog.sh

Lasciarlo in esecuzione, poi generare una riga di log da un altro terminale come user:

# Run As: [user]
logger "hello"

Questa immagine Debian 13 non ha rsyslog, quindi non esiste un file /var/log/syslog come mostrato nel paper. Lo script ripiega sul monitoraggio di /var/log/journal/<machine-id>/. È la stessa idea, poiché i file .journal monitorati sono di proprietà di root (utente) e systemd-journal (gruppo), nessuno dei quali è spyuser.

2. Risoluzione Temporale

Misura il ritardo di notifica di inotify.

# Run As: [user], ensure numpy is installed (or pip3)
sudo apt install python3-numpy
# Run As: [spyuser]
cd ~/Linux-File-Notification-Attacks/temporal-resolution
./run.sh

watcher apre un watch inotify su un file di test e registra il timestamp di ogni IN_ACCESS che riceve. accessor legge lo stesso file 1000 volte con un ritardo casuale di 5-10ms tra le letture, registrando il timestamp di ogni lettura stessa. stats.py confronta le due registrazioni di timestamp e stampa il ritardo medio/deviazione standard/minimo tra il verificarsi della lettura e l'arrivo della notifica, ovvero la risoluzione temporale di inotify.

3. Timing tra Tasti

Non è l'attacco completo del paper, ma solo la primitiva di proof-of-concept del filtraggio su cui si basa l'attacco: per ogni tasto premuto ovunque sul sistema, stampa una notifica con timestamp, senza mai leggere direttamente /dev/input.

Scarica lo strumento