Leggi attentamente la nostra politica che spiega quali tipi di problemi di sicurezza saranno ricompensati. Solo le segnalazioni inviate tramite il nostro modulo di contatto (accessibile tramite il pulsante in fondo a questa pagina) saranno prese in considerazione per una ricompensa.
Il programma bug bounty di Doist è una parte essenziale delle nostre azioni mirate a garantire la sicurezza. Se hai identificato un problema di sicurezza del quale pensi che dovremmo essere al corrente, saremo felici di collaborare con te. In cambio potresti ricevere una ricompensa in denaro.
Criteri di ammissione
Per poter partecipare al programma di ricompensa devi essere la prima persona ad aver segnalato il problema.
Devi inoltre acconsentire a fornirci ulteriori informazioni (in base alle richieste del team) per riprodurre e risolvere il problema.
Forniscici un rapporto dettagliato che includa passaggi chiaramente riproducibili, l'impatto sui nostri prodotti e/o sui nostri utenti e qualsiasi account test tu abbia usato e i dati del test.
Assicurati di segnalare le singole vulnerabilità separatamente, in ticket diversi.
Assicurati di dare al rapporto un titolo chiaro, che descriva la vulnerabilità.
La segnalazione deve includere istruzioni in forma scritta su come replicare la vulnerabilità. Qualsiasi rapporto sprovvisto di una procedura chiara per replicare la vulnerabilità o che include solamente un video PoC (Proof of Concept) potrebbe non essere idoneo per la ricompensa.
Ricompense
Puoi ricevere una ricompensa in denaro se:
Sei la prima persona a informarci su una vulnerabilità del prodotto
La vulnerabilità è considerata un problema di sicurezza valido dal nostro team
Hai rispettato tutte le regole del programma
La somma verrà determinata dal nostro team, che valuterà ogni rapporto e gli assegnerà un livello di gravità. I livelli di gravità vengono determinati internamente in base al livello di vulnerabilità e al potenziale impatto. In basso trovi una serie di esempi per ogni livello di gravità:
Problemi non collegati alla sicurezza, come codici di stato HTTP non 200, errori dell'app o del server, ecc.
Problemi che non hanno chiare conseguenze in termini di sicurezza, come CSRF disconnesso, intestazioni di sicurezza HTTP mancanti, problemi di SSL, problemi con la politica sulle password o clickjacking in pagine senza azioni sensibili.
Problemi relativi ad applicazioni o componenti obsolete, non più in uso o non più mantenute
Problemi relativi a terzi, come app o servizi di terze parti che usiamo (es. Firebase o ZenDesk)
Problemi relativi alle tecniche di spam o di ingegneria sociale, come SPF e DKIM, e alla mancanza di DNSSEC.
Problemi relativi alla divulgazione di informazioni sul server, nello specifico intestazioni della risposta `X-Powered-by` e `Server`. Possono esistere eccezioni nel caso in cui le informazioni divulgate contengano una versione del server con una divulgazione CVE associata.
Problemi relativi alla falsificazione delle richieste lato server (SSRF) su servizi che eseguono richieste attive per progettazione, a meno che non sia dimostrato che le informazioni sensibili possono essere trapelate.
Bug che richiedono interazioni da parte dell'utente estremamente improbabili (es. controllo dell'account tramite login SSO)
Rapporti che richiedono un accesso privilegiato ai dispositivi del target o che sono fuori dal nostro controllo. Esempi includono (ma non sono limitati a) l'accesso ai cookie del browser e/o altri token usati per impersonare l'utente, l'accesso all'indirizzo email dell'utente, ecc.
Problemi di clickjacking su pagine pre-autenticate, o assenza di `X-Frame-Options`, o qualsiasi altro problema di clickjacking non utilizzabile.
Problemi di Cross-OriginResourceSharing (CORS), in cui il server NON risponde con l'intestazione `Access-Control-Allow-Credentials: true`.
Limiti di frequenza mancanti, a meno che non possano portare a una vulnerabilità sfruttabile.
Enumerazione dell'indirizzo email dell'utente nelle pagine di registrazione, accesso o recupero password.
File disponibili in URI con un percorso che inizia con `/.well-known` (noti anche come URI well-known).
Bypassare l'autenticazione a due fattori attraverso la reimpostazione della password
Problemi specifici di app client
Dati utenti salvati senza crittografia
Mancanza di offuscamento
Attacchi hacker che implicano la manipolazione del codice in esecuzione o del suo ambiente
Livello di gravità: basso
Ridirezioni aperte
Errata configurazione del server o errori di provisioning
Fughe o divulgazioni di informazioni che non includono i dati sensibili dell'utente
Problemi di Cross-OriginResourceSharing (CORS), in cui il server risponde con l'intestazione `Access-Control-Allow-Credentials: true` a una richiesta con intestazione `Origin` di terze parti (cioè non `*.todoist.com`, `*.twist.com`).
XSS riflesso
Problemi di contenuto generici, se l'URL di destinazione non risponde con un header 'Strict-Transport-Security' (conosciuto come HSTS). Il rischio esiste ancora, ma è limitato a una sola interazione per dominio/sottodominio (a seconda del valore HSTS). Nel 2021 i browser sono passati di default all'HTTPS, mitigando ulteriormente il problema.
Altri problemi di gravità bassa
Livello di gravità: medio
CSRF / XSRF
SSRF a un servizio interno
XSS memorizzato
Altri problemi di gravità media
Livello di gravità: alto
Fughe o divulgazioni di informazioni che includono i dati sensibili dell'utente
Altri problemi di gravità alta
Livello di gravità: critico
SQL injection
Esecuzione di codice remoto
Privilege escalation
Autenticazione violata
SSRF a un servizio interno, con un rischio critico per la sicurezza
Altri problemi critici
App
Nessuno
Basso
Medio
Alto
Critico
Todoist
0 $
100 $
200 $
500 $
1000 $
Twist
0 $
50 $
100 $
250 $
500 $
Se riporti vulnerabilità relative alle nostre app Android, potresti ricevere ulteriori ricompense tramite il Google Play Security Rewards Program.
Le ricompense vengono pagate tramite PayPal.
Il team di Doist conserva il diritto di determinare se la vulnerabilità segnalata è ammissibile.
Tutte le decisioni relative all'importo delle ricompense prese dal team del programma bug bounty di Doist sono definitive.