Difference between revisions of "Security Checklist/Site Administration"

From Joomla! Documentation

< Security Checklist
m (improving page)
(Tool link no longer exists - it's a single article blog)
 
(10 intermediate revisions by 4 users not shown)
Line 1: Line 1:
{{:Security Checklist}}
+
<noinclude><languages /></noinclude>
 +
{{:Security Checklist/TOC/<translate><!--T:1--> en</translate>}}
 
== Site Administration ==
 
== Site Administration ==
  
Line 6: Line 7:
  
 
===Follow a password leveling scheme===
 
===Follow a password leveling scheme===
: Most users may not need more than three levels of passwords and webmasters no more than five. Each level must be completely unrelated to the others in terms of which usernames and passwords are used. Learn how to do this: [[How do you setup a powerful password scheme?]]
+
: Most users may not need more than three levels of passwords and webmasters no more than five. Each level must be completely unrelated to the others in terms of which usernames and passwords are used. We'll let the UK Government Cyber Security Center give the best and latest advice: [https://www.ncsc.gov.uk/blog-post/three-random-words-or-thinkrandom-0 Click here]
  
 
===Maintain a strong site backup process===
 
===Maintain a strong site backup process===
Line 23: Line 24:
 
===Stay current with security patches and upgrades===
 
===Stay current with security patches and upgrades===
 
: Apply vendor-released security patches ASAP.
 
: Apply vendor-released security patches ASAP.
* Review the [http://docs.joomla.org/Vulnerable_Extensions_List vulnerable extensions]
+
* Review the [https://vel.joomla.org/ vulnerable extensions]
  
 
===Proactively seek site vulnerabilities===
 
===Proactively seek site vulnerabilities===
Line 31: Line 32:
  
 
===Proactively seek SQL injections vulnerabilities===
 
===Proactively seek SQL injections vulnerabilities===
: Use tools such as [http://www.parosproxy.org/ Paros Proxy] for conducting automated SQL Injection tests against your PHP applications.
+
: Use tools for conducting automated SQL Injection tests against your PHP applications.
 
       <ul>
 
       <ul>
 
         <li>[http://www.google.com/search?q=%22SQL+Injection Google Search]</li>
 
         <li>[http://www.google.com/search?q=%22SQL+Injection Google Search]</li>

Latest revision as of 17:40, 8 April 2020

Other languages:
Deutsch • ‎English • ‎português do Brasil

Site Administration[edit]

Use well-formed passwords[edit]

Change passwords regularly and keep them unique. A strong password has a random combination of letters, numbers, or symbols. Avoid using single names or words found in a dictionary. Never use the names of your relatives, pets, etc. Search the forums for a script supplied by Wizzie that automatically changes passwords. This is a great tool for administrators or multiple sites. There are numerous handy websites that have strong password generators.

Follow a password leveling scheme[edit]

Most users may not need more than three levels of passwords and webmasters no more than five. Each level must be completely unrelated to the others in terms of which usernames and passwords are used. We'll let the UK Government Cyber Security Center give the best and latest advice: Click here

Maintain a strong site backup process[edit]

Never rely on others' backups. Take responsibility for your backup procedures. Many ISPs state in their contract that you cannot rely solely on their backups.

Monitor crack attempts[edit]

VPS and dedicated server users can run TripWire or SAMHAIN. These applications provide exhaustive file checking and reporting functionality, and can be installed in a stealthy manner to help protect themselves in the event of a serious infiltration. (Note: Users of shared servers cannot use this technique.)

Perform automated intrusion detection[edit]

Use an Intrusion Prevention/Detection Systems to block/alert on malicious HTTP requests.

Perform manual intrusion detection[edit]

Regularly check raw logs for suspicious activity. Don't rely on summaries and graphs.

Stay current with security patches and upgrades[edit]

Apply vendor-released security patches ASAP.

Proactively seek site vulnerabilities[edit]

Perform frequent web scanning.

Proactively seek SQL injections vulnerabilities[edit]

Use tools for conducting automated SQL Injection tests against your PHP applications.

Use shell scripts to automate security tasks[edit]

Search the forums for these popular scripts:
  • Joomla! Version Checking
  • Joomla! Component/Module Version Checking
  • Exploit Checking

Learn about security software[edit]

There is not a single tool that can protect your site. If there were, it would be so heavily targeted that it would probably become a liability.

Don't reinvent every wheel[edit]

Every now and then, hire a professional Joomla! security consultant to review your configurations. Do you remember the adage, "Anyone who acts as their own lawyer has a fool for a client."? The same goes for Web development. Don't expect to catch all of your own security mistakes.