Blog sobre WordPress
No Result
View All Result
  • Web Stories
  • Desenvolvimento
  • Infra
  • Mobile
  • Performance
  • Segurança
  • SEO
  • E-commerce
Cadastrar e-mail
  • Web Stories
  • Desenvolvimento
  • Infra
  • Mobile
  • Performance
  • Segurança
  • SEO
  • E-commerce
No Result
View All Result
Blog sobre WordPress
No Result
View All Result

Início » Segurança para WordPress » Como alterar o prefixo da tabela de banco de dados do WP

Como alterar o prefixo da tabela de banco de dados do WP

Alterando as tabelas WordPress, e principalmente, os seus prefixos, você adiciona uma proteção a mais contra ataques de SQL Injection. Segue o passo a passo.

Leandro Vieira by Leandro Vieira
3 anos ago
Reading Time: 6 min
12
Como alterar o prefixo da tabela de banco de dados do WP
Compartilhe no FacebookCompartilhe no LinkedIn
Audio

O banco de dados do WordPress é o alvo favorito de hackers, uma vez que nele são armazenadas todas as informações. Alterar o prefixo do banco de dados do WordPress é uma das formas de protegê-lo.

Conteúdo relacionado

Segurança e LGPD: comece a implementação pelo básico

ModSecurity como Web Application Firewall no WordPress

O plugin para implementar 2FA – autenticação de dois fatores

Se o prefixo estiver em uso em sua instalação de software, considere alterar o prefixo da tabela de banco de dados do WP para melhorar a segurança, proteger a estrutura e evitar ataques de SQL Injection, por exemplo.

O WordPress não é vulnerável a ataques de SQL Injection. Mas isso pode acontecer e, neste caso, uma atualização seria disponibilizada para corrigir o problema. Por isso você deve sempre fazer o uso da última versão de software.

Muitos plugins não são desenvolvidos com a devida atenção a aspectos de segurança e isso pode criar brechas, por exemplo, de SQL Injection.

Plugins populares como o WooCommerce e Yoast SEO passaram por isso recentemente, mas atualizações foram disponibilizadas e o problema corrigido.

Imagine que um hacker encontre brechas em seu site. Ele vai explorar as brechas através de campos de formulário para digitar comandos SQL ao contrário da informação que você espera, como um endereço de e-mail, por exemplo.

Como a estrutura do banco de dados é conhecida, a não utilização do prefixo “wp_” garante maior segurança e dificulta o trabalho do atacante.

Backup para começar os trabalhos

Alterar o prefixo da tabela de banco de dados do WordPress requer alterações na estrutura da base de dados da aplicação.

Antes de começar os trabalhos neste sentido é preciso considerar um backup para ter uma fonte segura à qual recorrer.

Estrutura do banco de dados do WordPress

O esquema de banco de dados do WordPress
O esquema de banco de dados do WordPress

Por padrão, é requerida a criação de 11 tabelas na base de dados do WordPress e todas elas fazem uso do mesmo prefixo.

Seus nomes são auto-descritivos para suas finalidades. Observe:

  • *_commentmeta
  • *_comments
  • *_links
  • *_options
  • *_postmeta
  • *_posts
  • *_terms
  • *_term_relationships
  • *_term_taxonomy
  • *_usermeta
  • *_users

Durante o processo de instalação do WordPress você define o prefixo a ser utilizado. Com isso, é possível iniciar sem o uso do “wp_”.

Caso o começo tenha sido errôneo precisaremos atuar para alterar o prefixo da tabela do banco de dados do WP alterando “wp_”, por exemplo, para “wp_UmEXmplloHAshEE_”.

O arquivo wp-config.php e o prefixo da tabela de banco de dados do WP

Prefixo da tabela de banco de dados do WP no arquivo wp-config.php

No arquivo wp-config.php a variável $table_prefix armazena o prefixo da tabela de banco de dados do WP e, em caso de alteração, é preciso alterar o valor dessa variável com o novo nome do prefixo que fora definido.

Com a alteração do prefixo da tabela de banco de dados do WP no arquivo mencionado, o WordPress não encontrará suas tabelas no banco e vai compreender que ele não está instalado e te conduzirá para o processo de configuração.

Isso é um comportamento normal e a partir daí precisaremos seguir para alterar o prefixo na estrutura das tabelas.

Como alterar o prefixo do banco de dados do WordPress

Alterar o prefixo da tabela do banco de dados pode ser feito manualmente através de comandos SQL ou com o uso de interface como o phpMyAdmin.

Veremos ambos os cenários para esse processo.

Alterar o prefixo da tabela do banco de dados do WP através de instruções SQL

O primeiro passo é renomear todas as tabelas alterando seu prefixo, assim:

RENAME table `wp_commentmeta` TO `wp_UmEXmplloHAshEE_commentmeta`;
RENAME table `wp_comments` TO `wp_UmEXmplloHAshEE_comments`;
RENAME table `wp_links` TO `wp_UmEXmplloHAshEE_links`;
RENAME table `wp_options` TO `wp_UmEXmplloHAshEE_options`;
RENAME table `wp_postmeta` TO `wp_UmEXmplloHAshEE_postmeta`;
RENAME table `wp_posts` TO `wp_UmEXmplloHAshEE_posts`;
RENAME table `wp_terms` TO `wp_UmEXmplloHAshEE_terms`;
RENAME table `wp_term_relationships` TO `wp_UmEXmplloHAshEE_term_relationships`;
RENAME table `wp_term_taxonomy` TO `wp_UmEXmplloHAshEE_term_taxonomy`;
RENAME table `wp_usermeta` TO `wp_UmEXmplloHAshEE_usermeta`;
RENAME table `wp_users` TO `wp_UmEXmplloHAshEE_users`;

Em seguida é preciso ter uma atenção especial a duas tabelas em específico, a *_options e *_usermeta. Nessas tabelas há campos em que seus nomes são constitutídos com o prefixo da tabela em uso, é preciso localizar essas informações e alterar o prefixo da tabela de banco de dados do WP também. As instruções SQL para localizar esses campos são as seguintes:

SELECT * FROM `wp_UmEXmplloHAshEE_options` WHERE `option_name` LIKE '%wp_%'
SELECT * FROM `wp_UmEXmplloHAshEE_usermeta` WHERE `meta_key` LIKE '%wp_%'

Alterar o prefixo da tabela do banco de dados do WP através do phpMyAdmin

Função nativa do phpMyAdmin para alterar o prefixo da tabela de banco de dados do WP

Dependendo da sua versão do phpMyAdmin, a troca de prefixo de tabela é facilitado devido a um recurso nativo.

Observe uma representação dessa funcionalidade na imagem ao lado.

A forma de uso do recurso mencionado é muito simples: selecione todas as tabelas com o prefixo “wp_” e escolha a opção “Replace table prefix” nas opções do “With selected:“.

Essa opção te apresentará uma tela com dois campos de formulários para você informar o “From” e o “To”. Com isso, bastará informar, nesse contexto, “wp_” em “From” e “wp_UmEXmplloHAshEE_” em “To”.

Em seguida, como já é de conhecimento, é preciso localizar os campos em que seus nomes foram constituídos com o prefixo.

Esses campos se localizam nas tabelas *_options e *_usermeta. As imagens abaixo representam essa busca e alteração do prefixo através do phpMyAdmin.

Prefixo antigo localizado na tabela de meta informações do usuário
Prefixo antigo localizado na tabela de meta informações do usuário
Interface de edição de linha daetabela no phpMy admin
Interface de edição de linha daetabela no phpMy
admin

O prefixo do de dados do WP como aspecto de segurança

Em um olhar simplificado, alterar o uso do prefixo da tabela de banco de dados do WP para garantir o não uso do “wp_” parece ser pouco, mas é um passo a mais em direção à segurança para WordPress.

Fugir do padrão da estrutura do banco de dados e garantir mais segurança para ele, dificultar os ataques de SQL Injection e proteger um dos principais ativos do seu site: suas informações, as quais ficam armazenadas em banco de dados.

Tags: banco de dadossqlsql injectionwordpress seguro
Share8Share1SendShare
Previous Post

Visão geral sobre o checkout do WooCommerce

Next Post

Evite a listagem dos nomes de usuários no WordPress

Leandro Vieira

Leandro Vieira

Uma das grandes referências de WordPress no Brasil, entusiasta e evangelista da plataforma. Fundador e CEO da Apiki, empresa especializada no desenvolvimento web com WordPress.

Related Posts

Rate Limiting
Segurança para WordPress

Como ferramentas de Rate Limiting ajudam em segurança e performance

4 de agosto de 2020
Usuários e senhas fortes para melhorar a segurança no WordPress
Segurança para WordPress

Usuários e senhas fortes para melhorar a segurança no WordPress

28 de julho de 2020
Tipos e benefícios dos certificados de segurança TLS/SSL.
Segurança para WordPress

Tipos e benefícios dos certificados de segurança TLS/SSL.

19 de agosto de 2020
Como remover o nome de usuário “admin” do WordPress
Segurança para WordPress

Como remover o nome de usuário “admin” do WordPress

19 de agosto de 2020
Next Post
listagem de nomes deusuários no WordPress

Evite a listagem dos nomes de usuários no WordPress

Tudo sobre as chaves de segurança do WordPress

Tudo sobre as chaves de segurança do WordPress

Comments 12

  1. Alessandro says:
    7 anos ago

    Oi Leandro,
    Tenho um projeto onde o prefixo da tabela era o padrão wp_.
    Para subir o projeto na hospedagem, precisei alterar o prefixo do banco conforme havia configurado na instalação do wordpress.
    Fiz todos os passos, mas as páginas não aparecem dentro do gerenciador. Será que faltou alguma coisa para configurar?

    Abraços.

    Responder
  2. Pingback: wp-config.php e as constantes de segurança do WordPress
  3. Thais says:
    6 anos ago

    Estou com o mesmo problema do Alessandro 🙁
    Como resolve?

    Responder
  4. Pingback: 15 dicas de segurança para WordPress, em vídeo -
  5. Pingback: 13 passos para reforçar a segurança do WordPress
  6. Pingback: Site seguro: confira 15 dicas em vídeo para ajudar na segurança do seu WordPress
  7. Jean Sobrinho says:
    6 anos ago

    Excelente artigo.

    Responder
  8. Pingback: Como os desenvolvedores full-stack estão impactando na segurança de dados no WordPress
  9. Pingback: Segurança de dados no WordPress: Como os desenvolvedores full-stack podem impactar?
  10. Paula says:
    3 anos ago

    Olá Leandro

    Obrigada pelo post, muito bacana.

    No meu caso, ainda vou instalar o WP, o site está vazio sem conteúdo.
    Como posso alterar o prefixo de tabela, poderia me ajudar, por favor?

    No aguardo
    Paula

    Responder
  11. Welisson says:
    2 anos ago

    Não entendo o sentido de modificar o prefíxo das tabelas… sendo que esse prefíxo fica em uma variável, que pode ser acessado por qualquer scripit, a não ser que exista uma segurança do wordpress para com isso não?

    Pois faria sentido se eu modificasse o nome da tabela, pois ai… o rack não poderia encontrar, mas não sei… talvez esteja errado…

    Por exemplo quando modifico o prefixo de minhas tabelas, meus plugins continuam funcionando normalmente… isso é porque eles pegam o valor do prefíxo na váriável, logo isso não fez
    muito sentido pra mim… poderia me explicar em termos mais tecnicos?

    Pois se o wordpress gerencia isso, logo não faz sentido modificar o préfixo….

    Responder
    • Leandro Vieira says:
      2 anos ago

      Para ficar fácil de entender.

      Imagine que seu site está com alguma brecha de SQL Injection. Esse tipo de brecha me permite executar uma query em seu banco de dados.

      Como conheço a estrutura do banco, e claro, o nome das tabelas eu vou rodar a SQL com facilidade. Se o prefixo é diferente de “wp_”, logo eu preciso descobrir isso primeiro.

      A lógica é ir dificultando, sacou?

      Responder

Deixe um comentário Cancelar resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Receba no seu e-mail uma série de conteúdos sobre Infra para WordPress.

  • Este campo é para fins de validação e não deve ser alterado.

Facebook LinkedIn Instagram Twitter Youtube Github RSS

Sobre a Apiki

Empresa especializada em WordPress com três unidades de negócios.

  1. Design e Desenvolvimento;
  2. Infra e Hospedagem;
  3. Suporte e manutenção.

Em resumo, só fazemos uma coisa em WordPress: tudo.

Páginas do Apiki.com

  • Apiki.com
  • Sobre a Apiki
  • Hospedagem
  • Desenvolvimento
  • UX & UI para WordPress
  • Growth em WordPress
  • Suporte
  • Atendimento

Páginas do Blog

  • Sobre
  • Newsletter
  • Desenvolvimento WordPress
  • Segurança para WordPress
  • WordPress Mobile
  • Infra para WordPress
  • WordPress SEO
  • WordPress Performance
  • E-commerce

© 2020 Apiki - Empresa especializada em WordPress.

No Result
View All Result
  • Web Stories
  • Desenvolvimento
  • Infra
  • Mobile
  • Performance
  • Segurança
  • SEO
  • E-commerce

© 2020 Apiki - Empresa especializada em WordPress.