O arquivo wp-config.php armazena as chaves de segurança do WordPress, conhecidas como Secret Keys e Salts.
Elas são utilizadas para agregar mais segurança aos dados sensíveis dos usuários como senhas e cookies, contribuindo para uma maior proteção do WordPress
São oito chaves no total, sendo quatro de cada tipo. Elas são armazenadas em constantes PHP ou no banco de dados da plataforma, em caso da ausência delas.
Você conhece os detalhes sobre as chaves de segurança do WordPress?
Tweet
As Secret Keys são caracteres fortes, randômicos e imprevisíveis e a descoberta da sua combinação poderá levar anos.
Os Salts ainda são agregados a cada Secret Key para aumentar a segurança do resultado. Para cada Secret Key há um Salt relacionado.
Na alimentação, é comum dizermos que é melhor pecar pela falta do que pelo excesso de sal (Salt). Em segurança a retórica é inversa: abuse do “sal” para termos algo de difícil digestão daqueles que tentam quebrar as barreiras que te protegem.
As chaves de segurança do WordPress
Como dito anteriormente, são oito chaves no total, sendo quatro Secret Keys e quatro Salts. Essas últimas são utilizadas para incrementar as primeiras.
AUTH_KEY e SECURE_AUTH_KEY
A AUTH_KEY e a SECURE_AUTH_KEY têm as mesmas funcionalidades. A diferença é que uma é utilizada para sites sem a implementação do certificado de segurança enquanto a outra, SECURE_AUTH_KEY, é utilizada para sites que utilizam o SSL.
O valor destas são armazenados em cookies e, através da sua checagem, onde o WordPress permitirá, ou não, que o usuário faça a gestão das informações do site.
LOGGED_IN_KEY
Essa chave é utilizada para gerar o cookie responsável pela autenticação do usuário. Ou seja, para determinar se o usuário está logado, é verificado um determinado cookie e seu valor é encriptado com o valor da chave LOGGED_IN_KEY.
Essa chave não pode ser utilizada para o usuário fazer modificações no painel do WordPress.
NONCE_KEY
Esta chave é utilizada para incrementar o token de segurança do WordPress chamado de Nonces. Caso você não conheça esse mecanismo, saiba tudo a respeito neste artigo.
AUTH_KEY versus LOGGED_IN_KEY
Cada chave de segurança do WordPress tem sua funcionalidade e contribuição para a estabilidade da plataforma. Enquanto a AUTH_KEY é utilizada para autorizar a gestão das informações, a LOGGED_IN_KEY é usada para determinar se o usuário está logado ou não.
As chaves de segurança e as versões do WordPress
As chaves de segurança começaram a ser adicionadas à plataforma à partir da versão 2.6 do WordPress de 15 de Julho de 2008. Dois anos depois as Salts foram adicionadas. Em detalhes, a chegada de cada uma delas foi assim:
WordPress 2.6
- AUTH_KEY
- SECURE_AUTH_KEY
- LOGGED_IN_KEY
WordPress 2.7
- NONCE_KEY
WordPress 3.0
- AUTH_SALT
- SECURE_AUTH_SALT
- LOGGED_IN_SALT
- NONCE_SALT
Sobre o armazenamento das chaves de segurança do WordPress
As chaves são armazenadas no arquivo wp-config.php, como demonstrado na imagem abaixo.
Quando essas chaves não estão presentes, o WordPress as gera automaticamente e armazena seus valores em sua estrutura de banco de dados. Para ser mais direto, na tabela de Options, onde cada uma delas é uma Option específica.
O aconselhável é armazena-las no arquivo wp-config.php e não no banco de dados. Nesse último local, as chaves podem ser capturadas em caso de um ataque de SQL Injection.
Já no wp-config.php você pode incrementar diretivas de segurança para o arquivo e criar uma rotina de troca períodica das chaves.
O gerador de chaves de segurança do WordPress
O WordPress.org mantém um serviço que gera automaticamente, a cada recarregamento de página, chaves de segurança únicas para você fazer uso.
Os valores das chaves de segurança são caracteres como devem ser: fortes, randômicos e imprevisíveis.
Quando seus valores são alterados, todos os usuários que estavam autenticados terão seus logins interrompidos imediatamente e precisarão realizar uma novas autenticações, uma vez que sua credencial foi baseada nesses valores das chaves.