1. Injektioner
Dela upp användarifylld indata i flera delar. Det går att göra genom att använda speciella tecken i indata. En annan viktig del är att helt enkelt begränsa åtkomst till databaser genom att dela upp användare i olika roller med olika behörigheter.

2. Autentiserings- och sessionssäkerhet
Använd framför allt standardiserade säkerhetslösningar i Java EE. Det är en risk i sig att försöka snickra ihop en egen säkerhetslösning. Om du ändå måste det, se till att testa den ordentligt. Användarsessionerna, och alla relevanta bitar av dem, bör även ogiltigförklaras när användaren loggar ut.

3. Cross-site scripting (XSS)
Ställ in servern på att ignorera data baserat på sammanhang i html-koden (till exempel ren text eller Javascriptkod).

4. Osäkra objektreferenser
Se till att använda objektreferenser för vilka det inte går att enkelt gissa sig till andra objekt endast genom att byta ut en siffra eller två i webbadressen. Ge objekten olika adresser vid varje tillfälle. Se även till att göra extra autentiseringskontroll vid varje objektvisning.

5. Dåliga säkerhetsrutiner
Se över dina policy-filer i Java EE. Ta bort alla behörigheter som inte används, lägg till extrabehörigheter endast till applikationer eller moduler som kräver det. Dokumentera dina förändringar. Se även till att installera säkerhetsuppdateringar i allt som används, inklusive operativsystem, ramverk och annan relaterad mjukvara som används. Sist, men inte minst, ändra alla standardlösenord och inloggningar.

6. Slapp hantering av känsliga data
Känsliga data ska behandlas säkert oavsett om det handlar om lösenord, kreditkort eller sjukjournaler. Det innebär kryptering både i lagringen av data och när de ska skickas. Kom ihåg att även säkerhetskopior och cookies som används på sidan ska krypteras. I Java EE går det att markera data som ska transporteras säkert.

7. Ovaliderade omdirigeringar och vidarebefordringar
Var försiktig med omdirigeringar (redirect) och vidarebefordringar (forward) och använd dem bara när du måste. Om man använder någon av dem bör man verifiera adressen. Det är säkert att använda omdirigeringar om man använder containerbaserad autentisering på rätt sätt, men vidarebefordringar sker utan någon autentisering. Då krävs att man kontrollerar behörigheterna igen och dessutom verifierar behörigheterna.