Ovviamente HTTPS è obbligatorio. Ma ci sono molte più opzioni di sicurezza. Posso fornirti alcune nozioni di base:
Devi implementare HSTS (Http Strict Transport Security) per forzare i client a utilizzare la tua connessione HTTPS.
Non hai specificato quale sia la tua tecnologia di back-end (Java, PHP, ecc.). È necessario aggiornare il server alle versioni più recenti per evitare exploit noti. Ad esempio, in caso di PHP, le versioni precedenti hanno molti exploit possibili.
Devi configurare i tuoi firewall perimetrali per evitare attacchi DoS (Denial of Service) come faremo guarda più tardi, ma puoi evitare alcuni attacchi DoS molto semplici e conosciuti come ad esempio Slow Loris solo rafforzando la configurazione del tuo server.
Disabilita il più possibile banner e firme del server per cercare di rendere più difficile l'identificazione del software e della versione (O.S., tecnologia server Web, ecc.)
Il tuo back end è a prova di iniezione? Devi essere abbastanza sicuro di filtrare e disinfettare i caratteri "pericolosi" per evitare XSS , Iniezione SQL e altri possibili attacchi. Questo è uno dei punti più importanti.
Gli attacchi
CSRF devono essere evitati. Dovresti eseguire una corretta gestione della sessione con un qualche tipo di meccanismo (di solito hash di sessione, token o simili) per evitare questo.
WAF (Web Application Firewall) è una buona opzione per cercare di filtrare un sacco di attacchi contro il tuo sito. Ad ogni modo, questo deve essere un complemento di codifica sicura. Mai la sicurezza deve dipendere solo da questo elemento.
IDS / IPS (Intrusion Detection System / Intrusion Prevention System) sono obbligatori (secondo me) se gestiscono informazioni sensibili come i dati contabili bancari. Devi essere in grado di rilevare / prevenire gli attacchi.
Ci sono altri ... ma come inizio è sufficiente, penso. :)