SlideShare a Scribd company logo
1 of 24
Randall Rode - 2009 - rodeworks.com   1




SECURING
WORDPRESS
Randall Rode
Security Vulnerabilities
2


     University address offers trusted domain and
     high-volume internet access – attractive to
     spammers.
     Properly maintained and configured
     WordPress installations are very secure – i.e.
     WordPress.com .
     “Create” efforts from faculty, students and
     other users can complicate the security
     footprint.

                 Randall Rode - 2009 - rodeworks.com
General Considerations
3

    Maintain regular server/software updates
      Apache, PHP, MySQL, MyPHPAdmin
    Implement best security practices for core software
      Apache: i.e. No directory browsing (wp-content/plugins)
      PHP: i.e. No error messages
    Have Monitoring tools in place
      Regularly check web sites
    Implement service level agreement
      Do users expect content to stay up forever? What is the
      lifecycle? When archive it to an html site (http://www.httrack.com/)?
    Minimize security footprint
      Only keep content that is actively being used
      Only allow access that is specifically required


                       Randall Rode - 2009 - rodeworks.com
WordPress Security Principles
4


     Avoid default settings
       Reset table names
       Rename default admin account
     Implement security standards
       Restrict database user account
       Force https for user log-in
     Restrict public access
       Restrict wp-admin access by IP
       Deny *.php files in wp-content, wp-config.php
     Remove unneeded files
       Readme.html, license.txt, etc., inactive plug-ins/themes

                    Randall Rode - 2009 - rodeworks.com
Installing WordPress
5


     At least 2 options
       Do it yourself – create the database, create a
       database user account, upload the WP files,
       configure wp-config.php, run the installer
       Run an installer script – i.e. Fantastico,
       Dreamhost – Most common with commercial web
       host accounts
     Security through plug-ins
       Blogsecurity.net, wpsecurity.net

                  Randall Rode - 2009 - rodeworks.com
Step 1 – create directory
6




                                                   775 should
                                                   be sufficient
                                                   folder setting
                                                   for most
                                                   server
                                                   configuration
                                                   s

                                                   644 for files
             Randall Rode - 2009 - rodeworks.com
Step 2 -- set up data user account
7




             Randall Rode - 2009 - rodeworks.com
Step 3 – create database, access
8




             Randall Rode - 2009 - rodeworks.com
WordPress Install
9


     Download latest WordPress from
     wordpress.org/download
     Rename wp-config-sample.php to wp-
     config.php
     Configure wp-config.php
      Enter database name, db user name, db user
      password in appropriate lines
      Customize table name, key settings, add forced
      SSL

                Randall Rode - 2009 - rodeworks.com
Wp-config.php notes
10




                                                   Comment out for
                                                   initial install –
       /*                */
                                                   then add back




             Randall Rode - 2009 - rodeworks.com
Upload WordPress
11


      First remove unneeded files:
       Readme.html, license.txt, wp-
       content/plugins/hello.php, etc.
      Upload to web server
      Run http://siteaddress/wp-admin/install.php
      After install complete uncomment secure FTP
      line in wp-config.php



                  Randall Rode - 2009 - rodeworks.com
htaccess
12


      Special server file used to control server
      behaviors
      Will create our own special ones for the main
      directory, /wp-content and /wp-admin
      I prefer to manually edit this and not allow
      WordPress to access them.




                 Randall Rode - 2009 - rodeworks.com
Htaccess for /wp-admin
13


      Limit access to a range of, or specific IP
      addresses




                  Randall Rode - 2009 - rodeworks.com
Htaccess for wp-content, wp-
     includes
14


      Restrict access to certain file types




                  Randall Rode - 2009 - rodeworks.com
Htaccess for main directory
15


      Set friendly URLs
      Restrict access to
      wp-config.php




                 Randall Rode - 2009 - rodeworks.com
Customize file uploads
16


        Principle – change defaults!


 Add .htaccess restriction
 to limit executable file types
 as you did with wp-content.




                             Randall Rode - 2009 - rodeworks.com
Hide WordPress version tag
17


      Header includes WordPress version number –
      can be exploited by hackers – the more they
      have to guess the better!
      Add command to functions.php for selected
      theme:




                 Randall Rode - 2009 - rodeworks.com
User accounts
18


      Create admin-only accounts and editor
      accounts for every day use.
      Get more granular control over user
      permissions through a plug-in such as Role
      Manager (http://www.im-web-gefunden.de/wordpress-plugins/role-manager/)
      Not listed in WordPress plug-in repository
      (http://wordpress.org/support/topic/200087) and not listed as working with 2.7, but
      seems to be OK.

      Always limit users to fewest permissions – it is
      always easy to add, not always easy to
      remember to delete

                           Randall Rode - 2009 - rodeworks.com
Comments
19


     Comment spam is a huge problem
     Use Akismet, SpamBam (BlogSecurity)
     plugins
     Consider limiting comments
      Turn comments off by default
      Comments only by logged in users – no user self-
      registration
      Require all comments to be held for moderation
      Require user name/email address/ registration
      Employ a Captcha device (plug-in)
                Randall Rode - 2009 - rodeworks.com
Plug-ins to consider
20


      BlogSecurity.net
       WPIDS – Detect Intrusions
       http://blogsecurity.net/wordpress/wpids-wordpress-intruder-detection-system/

       WordPress Online Security Scanner
       http://blogsecurity.net/wordpress/news-140707/

       SpamBam
       http://blogsecurity.net/wordpress/spambam-comment-anti-spam-plugin/

      Maximum Security
       http://wpsecurity.net/




                          Randall Rode - 2009 - rodeworks.com
Keep WordPress/plugins updated
21




             Randall Rode - 2009 - rodeworks.com
Keep full WordPress backups
22


      Back up the database
        Manual export through tool like PHPmyAdmin
        Through WordPress plug-in such as:
        http://www.ilfilosofo.com/blog/wp-db-backup

        Export through WordPress admin panel – can
        also be used to transfer – only content, not
        settings
      Back up the file structure
        Should be part of standard server maintenance
        Can export locally via FTP program
                         Randall Rode - 2009 - rodeworks.com
Review themes/plug-ins
23


      Themes include programming (functions.php) and
      can utilize vulnerable code
      Look for plug-ins and themes from official
      WordPress repository
      Write/design your own
      (http://codex.wordpress.org/Writing_a_Plugin,
      http://www.devlounge.net/extras/how-to-write-a-wordpress-plugin )

      Check security updates – i.e. Secunia Advisories,
      http://secunia.com/advisories/search/?search=WordPress

      Read/subscribe to developer blogs
         http://lorelle.wordpress.com, http://blogsecurity.net,
         http://wordpress.org/development/

                           Randall Rode - 2009 - rodeworks.com
Randall Rode - 2009 - rodeworks.com


          References
24
     Used in this presentation:
     •WordPress Security Whitepaper, Blogsecurity.net, Philipp Heinze - Primary Author, David Kierznowski - Co-author
     •http://blogsecurity.net/wordpress/wordpress-security-whitepaper/

     •11 Best Ways to Improve WordPress Security, Pro Blog Design, Hendry Lee, http://www.problogdesign.com/wordpress/11-best-ways-to-improve-wordpress-security/

     •WordPress Security -- How to Install WordPress Securely, BlogBuildingU.com, Hendry Lee, http://blogbuildingu.com/wordpress/install-wordpress-securely

     Other resources:
     •Maximum WordPress Security, Weblog Tools Collection, Jeff Chandler, http://weblogtoolscollection.com/archives/2009/01/03/maximum-wordpress-security/, AudioCast

     •Wordpress Security Tips and Hacks, Noupe.com
     •http://www.noupe.com/how-tos/wordpress-security-tips-and-hacks.html

     •WordPress Tips Part 1, wpdesigner.com
     •http://www.wpdesigner.com/2008/01/30/wordpress-tips-part-1/

     •9 easy ways to secure your WordPress blog, SimpleHelp.net, Ross McKillop, 9/10/09, http://www.simplehelp.net/2007/09/10/9-ways-to-secure-your-wordpress-blog/

     •WordPress Security Predictions in 2009, Blogsecurity.net, David Kierznowski,
     •http://blogsecurity.net/wordpress/wordpress-security-predictions-in-2009/

     •WordPress Security Prevention, Reactions, and Scares, Lorelle on WordPress, Lorelle VanFossen
     •http://lorelle.wordpress.com/2008/04/28/wordpress-security-prevention-reactions-and-scares/

     •SecurityFocus SQL Injection Bogus, Ma.tt, Matt Mullenweg,
     •http://ma.tt/2008/04/securityfocus-sql-injection-bogus/

     •WordPress Security with Mark Jaquith, WordCamp Toronto 2008, http://vimeo.com/1893250?pg=embed&sec=1893250, VIDEO

     Resources:

     •National Vulnerability Database, search page, http://web.nvd.nist.gov/view/vuln/search: NVD is the U.S. government repository of standards based vulnerability management data
     represented using the Security Content Automation Protocol (SCAP). This data enables automation of vulnerability management, security measurement, and compliance. NVD
     includes databases of security checklists, security related software flaws, misconfigurations, product names, and impact metrics.

     •Secunia Advisories, http://secunia.com/advisories/search/?search=WordPress

More Related Content

What's hot

Battling the WSOD - A Tech Support Tale
Battling the WSOD - A Tech Support TaleBattling the WSOD - A Tech Support Tale
Battling the WSOD - A Tech Support TaleKayleigh Thorpe
 
E gov security_tut_session_4_lab
E gov security_tut_session_4_labE gov security_tut_session_4_lab
E gov security_tut_session_4_labMustafa Jarrar
 
WordPress Security: Defend yourself against digital invaders
WordPress Security:Defend yourself against digital invadersWordPress Security:Defend yourself against digital invaders
WordPress Security: Defend yourself against digital invadersVladimír Smitka
 
Dating Pro Installation Instructions
Dating Pro Installation InstructionsDating Pro Installation Instructions
Dating Pro Installation InstructionsPilot Group Ltd
 
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 SECURITY: HOW TO AVOID BEING HACKED
WORDPRESS SECURITY: HOW TO AVOID BEING HACKEDWORDPRESS SECURITY: HOW TO AVOID BEING HACKED
WORDPRESS SECURITY: HOW TO AVOID BEING HACKEDStuartJDavidson.com
 
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
 
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
 
8 Ways to Hack a WordPress website
8 Ways to Hack a WordPress website8 Ways to Hack a WordPress website
8 Ways to Hack a WordPress websiteSiteGround.com
 
Windows Loves Drupal
Windows Loves DrupalWindows Loves Drupal
Windows Loves DrupalAcquia
 
How to generate,collect and upload ocum logs
How to generate,collect and upload ocum logsHow to generate,collect and upload ocum logs
How to generate,collect and upload ocum logsAshwin Pawar
 
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
 

What's hot (19)

Battling the WSOD - A Tech Support Tale
Battling the WSOD - A Tech Support TaleBattling the WSOD - A Tech Support Tale
Battling the WSOD - A Tech Support Tale
 
Locking down word press
Locking down word pressLocking down word press
Locking down word press
 
Brendon Hatcher Joomla Security
Brendon Hatcher Joomla SecurityBrendon Hatcher Joomla Security
Brendon Hatcher Joomla Security
 
E gov security_tut_session_4_lab
E gov security_tut_session_4_labE gov security_tut_session_4_lab
E gov security_tut_session_4_lab
 
WordPress Security: Defend yourself against digital invaders
WordPress Security:Defend yourself against digital invadersWordPress Security:Defend yourself against digital invaders
WordPress Security: Defend yourself against digital invaders
 
Joomla! security jday2015
Joomla! security jday2015Joomla! security jday2015
Joomla! security jday2015
 
Dating Pro Installation Instructions
Dating Pro Installation InstructionsDating Pro Installation Instructions
Dating Pro Installation Instructions
 
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 SECURITY: HOW TO AVOID BEING HACKED
WORDPRESS SECURITY: HOW TO AVOID BEING HACKEDWORDPRESS SECURITY: HOW TO AVOID BEING HACKED
WORDPRESS SECURITY: HOW TO AVOID BEING HACKED
 
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
 
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
 
8 Ways to Hack a WordPress website
8 Ways to Hack a WordPress website8 Ways to Hack a WordPress website
8 Ways to Hack a WordPress website
 
Windows Loves drupal
Windows Loves drupalWindows Loves drupal
Windows Loves drupal
 
Windows Loves Drupal
Windows Loves DrupalWindows Loves Drupal
Windows Loves Drupal
 
How to generate,collect and upload ocum logs
How to generate,collect and upload ocum logsHow to generate,collect and upload ocum logs
How to generate,collect and upload ocum logs
 
Apache
ApacheApache
Apache
 
Its3 Drupal
Its3 DrupalIts3 Drupal
Its3 Drupal
 
Its3 Drupal
Its3 DrupalIts3 Drupal
Its3 Drupal
 
WordPress Security Best Practices 2019 Update
WordPress Security Best Practices 2019 UpdateWordPress Security Best Practices 2019 Update
WordPress Security Best Practices 2019 Update
 

Viewers also liked

기업 소셜 미디어 운영을 위한 팁 20100503
기업 소셜 미디어 운영을 위한 팁 20100503기업 소셜 미디어 운영을 위한 팁 20100503
기업 소셜 미디어 운영을 위한 팁 20100503Social-Link
 
5 things to do when you visit Ecuador
5 things to do when you visit Ecuador5 things to do when you visit Ecuador
5 things to do when you visit EcuadorPatricia Plaza
 
Universidad de otavalo
Universidad de otavaloUniversidad de otavalo
Universidad de otavaloDavid Hurtado
 
페이스북 커뮤니티(그룹) 활성화 전략
페이스북 커뮤니티(그룹) 활성화 전략페이스북 커뮤니티(그룹) 활성화 전략
페이스북 커뮤니티(그룹) 활성화 전략승훈 류
 
Ceecp Framework Draft 10 30 2009
Ceecp Framework Draft 10 30 2009Ceecp Framework Draft 10 30 2009
Ceecp Framework Draft 10 30 2009Kim Mitchell
 
Conceptos expresión, parte 1
Conceptos expresión, parte 1Conceptos expresión, parte 1
Conceptos expresión, parte 1Angélica Izaza
 
Please tell me why
Please tell me whyPlease tell me why
Please tell me whyNguyen Trang
 
What Would Core Do?
What Would Core Do?What Would Core Do?
What Would Core Do?Jake Goldman
 
Radvision Education Case Studies by Face to Face Live
Radvision Education Case Studies by Face to Face LiveRadvision Education Case Studies by Face to Face Live
Radvision Education Case Studies by Face to Face LiveFace to Face Live
 
Travel 2.0: Crea Tu Propio Blog Empresarial
Travel 2.0: Crea Tu Propio Blog EmpresarialTravel 2.0: Crea Tu Propio Blog Empresarial
Travel 2.0: Crea Tu Propio Blog Empresarialchelona
 
English tourist promotion
English tourist promotionEnglish tourist promotion
English tourist promotionJAIMECUADOR
 

Viewers also liked (20)

기업 소셜 미디어 운영을 위한 팁 20100503
기업 소셜 미디어 운영을 위한 팁 20100503기업 소셜 미디어 운영을 위한 팁 20100503
기업 소셜 미디어 운영을 위한 팁 20100503
 
5 things to do when you visit Ecuador
5 things to do when you visit Ecuador5 things to do when you visit Ecuador
5 things to do when you visit Ecuador
 
Universidad de otavalo
Universidad de otavaloUniversidad de otavalo
Universidad de otavalo
 
Personal Branding
Personal BrandingPersonal Branding
Personal Branding
 
페이스북 커뮤니티(그룹) 활성화 전략
페이스북 커뮤니티(그룹) 활성화 전략페이스북 커뮤니티(그룹) 활성화 전략
페이스북 커뮤니티(그룹) 활성화 전략
 
Mi primera experiencia docente
Mi primera experiencia docenteMi primera experiencia docente
Mi primera experiencia docente
 
Ceecp Framework Draft 10 30 2009
Ceecp Framework Draft 10 30 2009Ceecp Framework Draft 10 30 2009
Ceecp Framework Draft 10 30 2009
 
Meditación
MeditaciónMeditación
Meditación
 
Conceptos expresión, parte 1
Conceptos expresión, parte 1Conceptos expresión, parte 1
Conceptos expresión, parte 1
 
Please tell me why
Please tell me whyPlease tell me why
Please tell me why
 
Career Direct
Career DirectCareer Direct
Career Direct
 
What Would Core Do?
What Would Core Do?What Would Core Do?
What Would Core Do?
 
Radvision Education Case Studies by Face to Face Live
Radvision Education Case Studies by Face to Face LiveRadvision Education Case Studies by Face to Face Live
Radvision Education Case Studies by Face to Face Live
 
Taller clinica del meta
Taller clinica del metaTaller clinica del meta
Taller clinica del meta
 
Phrasal verbs unit 2
Phrasal verbs  unit 2Phrasal verbs  unit 2
Phrasal verbs unit 2
 
Proyecto
Proyecto Proyecto
Proyecto
 
Travel 2.0: Crea Tu Propio Blog Empresarial
Travel 2.0: Crea Tu Propio Blog EmpresarialTravel 2.0: Crea Tu Propio Blog Empresarial
Travel 2.0: Crea Tu Propio Blog Empresarial
 
Cronograma
CronogramaCronograma
Cronograma
 
English tourist promotion
English tourist promotionEnglish tourist promotion
English tourist promotion
 
OSK_101606
OSK_101606OSK_101606
OSK_101606
 

Similar to Word Press Security

Intro to development sites and site migration
Intro to development sites and site migrationIntro to development sites and site migration
Intro to development sites and site migrationR-Cubed Design Forge
 
WordPress Optimization & Security - LAC 2013, London
WordPress Optimization & Security - LAC 2013, LondonWordPress Optimization & Security - LAC 2013, London
WordPress Optimization & Security - LAC 2013, LondonBastian Grimm
 
WordPress Optimization & Security - ThinkVisibility 2012, Leeds
WordPress Optimization & Security - ThinkVisibility 2012, LeedsWordPress Optimization & Security - ThinkVisibility 2012, Leeds
WordPress Optimization & Security - ThinkVisibility 2012, LeedsBastian Grimm
 
40 WordPress Tips: Security, Engagement, SEO & Performance - SMX Sydney 2013
40 WordPress Tips: Security, Engagement, SEO & Performance - SMX Sydney 201340 WordPress Tips: Security, Engagement, SEO & Performance - SMX Sydney 2013
40 WordPress Tips: Security, Engagement, SEO & Performance - SMX Sydney 2013Bastian Grimm
 
WordPress Security 101: Practical Techniques & Best Practices
WordPress Security 101: Practical Techniques & Best PracticesWordPress Security 101: Practical Techniques & Best Practices
WordPress Security 101: Practical Techniques & Best PracticesJonathan Hall
 
WordPress MU 101
WordPress MU 101WordPress MU 101
WordPress MU 101Pete Mall
 
Wordpress security issues
Wordpress security issuesWordpress security issues
Wordpress security issuesDeepu Thomas
 
20 tips to Improving Your WordPress Site...for Beginners
20 tips to Improving Your WordPress Site...for Beginners20 tips to Improving Your WordPress Site...for Beginners
20 tips to Improving Your WordPress Site...for BeginnersTRB Design, Inc.
 
WordPress End-User Security
WordPress End-User SecurityWordPress End-User Security
WordPress End-User SecurityDre Armeda
 
Securing Apache Web Servers
Securing Apache Web ServersSecuring Apache Web Servers
Securing Apache Web Serverswebhostingguy
 
Complete Wordpress Security By CHETAN SONI - Cyber Security Expert
Complete Wordpress Security By CHETAN SONI - Cyber Security ExpertComplete Wordpress Security By CHETAN SONI - Cyber Security Expert
Complete Wordpress Security By CHETAN SONI - Cyber Security ExpertChetan Soni
 
Developers, Be a Bada$$ with WP-CLI
Developers, Be a Bada$$ with WP-CLIDevelopers, Be a Bada$$ with WP-CLI
Developers, Be a Bada$$ with WP-CLIWP Engine
 
Intro to WordPress Plugin Development
Intro to WordPress Plugin DevelopmentIntro to WordPress Plugin Development
Intro to WordPress Plugin DevelopmentR-Cubed Design Forge
 
Tips for Fixing a Hacked WordPress Site - WordCamp Sydney 2016
Tips for Fixing a Hacked WordPress Site - WordCamp Sydney 2016Tips for Fixing a Hacked WordPress Site - WordCamp Sydney 2016
Tips for Fixing a Hacked WordPress Site - WordCamp Sydney 2016Vlad Lasky
 
Top Ten WordPress Security Tips for 2012
Top Ten WordPress Security Tips for 2012Top Ten WordPress Security Tips for 2012
Top Ten WordPress Security Tips for 2012Brad Williams
 

Similar to Word Press Security (20)

Intro to development sites and site migration
Intro to development sites and site migrationIntro to development sites and site migration
Intro to development sites and site migration
 
WordPress Optimization & Security - LAC 2013, London
WordPress Optimization & Security - LAC 2013, LondonWordPress Optimization & Security - LAC 2013, London
WordPress Optimization & Security - LAC 2013, London
 
WordPress Optimization & Security - ThinkVisibility 2012, Leeds
WordPress Optimization & Security - ThinkVisibility 2012, LeedsWordPress Optimization & Security - ThinkVisibility 2012, Leeds
WordPress Optimization & Security - ThinkVisibility 2012, Leeds
 
WordPress Security
WordPress SecurityWordPress Security
WordPress Security
 
40 WordPress Tips: Security, Engagement, SEO & Performance - SMX Sydney 2013
40 WordPress Tips: Security, Engagement, SEO & Performance - SMX Sydney 201340 WordPress Tips: Security, Engagement, SEO & Performance - SMX Sydney 2013
40 WordPress Tips: Security, Engagement, SEO & Performance - SMX Sydney 2013
 
WordPress Security Best Practices
WordPress Security Best PracticesWordPress Security Best Practices
WordPress Security Best Practices
 
WordPress Security Best Practices
WordPress Security Best PracticesWordPress Security Best Practices
WordPress Security Best Practices
 
WordPress Security 101: Practical Techniques & Best Practices
WordPress Security 101: Practical Techniques & Best PracticesWordPress Security 101: Practical Techniques & Best Practices
WordPress Security 101: Practical Techniques & Best Practices
 
WordPress MU 101
WordPress MU 101WordPress MU 101
WordPress MU 101
 
Wordpress security issues
Wordpress security issuesWordpress security issues
Wordpress security issues
 
20 tips to Improving Your WordPress Site...for Beginners
20 tips to Improving Your WordPress Site...for Beginners20 tips to Improving Your WordPress Site...for Beginners
20 tips to Improving Your WordPress Site...for Beginners
 
WordPress End-User Security
WordPress End-User SecurityWordPress End-User Security
WordPress End-User Security
 
Securing Apache Web Servers
Securing Apache Web ServersSecuring Apache Web Servers
Securing Apache Web Servers
 
Securing Apache Web Servers
Securing Apache Web ServersSecuring Apache Web Servers
Securing Apache Web Servers
 
Durkee apache 2009_v7
Durkee apache 2009_v7Durkee apache 2009_v7
Durkee apache 2009_v7
 
Complete Wordpress Security By CHETAN SONI - Cyber Security Expert
Complete Wordpress Security By CHETAN SONI - Cyber Security ExpertComplete Wordpress Security By CHETAN SONI - Cyber Security Expert
Complete Wordpress Security By CHETAN SONI - Cyber Security Expert
 
Developers, Be a Bada$$ with WP-CLI
Developers, Be a Bada$$ with WP-CLIDevelopers, Be a Bada$$ with WP-CLI
Developers, Be a Bada$$ with WP-CLI
 
Intro to WordPress Plugin Development
Intro to WordPress Plugin DevelopmentIntro to WordPress Plugin Development
Intro to WordPress Plugin Development
 
Tips for Fixing a Hacked WordPress Site - WordCamp Sydney 2016
Tips for Fixing a Hacked WordPress Site - WordCamp Sydney 2016Tips for Fixing a Hacked WordPress Site - WordCamp Sydney 2016
Tips for Fixing a Hacked WordPress Site - WordCamp Sydney 2016
 
Top Ten WordPress Security Tips for 2012
Top Ten WordPress Security Tips for 2012Top Ten WordPress Security Tips for 2012
Top Ten WordPress Security Tips for 2012
 

More from Randall Rode

Week6 office-hours
Week6 office-hoursWeek6 office-hours
Week6 office-hoursRandall Rode
 
Week 5 open session
Week 5 open sessionWeek 5 open session
Week 5 open sessionRandall Rode
 
Week4 office hours
Week4 office hoursWeek4 office hours
Week4 office hoursRandall Rode
 
Week3 office hours
Week3 office hoursWeek3 office hours
Week3 office hoursRandall Rode
 
Plan to create a Yale Developers network resource
Plan to create a Yale Developers network resourcePlan to create a Yale Developers network resource
Plan to create a Yale Developers network resourceRandall Rode
 
e-Portfolios at YSD and YSM
e-Portfolios at YSD and YSMe-Portfolios at YSD and YSM
e-Portfolios at YSD and YSMRandall Rode
 

More from Randall Rode (6)

Week6 office-hours
Week6 office-hoursWeek6 office-hours
Week6 office-hours
 
Week 5 open session
Week 5 open sessionWeek 5 open session
Week 5 open session
 
Week4 office hours
Week4 office hoursWeek4 office hours
Week4 office hours
 
Week3 office hours
Week3 office hoursWeek3 office hours
Week3 office hours
 
Plan to create a Yale Developers network resource
Plan to create a Yale Developers network resourcePlan to create a Yale Developers network resource
Plan to create a Yale Developers network resource
 
e-Portfolios at YSD and YSM
e-Portfolios at YSD and YSMe-Portfolios at YSD and YSM
e-Portfolios at YSD and YSM
 

Word Press Security

  • 1. Randall Rode - 2009 - rodeworks.com 1 SECURING WORDPRESS Randall Rode
  • 2. Security Vulnerabilities 2 University address offers trusted domain and high-volume internet access – attractive to spammers. Properly maintained and configured WordPress installations are very secure – i.e. WordPress.com . “Create” efforts from faculty, students and other users can complicate the security footprint. Randall Rode - 2009 - rodeworks.com
  • 3. General Considerations 3 Maintain regular server/software updates Apache, PHP, MySQL, MyPHPAdmin Implement best security practices for core software Apache: i.e. No directory browsing (wp-content/plugins) PHP: i.e. No error messages Have Monitoring tools in place Regularly check web sites Implement service level agreement Do users expect content to stay up forever? What is the lifecycle? When archive it to an html site (http://www.httrack.com/)? Minimize security footprint Only keep content that is actively being used Only allow access that is specifically required Randall Rode - 2009 - rodeworks.com
  • 4. WordPress Security Principles 4 Avoid default settings Reset table names Rename default admin account Implement security standards Restrict database user account Force https for user log-in Restrict public access Restrict wp-admin access by IP Deny *.php files in wp-content, wp-config.php Remove unneeded files Readme.html, license.txt, etc., inactive plug-ins/themes Randall Rode - 2009 - rodeworks.com
  • 5. Installing WordPress 5 At least 2 options Do it yourself – create the database, create a database user account, upload the WP files, configure wp-config.php, run the installer Run an installer script – i.e. Fantastico, Dreamhost – Most common with commercial web host accounts Security through plug-ins Blogsecurity.net, wpsecurity.net Randall Rode - 2009 - rodeworks.com
  • 6. Step 1 – create directory 6 775 should be sufficient folder setting for most server configuration s 644 for files Randall Rode - 2009 - rodeworks.com
  • 7. Step 2 -- set up data user account 7 Randall Rode - 2009 - rodeworks.com
  • 8. Step 3 – create database, access 8 Randall Rode - 2009 - rodeworks.com
  • 9. WordPress Install 9 Download latest WordPress from wordpress.org/download Rename wp-config-sample.php to wp- config.php Configure wp-config.php Enter database name, db user name, db user password in appropriate lines Customize table name, key settings, add forced SSL Randall Rode - 2009 - rodeworks.com
  • 10. Wp-config.php notes 10 Comment out for initial install – /* */ then add back Randall Rode - 2009 - rodeworks.com
  • 11. Upload WordPress 11 First remove unneeded files: Readme.html, license.txt, wp- content/plugins/hello.php, etc. Upload to web server Run http://siteaddress/wp-admin/install.php After install complete uncomment secure FTP line in wp-config.php Randall Rode - 2009 - rodeworks.com
  • 12. htaccess 12 Special server file used to control server behaviors Will create our own special ones for the main directory, /wp-content and /wp-admin I prefer to manually edit this and not allow WordPress to access them. Randall Rode - 2009 - rodeworks.com
  • 13. Htaccess for /wp-admin 13 Limit access to a range of, or specific IP addresses Randall Rode - 2009 - rodeworks.com
  • 14. Htaccess for wp-content, wp- includes 14 Restrict access to certain file types Randall Rode - 2009 - rodeworks.com
  • 15. Htaccess for main directory 15 Set friendly URLs Restrict access to wp-config.php Randall Rode - 2009 - rodeworks.com
  • 16. Customize file uploads 16 Principle – change defaults! Add .htaccess restriction to limit executable file types as you did with wp-content. Randall Rode - 2009 - rodeworks.com
  • 17. Hide WordPress version tag 17 Header includes WordPress version number – can be exploited by hackers – the more they have to guess the better! Add command to functions.php for selected theme: Randall Rode - 2009 - rodeworks.com
  • 18. User accounts 18 Create admin-only accounts and editor accounts for every day use. Get more granular control over user permissions through a plug-in such as Role Manager (http://www.im-web-gefunden.de/wordpress-plugins/role-manager/) Not listed in WordPress plug-in repository (http://wordpress.org/support/topic/200087) and not listed as working with 2.7, but seems to be OK. Always limit users to fewest permissions – it is always easy to add, not always easy to remember to delete Randall Rode - 2009 - rodeworks.com
  • 19. Comments 19 Comment spam is a huge problem Use Akismet, SpamBam (BlogSecurity) plugins Consider limiting comments Turn comments off by default Comments only by logged in users – no user self- registration Require all comments to be held for moderation Require user name/email address/ registration Employ a Captcha device (plug-in) Randall Rode - 2009 - rodeworks.com
  • 20. Plug-ins to consider 20 BlogSecurity.net WPIDS – Detect Intrusions http://blogsecurity.net/wordpress/wpids-wordpress-intruder-detection-system/ WordPress Online Security Scanner http://blogsecurity.net/wordpress/news-140707/ SpamBam http://blogsecurity.net/wordpress/spambam-comment-anti-spam-plugin/ Maximum Security http://wpsecurity.net/ Randall Rode - 2009 - rodeworks.com
  • 21. Keep WordPress/plugins updated 21 Randall Rode - 2009 - rodeworks.com
  • 22. Keep full WordPress backups 22 Back up the database Manual export through tool like PHPmyAdmin Through WordPress plug-in such as: http://www.ilfilosofo.com/blog/wp-db-backup Export through WordPress admin panel – can also be used to transfer – only content, not settings Back up the file structure Should be part of standard server maintenance Can export locally via FTP program Randall Rode - 2009 - rodeworks.com
  • 23. Review themes/plug-ins 23 Themes include programming (functions.php) and can utilize vulnerable code Look for plug-ins and themes from official WordPress repository Write/design your own (http://codex.wordpress.org/Writing_a_Plugin, http://www.devlounge.net/extras/how-to-write-a-wordpress-plugin ) Check security updates – i.e. Secunia Advisories, http://secunia.com/advisories/search/?search=WordPress Read/subscribe to developer blogs http://lorelle.wordpress.com, http://blogsecurity.net, http://wordpress.org/development/ Randall Rode - 2009 - rodeworks.com
  • 24. Randall Rode - 2009 - rodeworks.com References 24 Used in this presentation: •WordPress Security Whitepaper, Blogsecurity.net, Philipp Heinze - Primary Author, David Kierznowski - Co-author •http://blogsecurity.net/wordpress/wordpress-security-whitepaper/ •11 Best Ways to Improve WordPress Security, Pro Blog Design, Hendry Lee, http://www.problogdesign.com/wordpress/11-best-ways-to-improve-wordpress-security/ •WordPress Security -- How to Install WordPress Securely, BlogBuildingU.com, Hendry Lee, http://blogbuildingu.com/wordpress/install-wordpress-securely Other resources: •Maximum WordPress Security, Weblog Tools Collection, Jeff Chandler, http://weblogtoolscollection.com/archives/2009/01/03/maximum-wordpress-security/, AudioCast •Wordpress Security Tips and Hacks, Noupe.com •http://www.noupe.com/how-tos/wordpress-security-tips-and-hacks.html •WordPress Tips Part 1, wpdesigner.com •http://www.wpdesigner.com/2008/01/30/wordpress-tips-part-1/ •9 easy ways to secure your WordPress blog, SimpleHelp.net, Ross McKillop, 9/10/09, http://www.simplehelp.net/2007/09/10/9-ways-to-secure-your-wordpress-blog/ •WordPress Security Predictions in 2009, Blogsecurity.net, David Kierznowski, •http://blogsecurity.net/wordpress/wordpress-security-predictions-in-2009/ •WordPress Security Prevention, Reactions, and Scares, Lorelle on WordPress, Lorelle VanFossen •http://lorelle.wordpress.com/2008/04/28/wordpress-security-prevention-reactions-and-scares/ •SecurityFocus SQL Injection Bogus, Ma.tt, Matt Mullenweg, •http://ma.tt/2008/04/securityfocus-sql-injection-bogus/ •WordPress Security with Mark Jaquith, WordCamp Toronto 2008, http://vimeo.com/1893250?pg=embed&sec=1893250, VIDEO Resources: •National Vulnerability Database, search page, http://web.nvd.nist.gov/view/vuln/search: NVD is the U.S. government repository of standards based vulnerability management data represented using the Security Content Automation Protocol (SCAP). This data enables automation of vulnerability management, security measurement, and compliance. NVD includes databases of security checklists, security related software flaws, misconfigurations, product names, and impact metrics. •Secunia Advisories, http://secunia.com/advisories/search/?search=WordPress