Registrace

Security Checklist

zpět

Black Box Testování:

Pokud registrační formulář obsahuje AJAXové volání, které zjišťuje, zda je daný login volný / obsazený, je toto chráněno před neomezenou enumerací uživatelů?
Obsahuje registrační formulář captchu, nebo jiná omezení, aby nebylo možné enumerovat obsazené loginy po odeslání registračního formuláře?
Je registrace chráněna před automatizovaným vytvářením účtů (např. captchou)?
Je nutné registraci potvrdit další cestou (e-mail, SMS, pošta)?
Je vynucována dostatečná síla hesla při registraci?
  • minimální délka hesla 7 znaků
  • komplexnost hesla
  • velké nesmí být první, číslo nesmí být poslední
  • heslo se nesmí nacházet ve slovníku
  • login se nesmí vyskytovat v hesle
  • Je registrace chráněna před útoky typu CSRF?
    Nejsou pole registračního formuláře zranitelná na reflektovaný XSS?
    Není registrace zranitelná na XSS na dalších stránkách registračního procesu (například v rekapitulaci)?
    Jsou jednotlivé hodnoty ošetřené na SQL injekci?
    Nejsou jednotlivé předávané proměnné zranitelné na SQL truncation?
    Není možné vkládat do jména nebo do loginu bílé znaky, či wildcards?
    Není možné vkládat do jména nebo do loginu mezery na začátek nebo konec řetězce? Jsou tyto mezery před uložením odstraněny?
    Není možné při registraci použít rezervovaná jména jako "admin", "administrator", "podpora", webmaster", "spravce", apd.?
    Je povoleno vkládat libovolně dlouhá hesla?
    Je povoleno použít v hesle libovolné znaky?
    Pokud je registrace tvořena několika obrazovkami, není možné některé z nich přeskočit?
    Není možné se po přihlášení kdykoliv v budoucnu vrátit na stánku s rekapitulací, která by obsahovala důvěrné informace (například heslo)?
    Neodesílá se po registraci heslo e-mailem v plaintextu?
    Jsou zadávaná hesla skryta pod hvězdičkami?
    Je vyžadováno druhé zadání hesla pro ověření správnosti zadání?
    Jak se chová registrace ve chvíli, kdy je uživatel právě přihlášen?
    Je registrace ošetřena před registrací dvou účtů se stejným loginem ve stejný okamžik?
    Je možné zaregistrovat e-mailovou adresu, nebo telefonní číslo již použité u jiného účtu?
    Je registrační formulář načítán přes HTTPS?
    Je registrační formulář odesílán přes HTTPS?
    Není logování registrací zranitelné na SQL injekci v hlavičce Referer, User-Agent, X-Forwarded-For, nebo v loginu?
    Není logování registrací zranitelné na Blind XSS v hlavičce Referer, User-Agent, X-Forwarded-For, v loginu, apd.?
    Jsou všechny kontroly vstupů uplatňovány na straně serveru?
    Gray Box Testování:

    Jaká IP adresa vstupuje do logů (není možné ji spoofovat pomocí hlavičky X-Forwarded-For?
    Je v databázi nastaven pro login unikátní klíč?
    Je registrační proces uzavřen v transakci?
    Neukládají se hesla v plaintextu?
    Neukládají se hesla pomocí dešifrovatelného algoritmu?
    Neukládají se hesla zahashovaná rychlou hashovací funkcí (např. MD5)?
    Je při tvorbě hashe použito solení?