Transcript
Page 1: Drupal 7 security improvement modules

Drupal 7 security improvement modules

Anton Ivanov

Page 2: Drupal 7 security improvement modules

Roadmap● Spam protection● Site content access● Encryption● Permission and Registration● Login and Session● Useful modules

Page 3: Drupal 7 security improvement modules

Spam protection

Page 4: Drupal 7 security improvement modules

CAPTCHA● CAPTCHA ● Draggable Captcha

● KeyCAPTCHA● reCAPTCHA

Page 5: Drupal 7 security improvement modules

Mollom● Text analytics● CAPTCHA service

Page 6: Drupal 7 security improvement modules

Useful modules● Honeypot

– Hidden field

– Form fill time > 5s

● SpamSpan filter– mymail [at] example [dot] com

● Block anonymous links

Page 7: Drupal 7 security improvement modules

Site content access

Page 8: Drupal 7 security improvement modules

Node page view● Restrict node page view

– Nodes

● Rabbit Hole– Nodes, Users, Taxonomy terms

– 403, 404, Redirect, Display entity

Page 9: Drupal 7 security improvement modules

Ban users● IP Ranges

– Black list

– White list

● GoAway– Redirect banned users to some page

– Permissions: Ban, Un-ban, Settings change

Page 10: Drupal 7 security improvement modules

HTTPS● Secure Login

– Login or Any another form

● Secure Pages– node/*

– user/*

– admin/*

– Or any another path

Page 11: Drupal 7 security improvement modules

Global content access● Content Access

– Node/Type CRUD Role/Author based

● ACL– Node/Type CRUD any User based

Page 12: Drupal 7 security improvement modules

Substitution for protection● 403 to 404● User One

Page 13: Drupal 7 security improvement modules

Encryption

Page 14: Drupal 7 security improvement modules

Encryption● Field Encryption

– FIELD_ENCRYPT_CHANGEABLE = FALSE

● Encrypted Files– Upload destination: “Encrypted files”

● Webform Encrypt– Setup for every component

Page 15: Drupal 7 security improvement modules

Encryption● DataBase Email Encryption

– Email Registration compatible

– Logintoboggan compatible

● Encrypt– encrypt()

– decrypt()

Page 16: Drupal 7 security improvement modules

Permission and Registration

Page 17: Drupal 7 security improvement modules

Registration● Password policy

– Many-many restrictions

● Registration codes– Import & Export

– Send to Email

Page 18: Drupal 7 security improvement modules

Expiration● User Expire● Node expire

– Legacy mode

– Trigger “Content Expired” event

Page 19: Drupal 7 security improvement modules

Protection● Administer Users by Role

– Role based user administration

● Username Enumeration Prevention– Username brute force / definition

● Permission watchdog– Logging any role any permission change

Page 20: Drupal 7 security improvement modules

Login and Session

Page 21: Drupal 7 security improvement modules

Login● Flood control

– Login attempts per IP restriction

– How long login per IP disabled

● Login Security– Attempts limit for account blocking

– Ban Login by IP

– Brute force attack detected Email

Page 22: Drupal 7 security improvement modules

Login● Login Notify

– Disable ability login from some browser

– Email message with login details

● Login Activity– Successful login logging

– UID, User agent, IP, Date

● Restrict Login or Role Access by IP– User, Role, All users

Page 23: Drupal 7 security improvement modules

Sessions● Session Limit

– Restrict user sessions qty

– Many-many actions on restrict

● Automated Logout– Different restrictions for roles

– Users can setup own timeout

Page 24: Drupal 7 security improvement modules

Useful modules

Page 25: Drupal 7 security improvement modules

Review and Detect● Hacked!

– Detect hacked contrib modules & themes

● Security Review– Site security settings test

– “Run checklist” for test

Page 26: Drupal 7 security improvement modules

Protection● Security Kit

– Cross-site Scripting protection

– Cross-site Request Forgery protection

– Clickjacking protection

– HTTP Strict Transport Security (HSTS)

● Paranoia– Disable PHP execution via UI

Page 27: Drupal 7 security improvement modules

Logging and alerts● Email logging and alerts

– Send Email to admin on error

● Web server logging– watchdog() message to error.log

● Watchdog triggers● Watchdog rules

Page 28: Drupal 7 security improvement modules

Tips and Tricks● Username: administrator, admin, root● Disable (uid=1) if not used● No devel on Live● Disable registration if not needed

Page 29: Drupal 7 security improvement modules

Thank You! Questions?

Anton Ivanov


Recommended