vaha_
SR Srpski
← Indeks No. 18 / 21

Dosje · Otvoreni kod · bezbjednost mejla

mailxray

Pregled priloga bez otvaranja

Servis koji gleda u priloge nepoverljivog mejla i ne otvara ih: Rust radni prostor od dve crate, biblioteka za analizu i daemon sa HTTP rutama. Strukturno čita PDF, Office dokumente i arhive, traži aktivni sadržaj i makroe, i vraća verdikt sa kodom razloga. Arhive raspakuje 7-Zip unutar bubblewrap sandboxa, a izveštaji su adresirani po blake3 hešu sadržaja, pa se jedan fajl pregleda jednom za sve primaoce.

Oblast
Otvoreni kod · bezbjednost mejla
Godine
2026
Status
u izradi
Sistem
Server · Web
mailxray — Pregled priloga bez otvaranja
Snimak ekrana · No. 18 mailxray — verdikt, razlog i sadržaj arhive, bez otvaranja fajla.

Šta radi

01 / 09
  1. Tip po magic bajtovima, nikad po ekstenziji; neslaganje se prijavljuje
  2. PDF: akcije i JavaScript u ugniježđenim rečnicima, imena sa escape sekvencama, dubinski prolaz kroz kompresovane tokove
  3. OOXML i OLE: makroi, spoljne veze i skriveni listovi, pre generičkog ZIP handlera
  4. Arhive: stablo sadržaja, odnos kompresije i zaštita od bombi
  5. 7-Zip u bwrap sandboxu: bez mreže, bez /home, read-only sistemski bindovi, tajmaut i cap na izlaz
  6. Izveštaji po blake3 hešu sadržaja, jedan pregled za sve primaoce
  7. Jasan JSON ugovor (schema 1) sa kodovima razloga i podrazumevanom politikom
  8. Nikad „clean" za fajl koji nije pregledan do kraja: capovi daju partial ili suspicious
  9. Referentna kartica u browseru i demo, bez pozivanja servisa sa strane

Slojevi

02 / 03

Jezgro — analiza

Rustlopdfzipquick-xml
  • Detekcija tipa i provera da li se magic poklapa sa imenom
  • PDF: rekurzivni hod kroz akcione rečnike, dubina do osam
  • OOXML: paket, makroi i veze; OLE: striming i makro tokovi
  • Arhive: 7-Zip listing sa stablon i odnosom kompresije
  • Policy sloj prevodi nalaze u verdikt i kodove razloga

Daemon

axumbwrap7-Zipblake3
  • Rute /inspect, /entry, /report i /health, loopback servis bez auth
  • Sandbox: --unshare-all, read-only bindovi, jedan writable radni direktorijum
  • Izvlačenje pojedinačnog člana samo za inertne tipove, sa capom od 8 MB
  • Keš izveštaja na disku, ključ je heš sadržaja

Ugovor

JSON schema 1SPEC.md
  • Specifikacija pre koda: polja izveštaja, kodovi razloga, politika
  • Webmail ne zove servis direktno, backend prosleđuje /inspect i /entry
  • Milter još nije isporučen: integracija je poziv na /inspect ili ugradnja crate-a

Tehnologije

03 / 03
Jezici RustTypeScriptShell 03
Okviri i alati axumlopdfzip7-Zipbubblewrapblake3 06
Infrastruktura Loopback servisLinux sandbox 02

Svi sistemi u dosjeu

Natrag na indeks →