SlideShare ist ein Scribd-Unternehmen logo
1 von 32
WordPress Security 101
Practical Techniques & Best Practices
Jonathan Hall, BCIS
Introduction
How Sites are Hacked
●
Exploiting code vulnerabilities in WordPress
Core, themes, or plugins
●
Gaining access to the WordPress admin via a
user account
●
Finding a way into the web server
Avoiding Code Vulnerabilities
Update, Update, Update
●
Keep WordPress, themes, and plugins up-to-
date
●
Consider enabling automatic updates
– Only enabled for minor core releases, translation
files, critical plugin/theme updates by default
– Can be expanded, e.g. using Advanced Automatic
Updates plugin
Update, Update, Update
WordPress 0.7.1
Source: http://planetozh.com/blog/2008/12/a-journey-through-five-years-of-wordpress-interface/
Minimize the Attack Surface
●
Less code = lower probability of vulnerabilities
●
Deactivate all unused plugins
●
Uninstall all plugins and themes that aren't
needed
Choose Themes & Plugins Carefully
●
Whenever possible, use products from reputable
theme and plugin authors
●
Paying for a theme/plugin does not guarantee
quality
●
Prefer older, more widely used themes/plugins
Choose Themes & Plugins Carefully
●
Check most recent release date, update
frequency
Use Security Scanners
●
Wordfence
●
Sucuri, iThemes Security, etc.
Don't Give Useful Info to Attackers
●
Disable error reporting
– PHP configuration: display_errors directive
– WordPress configuration: WP_DEBUG and
WP_DEBUG_DISPLAY constants
Don't Give Useful Info to Attackers
●
Disable WordPress version output
– e.g. “Meta Generator and Version Info Remover”
plugin
User Account Security
Avoid Brute Force Attacks
●
Don't use default or easily guessed usernames
– “admin”, “administrator”
– Domain name
Avoid Brute Force Attacks
●
Use strong passwords
– Uppercase and lowercase letters, numbers, symbols
– At least 8 characters, preferably more
– No dictionary words
●
Enforce strong passwords
– e.g. Force Strong Passwords plugin
Avoid Brute Force Attacks
●
Limit the number of failed login attempts
– Block the user for a specified time after X failed login
attempts
– e.g. Limit Login Attempts plugin
Limit Login Attempts lockout options
Two-Factor Authentication
●
Add “what you have” to “what you know”
●
Email, SMS, or mobile app based
●
e.g. Clef, Duo, Rublon Two-Factor Authentication
plugins
Two-Factor Authentication
Duo Two-Factor Authentication
Source: https://en-ca.wordpress.org/plugins/duo-wordpress/screenshots/
“Security By Obscurity”
●
Change the paths to your WordPress admin
directory and the wp-login.php script
– e.g. Protect Your Admin plugin
Principle of Least Privilege
●
Limit users' roles to what they actually need
●
Customize roles and capabilities if necessary
– e.g. Capability Manager Enhanced plugin
●
Disable editing of plugins and themes from the
admin
– define('DISALLOW_FILE_EDIT', true);
Prevent Password Sniffing
●
Don't log in to your WordPress admin on
unsecured WiFi networks
●
Consider installing an SSL certificate for admin
access
Web Server Security
FTP, Control Panel, SSH Access
●
Use strong passwords
●
Use public key authentication where possible
●
Use two-factor authentication where possible
Database Server
●
Use strong passwords for database users
●
Apply principle of least privilege
●
Block external access unless absolutely
necessary
Backups
Backups
●
Make backups of your database and website files
often
●
Store backups off-site
●
Check/test backups!
●
e.g. BackUpWordPress, Dropbox Backup &
Restore, UpdraftPlus Backup and Restoration
plugins
I've Been Hacked, Now What?
Recognize the Symptoms
●
Unfamiliar files in your website's directories
●
Unrecognized plugins
●
New posts or other content that you didn't write
●
Spammy links appearing in existing content
●
New users added
●
Successful admin logins from unrecognized
IPs/locations
What Malicious Code (May) Look Like
●
Prepended or appended to WordPress core,
plugin, or theme PHP files
●
New files with seemingly legitimate names
– login.php, config.php, etc.
●
PHP files in the uploads directory
●
Calls to eval(), often with base64_decode() or
gzinflate()
– eval(base64_decode(ZnVuY3Rpb24gbXlSZWF
sbHlCYWRGdW5jKCkgewplY2hvKCdIZWxsbyB3b
3JsZCEnKTsKZGllKCk7Cn0...
First Steps
●
“Quarantine” all website files
●
Backup the database
●
Restore website files and database from the
most recent clean backup
●
Immediately change all user passwords
●
Install all updates
Identify the Attack Vector
●
Determine when entry was first gained, and by
whom (IP address)
– WordPress login log
– Website logs
– Backups of database and files
●
Trace the attacker's actions
– Login via a compromised user account?
– Web requests with a specific URI?
Questions?

Weitere ähnliche Inhalte

Was ist angesagt?

Make WordPress Fly With Virtual Server Hosting - WordCamp Sydney 2014
Make WordPress Fly With Virtual Server Hosting  - WordCamp Sydney 2014Make WordPress Fly With Virtual Server Hosting  - WordCamp Sydney 2014
Make WordPress Fly With Virtual Server Hosting - WordCamp Sydney 2014Vlad Lasky
 
Beating Spam On Your WordPress Website - WordCamp Melbourne 2013
Beating Spam On Your WordPress Website - WordCamp Melbourne 2013Beating Spam On Your WordPress Website - WordCamp Melbourne 2013
Beating Spam On Your WordPress Website - WordCamp Melbourne 2013Vlad Lasky
 
WordPress MU 101
WordPress MU 101WordPress MU 101
WordPress MU 101Pete Mall
 
WordPress Security Essentials WordCamp Denver 2012
WordPress Security Essentials WordCamp Denver 2012WordPress Security Essentials WordCamp Denver 2012
WordPress Security Essentials WordCamp Denver 2012Angela Bowman
 
Securing Your WordPress Website - WordCamp GC 2011
Securing Your WordPress Website - WordCamp GC 2011Securing Your WordPress Website - WordCamp GC 2011
Securing Your WordPress Website - WordCamp GC 2011Vlad Lasky
 
WordCamp Philippines 2009: WordPress In The Wild
WordCamp Philippines 2009: WordPress In The WildWordCamp Philippines 2009: WordPress In The Wild
WordCamp Philippines 2009: WordPress In The Wildrebelpixel
 
Word Camp Ph 2009 Word Press In The Wild
Word Camp Ph 2009   Word Press In The WildWord Camp Ph 2009   Word Press In The Wild
Word Camp Ph 2009 Word Press In The Wildrebelpixel
 
Understanding WordPress Multisite
Understanding WordPress MultisiteUnderstanding WordPress Multisite
Understanding WordPress MultisiteRyan Imel
 
An example of cms - wordpress
An example of cms - wordpressAn example of cms - wordpress
An example of cms - wordpressEunus Hosen
 
How to Secure your WordPress Website - WordCamp UK 2014
How to Secure your WordPress Website - WordCamp UK 2014How to Secure your WordPress Website - WordCamp UK 2014
How to Secure your WordPress Website - WordCamp UK 2014Primary Image Ltd
 
Word press sites maintenanace
Word press sites maintenanaceWord press sites maintenanace
Word press sites maintenanaceMichelle Castillo
 
WordPress Resources Nov 2014
WordPress Resources Nov 2014WordPress Resources Nov 2014
WordPress Resources Nov 2014Judy Wilson
 
2014 WordCamp Austin: Do's and Don'ts of WordPress Multisite
2014 WordCamp Austin: Do's and Don'ts of WordPress Multisite2014 WordCamp Austin: Do's and Don'ts of WordPress Multisite
2014 WordCamp Austin: Do's and Don'ts of WordPress MultisiteWPMU DEV
 
How To Lock Down And Secure Your Wordpress
How To Lock Down And Secure Your WordpressHow To Lock Down And Secure Your Wordpress
How To Lock Down And Secure Your WordpressChelsea O'Brien
 
Piecing Together the WordPress Puzzle
Piecing Together the WordPress PuzzlePiecing Together the WordPress Puzzle
Piecing Together the WordPress PuzzleBusiness Vitality LLC
 
WordPress Intermediate Workshop
WordPress Intermediate WorkshopWordPress Intermediate Workshop
WordPress Intermediate WorkshopThe Toolbox, Inc.
 
Securing Your WordPress Website by Vlad Lasky
Securing Your WordPress Website by Vlad LaskySecuring Your WordPress Website by Vlad Lasky
Securing Your WordPress Website by Vlad Laskywordcampgc
 
Secure Wordpress - 2016[17May - Mashhad]
Secure Wordpress - 2016[17May - Mashhad]Secure Wordpress - 2016[17May - Mashhad]
Secure Wordpress - 2016[17May - Mashhad]HaMiD Fadaei
 

Was ist angesagt? (20)

Make WordPress Fly With Virtual Server Hosting - WordCamp Sydney 2014
Make WordPress Fly With Virtual Server Hosting  - WordCamp Sydney 2014Make WordPress Fly With Virtual Server Hosting  - WordCamp Sydney 2014
Make WordPress Fly With Virtual Server Hosting - WordCamp Sydney 2014
 
Beating Spam On Your WordPress Website - WordCamp Melbourne 2013
Beating Spam On Your WordPress Website - WordCamp Melbourne 2013Beating Spam On Your WordPress Website - WordCamp Melbourne 2013
Beating Spam On Your WordPress Website - WordCamp Melbourne 2013
 
WordPress MU 101
WordPress MU 101WordPress MU 101
WordPress MU 101
 
WordPress Security Essentials WordCamp Denver 2012
WordPress Security Essentials WordCamp Denver 2012WordPress Security Essentials WordCamp Denver 2012
WordPress Security Essentials WordCamp Denver 2012
 
Securing Your WordPress Website - WordCamp GC 2011
Securing Your WordPress Website - WordCamp GC 2011Securing Your WordPress Website - WordCamp GC 2011
Securing Your WordPress Website - WordCamp GC 2011
 
WordCamp Philippines 2009: WordPress In The Wild
WordCamp Philippines 2009: WordPress In The WildWordCamp Philippines 2009: WordPress In The Wild
WordCamp Philippines 2009: WordPress In The Wild
 
Word Camp Ph 2009 Word Press In The Wild
Word Camp Ph 2009   Word Press In The WildWord Camp Ph 2009   Word Press In The Wild
Word Camp Ph 2009 Word Press In The Wild
 
Understanding WordPress Multisite
Understanding WordPress MultisiteUnderstanding WordPress Multisite
Understanding WordPress Multisite
 
An example of cms - wordpress
An example of cms - wordpressAn example of cms - wordpress
An example of cms - wordpress
 
How to Secure your WordPress Website - WordCamp UK 2014
How to Secure your WordPress Website - WordCamp UK 2014How to Secure your WordPress Website - WordCamp UK 2014
How to Secure your WordPress Website - WordCamp UK 2014
 
WordPress Security 2018
WordPress Security 2018WordPress Security 2018
WordPress Security 2018
 
Word press sites maintenanace
Word press sites maintenanaceWord press sites maintenanace
Word press sites maintenanace
 
WordPress Resources Nov 2014
WordPress Resources Nov 2014WordPress Resources Nov 2014
WordPress Resources Nov 2014
 
2014 WordCamp Austin: Do's and Don'ts of WordPress Multisite
2014 WordCamp Austin: Do's and Don'ts of WordPress Multisite2014 WordCamp Austin: Do's and Don'ts of WordPress Multisite
2014 WordCamp Austin: Do's and Don'ts of WordPress Multisite
 
How To Lock Down And Secure Your Wordpress
How To Lock Down And Secure Your WordpressHow To Lock Down And Secure Your Wordpress
How To Lock Down And Secure Your Wordpress
 
Piecing Together the WordPress Puzzle
Piecing Together the WordPress PuzzlePiecing Together the WordPress Puzzle
Piecing Together the WordPress Puzzle
 
WordPress Intermediate Workshop
WordPress Intermediate WorkshopWordPress Intermediate Workshop
WordPress Intermediate Workshop
 
Wordpress
WordpressWordpress
Wordpress
 
Securing Your WordPress Website by Vlad Lasky
Securing Your WordPress Website by Vlad LaskySecuring Your WordPress Website by Vlad Lasky
Securing Your WordPress Website by Vlad Lasky
 
Secure Wordpress - 2016[17May - Mashhad]
Secure Wordpress - 2016[17May - Mashhad]Secure Wordpress - 2016[17May - Mashhad]
Secure Wordpress - 2016[17May - Mashhad]
 

Andere mochten auch

WordPress Server Security
WordPress Server SecurityWordPress Server Security
WordPress Server SecurityPeter Baylies
 
coca cola Reconciliation of Q2 2003 Non-GAAP Financial Measures
coca cola Reconciliation of Q2 2003 Non-GAAP Financial Measurescoca cola Reconciliation of Q2 2003 Non-GAAP Financial Measures
coca cola Reconciliation of Q2 2003 Non-GAAP Financial Measuresfinance9
 
Recommendation for Deniz Bayram
Recommendation for Deniz BayramRecommendation for Deniz Bayram
Recommendation for Deniz BayramDeniz Bayram
 
Svitla Systems: Q&A about recruitment process
Svitla Systems: Q&A about recruitment processSvitla Systems: Q&A about recruitment process
Svitla Systems: Q&A about recruitment processAndriy Galych
 
Secondees training in the UK
Secondees training in the UKSecondees training in the UK
Secondees training in the UKPriya Dutta
 
Caselli - Pensiero Desiderante e Alcolismo
Caselli - Pensiero Desiderante e AlcolismoCaselli - Pensiero Desiderante e Alcolismo
Caselli - Pensiero Desiderante e AlcolismoGabriele Caselli
 
"Yes...But..." cognitive response to partial success: an exploratory research
"Yes...But..." cognitive response to partial success: an exploratory research"Yes...But..." cognitive response to partial success: an exploratory research
"Yes...But..." cognitive response to partial success: an exploratory researchGabriele Caselli
 
1200 a sleight of hand budget
1200 a sleight of hand budget1200 a sleight of hand budget
1200 a sleight of hand budgetNext2ndOpinions
 
Cesare Bellantuono
Cesare BellantuonoCesare Bellantuono
Cesare Bellantuonoagrilinea
 
Final Paper. Aston Rankins docx
Final Paper. Aston Rankins docxFinal Paper. Aston Rankins docx
Final Paper. Aston Rankins docxAston Rankins
 
Potential Biases in Bug Localization: Do They Matter?
Potential Biases in Bug Localization: Do They Matter?Potential Biases in Bug Localization: Do They Matter?
Potential Biases in Bug Localization: Do They Matter?Pavneet Singh Kochhar
 
Gabriele Caselli - Metacognitive processes in desire thinking
Gabriele Caselli - Metacognitive processes in desire thinkingGabriele Caselli - Metacognitive processes in desire thinking
Gabriele Caselli - Metacognitive processes in desire thinkingGabriele Caselli
 
I videogiochi possono salvare il mondo?
I videogiochi possono salvare il mondo?I videogiochi possono salvare il mondo?
I videogiochi possono salvare il mondo?Marco Mazzaglia
 
Tax on the winding up of a company
Tax on the winding up of a companyTax on the winding up of a company
Tax on the winding up of a companyPriya Dutta
 

Andere mochten auch (20)

WordPress Server Security
WordPress Server SecurityWordPress Server Security
WordPress Server Security
 
Nethemba profil
Nethemba profilNethemba profil
Nethemba profil
 
Paralelni polisweb
Paralelni poliswebParalelni polisweb
Paralelni polisweb
 
coca cola Reconciliation of Q2 2003 Non-GAAP Financial Measures
coca cola Reconciliation of Q2 2003 Non-GAAP Financial Measurescoca cola Reconciliation of Q2 2003 Non-GAAP Financial Measures
coca cola Reconciliation of Q2 2003 Non-GAAP Financial Measures
 
Recommendation for Deniz Bayram
Recommendation for Deniz BayramRecommendation for Deniz Bayram
Recommendation for Deniz Bayram
 
abdel rahman cv2016
abdel rahman cv2016abdel rahman cv2016
abdel rahman cv2016
 
Svitla Systems: Q&A about recruitment process
Svitla Systems: Q&A about recruitment processSvitla Systems: Q&A about recruitment process
Svitla Systems: Q&A about recruitment process
 
Secondees training in the UK
Secondees training in the UKSecondees training in the UK
Secondees training in the UK
 
Caselli - Pensiero Desiderante e Alcolismo
Caselli - Pensiero Desiderante e AlcolismoCaselli - Pensiero Desiderante e Alcolismo
Caselli - Pensiero Desiderante e Alcolismo
 
"Yes...But..." cognitive response to partial success: an exploratory research
"Yes...But..." cognitive response to partial success: an exploratory research"Yes...But..." cognitive response to partial success: an exploratory research
"Yes...But..." cognitive response to partial success: an exploratory research
 
Paola Zizzi
Paola ZizziPaola Zizzi
Paola Zizzi
 
1200 a sleight of hand budget
1200 a sleight of hand budget1200 a sleight of hand budget
1200 a sleight of hand budget
 
IREF Law Presentation
IREF Law PresentationIREF Law Presentation
IREF Law Presentation
 
Cesare Bellantuono
Cesare BellantuonoCesare Bellantuono
Cesare Bellantuono
 
Final Paper. Aston Rankins docx
Final Paper. Aston Rankins docxFinal Paper. Aston Rankins docx
Final Paper. Aston Rankins docx
 
Potential Biases in Bug Localization: Do They Matter?
Potential Biases in Bug Localization: Do They Matter?Potential Biases in Bug Localization: Do They Matter?
Potential Biases in Bug Localization: Do They Matter?
 
Gabriele Caselli - Metacognitive processes in desire thinking
Gabriele Caselli - Metacognitive processes in desire thinkingGabriele Caselli - Metacognitive processes in desire thinking
Gabriele Caselli - Metacognitive processes in desire thinking
 
I videogiochi possono salvare il mondo?
I videogiochi possono salvare il mondo?I videogiochi possono salvare il mondo?
I videogiochi possono salvare il mondo?
 
Tax on the winding up of a company
Tax on the winding up of a companyTax on the winding up of a company
Tax on the winding up of a company
 
Haldirams Case Study
Haldirams Case StudyHaldirams Case Study
Haldirams Case Study
 

Ähnlich wie WordPress Security 101: Practical Techniques & Best Practices

Word press beirut 9th meetup march
Word press beirut 9th meetup   marchWord press beirut 9th meetup   march
Word press beirut 9th meetup marchFadi Nicolas Zahhar
 
Word Press Security
Word Press SecurityWord Press Security
Word Press SecurityRandall Rode
 
Word press security checklist
Word press security checklistWord press security checklist
Word press security checklistSanjay Dabhoya
 
WordPress Security - Kulpreet Singh
WordPress Security - Kulpreet SinghWordPress Security - Kulpreet Singh
WordPress Security - Kulpreet Singhguest4fe370
 
Introduction to WordPress Security
Introduction to WordPress SecurityIntroduction to WordPress Security
Introduction to WordPress SecurityNile Flores
 
WordPress Insider Meetup Group - Jan, 7, 2016 meeting
WordPress Insider Meetup Group - Jan, 7,  2016 meetingWordPress Insider Meetup Group - Jan, 7,  2016 meeting
WordPress Insider Meetup Group - Jan, 7, 2016 meetingMichelle Castillo
 
Securing your WordPress powered Website
Securing your WordPress powered WebsiteSecuring your WordPress powered Website
Securing your WordPress powered WebsitePratik Jagdishwala
 
WordPress Security Best Practices 2019 Update
WordPress Security Best Practices 2019 UpdateWordPress Security Best Practices 2019 Update
WordPress Security Best Practices 2019 UpdateZero Point Development
 
WordPress security 101 - WP Jyväskylä Meetup 21.3.2017
WordPress security 101 - WP Jyväskylä Meetup 21.3.2017WordPress security 101 - WP Jyväskylä Meetup 21.3.2017
WordPress security 101 - WP Jyväskylä Meetup 21.3.2017Otto Kekäläinen
 
WordPress End-User Security
WordPress End-User SecurityWordPress End-User Security
WordPress End-User SecurityDre Armeda
 
WordPress Security Hardening
WordPress Security HardeningWordPress Security Hardening
WordPress Security HardeningTimothy Wood
 
Wordpress security issues
Wordpress security issuesWordpress security issues
Wordpress security issuesDeepu Thomas
 
WordPress Security - WordPress Meetup Copenhagen 2013
WordPress Security - WordPress Meetup Copenhagen 2013WordPress Security - WordPress Meetup Copenhagen 2013
WordPress Security - WordPress Meetup Copenhagen 2013Thor Kristiansen
 
WordPress Hosting Best Practices - Do's and Don't s | WordPress Trivandrum
WordPress Hosting Best Practices - Do's and Don't s  | WordPress TrivandrumWordPress Hosting Best Practices - Do's and Don't s  | WordPress Trivandrum
WordPress Hosting Best Practices - Do's and Don't s | WordPress TrivandrumWordPress Trivandrum
 
WordPress.org & Optimizing Security for your WordPress sites
WordPress.org & Optimizing Security for your WordPress sitesWordPress.org & Optimizing Security for your WordPress sites
WordPress.org & Optimizing Security for your WordPress sitesGovLoop
 
Protect Your WordPress From The Inside Out
Protect Your WordPress From The Inside OutProtect Your WordPress From The Inside Out
Protect Your WordPress From The Inside OutSiteGround.com
 
Presentation to SAIT Students - Dec 2013
Presentation to SAIT Students - Dec 2013Presentation to SAIT Students - Dec 2013
Presentation to SAIT Students - Dec 2013Think Media Inc.
 
WordPress Hardening: Strategies to Secure & Protect Your Website
WordPress Hardening: Strategies to Secure & Protect Your WebsiteWordPress Hardening: Strategies to Secure & Protect Your Website
WordPress Hardening: Strategies to Secure & Protect Your WebsiteReliqusConsulting
 

Ähnlich wie WordPress Security 101: Practical Techniques & Best Practices (20)

Word press beirut 9th meetup march
Word press beirut 9th meetup   marchWord press beirut 9th meetup   march
Word press beirut 9th meetup march
 
Word Press Security
Word Press SecurityWord Press Security
Word Press Security
 
WordPress Security
WordPress Security WordPress Security
WordPress Security
 
Word press security checklist
Word press security checklistWord press security checklist
Word press security checklist
 
WordPress Security - Kulpreet Singh
WordPress Security - Kulpreet SinghWordPress Security - Kulpreet Singh
WordPress Security - Kulpreet Singh
 
Introduction to WordPress Security
Introduction to WordPress SecurityIntroduction to WordPress Security
Introduction to WordPress Security
 
WordPress Insider Meetup Group - Jan, 7, 2016 meeting
WordPress Insider Meetup Group - Jan, 7,  2016 meetingWordPress Insider Meetup Group - Jan, 7,  2016 meeting
WordPress Insider Meetup Group - Jan, 7, 2016 meeting
 
Securing Your WordPress Website
Securing Your WordPress WebsiteSecuring Your WordPress Website
Securing Your WordPress Website
 
Securing your WordPress powered Website
Securing your WordPress powered WebsiteSecuring your WordPress powered Website
Securing your WordPress powered Website
 
WordPress Security Best Practices 2019 Update
WordPress Security Best Practices 2019 UpdateWordPress Security Best Practices 2019 Update
WordPress Security Best Practices 2019 Update
 
WordPress security 101 - WP Jyväskylä Meetup 21.3.2017
WordPress security 101 - WP Jyväskylä Meetup 21.3.2017WordPress security 101 - WP Jyväskylä Meetup 21.3.2017
WordPress security 101 - WP Jyväskylä Meetup 21.3.2017
 
WordPress End-User Security
WordPress End-User SecurityWordPress End-User Security
WordPress End-User Security
 
WordPress Security Hardening
WordPress Security HardeningWordPress Security Hardening
WordPress Security Hardening
 
Wordpress security issues
Wordpress security issuesWordpress security issues
Wordpress security issues
 
WordPress Security - WordPress Meetup Copenhagen 2013
WordPress Security - WordPress Meetup Copenhagen 2013WordPress Security - WordPress Meetup Copenhagen 2013
WordPress Security - WordPress Meetup Copenhagen 2013
 
WordPress Hosting Best Practices - Do's and Don't s | WordPress Trivandrum
WordPress Hosting Best Practices - Do's and Don't s  | WordPress TrivandrumWordPress Hosting Best Practices - Do's and Don't s  | WordPress Trivandrum
WordPress Hosting Best Practices - Do's and Don't s | WordPress Trivandrum
 
WordPress.org & Optimizing Security for your WordPress sites
WordPress.org & Optimizing Security for your WordPress sitesWordPress.org & Optimizing Security for your WordPress sites
WordPress.org & Optimizing Security for your WordPress sites
 
Protect Your WordPress From The Inside Out
Protect Your WordPress From The Inside OutProtect Your WordPress From The Inside Out
Protect Your WordPress From The Inside Out
 
Presentation to SAIT Students - Dec 2013
Presentation to SAIT Students - Dec 2013Presentation to SAIT Students - Dec 2013
Presentation to SAIT Students - Dec 2013
 
WordPress Hardening: Strategies to Secure & Protect Your Website
WordPress Hardening: Strategies to Secure & Protect Your WebsiteWordPress Hardening: Strategies to Secure & Protect Your Website
WordPress Hardening: Strategies to Secure & Protect Your Website
 

Kürzlich hochgeladen

QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesQCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesBernd Ruecker
 
Kuma Meshes Part I - The basics - A tutorial
Kuma Meshes Part I - The basics - A tutorialKuma Meshes Part I - The basics - A tutorial
Kuma Meshes Part I - The basics - A tutorialJoão Esperancinha
 
Infrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platformsInfrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platformsYoss Cohen
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...Wes McKinney
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsRavi Sanghani
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Nikki Chapple
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Farhan Tariq
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructureitnewsafrica
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPathCommunity
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfpanagenda
 
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesAssure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesThousandEyes
 
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)Mark Simos
 
Accelerating Enterprise Software Engineering with Platformless
Accelerating Enterprise Software Engineering with PlatformlessAccelerating Enterprise Software Engineering with Platformless
Accelerating Enterprise Software Engineering with PlatformlessWSO2
 
Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)Kaya Weers
 
Landscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdfLandscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdfAarwolf Industries LLC
 
4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sector
4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sector4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sector
4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sectoritnewsafrica
 
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...Jeffrey Haguewood
 
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security ObservabilityGlenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security Observabilityitnewsafrica
 
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS:  6 Ways to Automate Your Data IntegrationBridging Between CAD & GIS:  6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integrationmarketing932765
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfIngrid Airi González
 

Kürzlich hochgeladen (20)

QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesQCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architectures
 
Kuma Meshes Part I - The basics - A tutorial
Kuma Meshes Part I - The basics - A tutorialKuma Meshes Part I - The basics - A tutorial
Kuma Meshes Part I - The basics - A tutorial
 
Infrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platformsInfrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platforms
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and Insights
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to Hero
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
 
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesAssure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
 
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
 
Accelerating Enterprise Software Engineering with Platformless
Accelerating Enterprise Software Engineering with PlatformlessAccelerating Enterprise Software Engineering with Platformless
Accelerating Enterprise Software Engineering with Platformless
 
Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)
 
Landscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdfLandscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdf
 
4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sector
4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sector4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sector
4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sector
 
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
 
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security ObservabilityGlenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
 
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS:  6 Ways to Automate Your Data IntegrationBridging Between CAD & GIS:  6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdf
 

WordPress Security 101: Practical Techniques & Best Practices

  • 1. WordPress Security 101 Practical Techniques & Best Practices Jonathan Hall, BCIS
  • 3. How Sites are Hacked ● Exploiting code vulnerabilities in WordPress Core, themes, or plugins ● Gaining access to the WordPress admin via a user account ● Finding a way into the web server
  • 5. Update, Update, Update ● Keep WordPress, themes, and plugins up-to- date ● Consider enabling automatic updates – Only enabled for minor core releases, translation files, critical plugin/theme updates by default – Can be expanded, e.g. using Advanced Automatic Updates plugin
  • 6. Update, Update, Update WordPress 0.7.1 Source: http://planetozh.com/blog/2008/12/a-journey-through-five-years-of-wordpress-interface/
  • 7. Minimize the Attack Surface ● Less code = lower probability of vulnerabilities ● Deactivate all unused plugins ● Uninstall all plugins and themes that aren't needed
  • 8. Choose Themes & Plugins Carefully ● Whenever possible, use products from reputable theme and plugin authors ● Paying for a theme/plugin does not guarantee quality ● Prefer older, more widely used themes/plugins
  • 9. Choose Themes & Plugins Carefully ● Check most recent release date, update frequency
  • 11. Don't Give Useful Info to Attackers ● Disable error reporting – PHP configuration: display_errors directive – WordPress configuration: WP_DEBUG and WP_DEBUG_DISPLAY constants
  • 12. Don't Give Useful Info to Attackers ● Disable WordPress version output – e.g. “Meta Generator and Version Info Remover” plugin
  • 14. Avoid Brute Force Attacks ● Don't use default or easily guessed usernames – “admin”, “administrator” – Domain name
  • 15. Avoid Brute Force Attacks ● Use strong passwords – Uppercase and lowercase letters, numbers, symbols – At least 8 characters, preferably more – No dictionary words ● Enforce strong passwords – e.g. Force Strong Passwords plugin
  • 16. Avoid Brute Force Attacks ● Limit the number of failed login attempts – Block the user for a specified time after X failed login attempts – e.g. Limit Login Attempts plugin Limit Login Attempts lockout options
  • 17. Two-Factor Authentication ● Add “what you have” to “what you know” ● Email, SMS, or mobile app based ● e.g. Clef, Duo, Rublon Two-Factor Authentication plugins
  • 18. Two-Factor Authentication Duo Two-Factor Authentication Source: https://en-ca.wordpress.org/plugins/duo-wordpress/screenshots/
  • 19. “Security By Obscurity” ● Change the paths to your WordPress admin directory and the wp-login.php script – e.g. Protect Your Admin plugin
  • 20. Principle of Least Privilege ● Limit users' roles to what they actually need ● Customize roles and capabilities if necessary – e.g. Capability Manager Enhanced plugin ● Disable editing of plugins and themes from the admin – define('DISALLOW_FILE_EDIT', true);
  • 21. Prevent Password Sniffing ● Don't log in to your WordPress admin on unsecured WiFi networks ● Consider installing an SSL certificate for admin access
  • 23. FTP, Control Panel, SSH Access ● Use strong passwords ● Use public key authentication where possible ● Use two-factor authentication where possible
  • 24. Database Server ● Use strong passwords for database users ● Apply principle of least privilege ● Block external access unless absolutely necessary
  • 26. Backups ● Make backups of your database and website files often ● Store backups off-site ● Check/test backups! ● e.g. BackUpWordPress, Dropbox Backup & Restore, UpdraftPlus Backup and Restoration plugins
  • 27. I've Been Hacked, Now What?
  • 28. Recognize the Symptoms ● Unfamiliar files in your website's directories ● Unrecognized plugins ● New posts or other content that you didn't write ● Spammy links appearing in existing content ● New users added ● Successful admin logins from unrecognized IPs/locations
  • 29. What Malicious Code (May) Look Like ● Prepended or appended to WordPress core, plugin, or theme PHP files ● New files with seemingly legitimate names – login.php, config.php, etc. ● PHP files in the uploads directory ● Calls to eval(), often with base64_decode() or gzinflate() – eval(base64_decode(ZnVuY3Rpb24gbXlSZWF sbHlCYWRGdW5jKCkgewplY2hvKCdIZWxsbyB3b 3JsZCEnKTsKZGllKCk7Cn0...
  • 30. First Steps ● “Quarantine” all website files ● Backup the database ● Restore website files and database from the most recent clean backup ● Immediately change all user passwords ● Install all updates
  • 31. Identify the Attack Vector ● Determine when entry was first gained, and by whom (IP address) – WordPress login log – Website logs – Backups of database and files ● Trace the attacker's actions – Login via a compromised user account? – Web requests with a specific URI?