Criptografia de postagens do Wordpress

4

Eu estive olhando para fazer um blog Wordpress completamente privado e encontrei blogs / tutoriais úteis ao longo do caminho que ajudaram, como David Hewsons passo a passo bem detalhado .

Atualmente tenho um sistema (on-line) que é legal e privado e requer credenciais de login para acessar o blog, agora aqui está o problema. Estou preocupado que, se o meu servidor web é invadido de alguma forma (eu não vou ser ignorante para o fato de que isso pode ocorrer) e meu banco de dados acessado, então todos os meus posts serão visíveis - derrotando assim todos -ofinal de trabalho de privação.

Procurei soluções pré-construídas para criptografar as postagens, mas ainda não existe nada, o que preciso é uma ajuda na direção certa para escrever um plug-in do Wordpress, pois não tenho a menor idéia de por onde começar. para codificar plugins no Wordpress, qualquer ajuda / tutorial links seria apreciado.

Eu tenho bastante conhecimento extenso de PHP / MySQL, embora não no estilo Wordpress da API, etc.

    
por Snaver 27.09.2010 / 20:44

5 respostas

3

Tanto quanto eu sei o que você pergunta não é realmente possível com o WordPress (ou qualquer aplicativo PHP simples) sozinho. É o mesmo dilema das credenciais de banco de dados no WP - se o FTP for hackeado, o hacker obtém login / senha do banco de dados a partir de wp-config.php . É impossível protegê-los porque o WordPress (ou qualquer outro aplicativo PHP realmente) precisa deles para acesso ao banco de dados. Mesmo se eles forem armazenados criptografados em algum momento, precisarão ser descriptografados.

A mesma coisa com as postagens - mesmo se armazenar mensagens criptografadas no banco de dados em algum momento, o WordPress precisará descriptografá-las. Se o WordPress puder descriptografá-los, o mesmo acontecerá com a pessoa que invadiu a conta.

Provavelmente você pode de alguma forma separar chaves da instalação do WordPress, mas isso simplesmente está mudando a questão - agora ainda temos que pensar em proteger as chaves de serem hackeadas / vazadas, elas estão em outro lugar.

    
por Rarst 27.09.2010 / 20:56
1

Assim, você deseja um sistema que criptografe o texto antes que ele entre no banco de dados e o descriptografe antes de sair do banco de dados. Se você não quiser salvar a senha no servidor, precisará encontrar uma maneira de fornecer isso por meio do navegador toda vez que fizer uma solicitação que precise de dados criptografados.

Você poderia fazer isso em PHP, mas talvez também em JavaScript. Se simplificarmos a questão exigindo apenas a criptografia do conteúdo da postagem e não outros dados (título, datas, ...), você provavelmente poderia ligar seu código a um evento TinyMCE no lado do administrador, que solicita sua senha (ou lembra-a no Armazenamento local ou em outro local seguro que não sai do seu computador), descriptografa o texto antes é mostrado no editor e o criptografa novamente quando você o salva. Desta forma, tudo o que o WordPress vê é o texto criptografado. (Você provavelmente precisará desativar todos os tipos de filtros de conteúdo para que nada seja alterado no lado do servidor.)

No lado público do seu blog, você pode fazer o mesmo: enviar um bloco de dados criptografados para o cliente e descriptografá-lo usando JavaScript.

Esse esquema é viável se você for o único que lê e escreve, caso contrário, você precisaria de uma maneira de compartilhar a criptografia, mas permitir que todos tenham senhas diferentes e coisas do tipo. Mas se você realmente está no cenário de usuário único, tem certeza de que o WordPress é o melhor meio para o seu trabalho? Talvez o Evernote ou outra solução de anotações com suporte para criptografia funcionasse melhor?

    
por Jan Fabry 28.09.2010 / 12:04
1

Posso sugerir dar uma olhada neste site. Eu sou novo no WordPress e ainda não configurei meu próprio blog WordPress. No entanto, enquanto pesquisava iniciando meu próprio blog, eu também queria ter a capacidade de criptografar algumas postagens no blog.

Depois de pesquisar no Google, me deparei com esse site enlace

Basicamente, os posts do blog são criptografados utilizando JavaScript e PHP. Por padrão, as mensagens são criptografadas no AES de 128 bits, mas, ao recompilar o PHP, você pode adicionar suporte ao AES de 256 bits. Eu ainda não comecei a criar meu próprio blog WordPress porque quero ver se existe uma maneira de integrar a idéia de Vincent no WordPress de alguma forma.

Ao criar um plugin baseado no trabalho de Vincent, os posts podem ser criptografados dentro do WordPress sem precisar visitar o site, criptografar a postagem e colar o texto / código resultante em uma postagem do WordPress.

Quando as postagens são descriptografadas, tudo acontece no lado do cliente. A senha ou chave de descriptografia nunca é enviada para o servidor, toda a descriptografia acontece no lado do cliente através de JavaScript. Isso significa que mesmo que um hacker tenha acesso ao seu banco de dados, ele não conseguirá ler as mensagens criptografadas, porque a chave não está armazenada no banco de dados!

Embora eu tenha proficiência em PHP, ainda não sei o suficiente sobre como escrever bons plugins do WordPress para fazer um plugin, ainda ...

    
por Casey 26.10.2011 / 17:30
0

Exatamente; tudo pode ser descriptografado por uma chave pública de grupo, possivelmente com várias chaves privadas mantidas no lado do cliente.

Como o blog é privado naturalmente, tecnicamente não há necessidade de manter chaves privadas em um servidor central que armazena dados criptografados.

    
por Alex Devon 29.12.2012 / 17:16
0

Não é 100%, mas isso adicionaria uma camada de segurança: você poderia escrever um plug-in que usa base64_encode para criptografar entradas específicas e, em seguida, para a codificação, adicionar sal a partir de um hash md5 do nome de usuário t ser alterado), ou algo parecido. O base64_decode funciona muito rápido e o usuário provavelmente não notaria nenhum atraso.

    
por Anachronous 17.06.2013 / 16:06

Tags