Ir para o conteúdo
cheires

Encripatção de passwords

Mensagens Recomendadas

cheires    0
cheires

Olá a todos.

Não sou muito experiente em PHP, mas tenho uns scripts feitos e a funcionar de acordo com o pretendido.

Esses scripts estão num servidor apache, em linux.

Nesses scripts php tenho sempre acesso a Base de Dados.

A minha pergunta é, é possível encriptar a password do Mysql?

Não tem sido o caso, mas caso haja uma intromissão não desejada, é mais uma password descoberta.

Aqui à tempos estive a ver um script em python e a password de acesso à BD estava encriptada.

Obrigado a todos.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
cyclop    0
cyclop

sim é possivel, mas se alguem conseguir entrar no server descobre sempre...

Pordes por exemplo na variavel de configuração $password ( por exemplo ) colocar a string ja encriptada, e quando vais a fazer o mysql_connect colocar lá o mcrypt a decriptar a password....

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
KiNgPiTo    6
KiNgPiTo

Por acaso também tenho esta dúvida... em md5 penso que não pois se meter a pass correcta encripta e envia o hash e nao dá... se meter o hash não dá para desencriptar logo também não dá... tens a base64, mas tens de meter base64_encode e se alguem tiver acesso ao script vai logo saber que é base64 e é só desencriptar...

O ideal nesta situação é o quê?

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
yoda    139
yoda

O ideal nesta situação é o quê?

É preocupares-te mais com a administração do provider do teu server do que com isso. Quem entra pelo server dentro, vai-te sacar a password de qualquer modo, e mesmo encriptada, nada feito, portanto tem que se olhar mais de cima para a questão.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
cheires    0
cheires

Então básicamente, não adianta tentar encriptar a password.

Basta apenas garantir que ninguém te entra no servidor?

Isso para mim não serve. O servidor pode ter vários tipo de acesso. Várias pessoas podem aceder ao servidor, e ter permissões para isso. O que não as impede de verem qual a password do MySql e fazerem brincadeiras.

Como disse no primeiro post, vi um script em Python que tinha isso implementado, tinha no campo password (de acesso à base de dados) vários caracteres que indicam encriptação, e não tinha, como sugerido, o algoritmo de decrypt quando se acede à BD.

Será que essa "feature" pode ser implementada do lado do MySql/SO? Sei que é possível gerar encriptações pelo SO Linux, não me lembra é como isso se faz, nem como proceder neste caso.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
apocsantos    210
apocsantos

Se vais ter um servidor partilhado onde varias pessoas podem aceder ao servidor de varias formas, qualquer uma delas pode se souber como ganhar root, e sacar todas as passwords que lá tiveres.

Nesse caso a melhor solução é se vais usar um script PHP controlares o acesso ao folder onde tens a pass a connection string guardada. Mas ainda assim não tens garantias nenhumas de que não ta vão sacar.

Alternativas é utilizares algum script CGI e utilizares uma encriptação não padrão (algo baseado numa expressão matematica composta por uma parte explicita no codigo, e outra parte que vá ser lida a outro sitio qualquer tipo um mac-address ou algo do genero). Ainda assim a segurança é demasiado relativa, uma vez que se aceda ao servidor e se ganhe root, nada impede de chegar ao mysql com ou sem passwords encriptadas.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
yoda    139
yoda

Se esses acessos ao código são a nível de FTP, e se tiveres acesso ssh ao servidor, cria as contas ftp à mão por linha de comandos, com acesso só onde queres.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
cheires    0
cheires

A situação a que me referia era a de vários utilizadores poderem aceder ao servidor.

Mesmo que não tenham acesso ao ROOT, podem ver todos os ficheiros, e caso percebam, podem conseguir a password criando um programa para fazer o decrypt.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
cheires    0
cheires

Como posso proibir isso?

Tenho ideia que apenas se pode proibir a execução e alteração, a visualização, não sei como o fazer.

E sendo assim, fica o problema inicial resolvido. :P

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
apocsantos    210
apocsantos

Proibes o acesso ao folder onde tens os ficheiros .PHP com a respectiva connection string.

Assim nem visualizar, nem ler, nem aceder, nada. Ou proibes o acesso ao ficheiro. Logo que ninguém tenha acesso de SU, não tens problemas. É tão simples como definir permissões no ficheiro, deixas todas para creator/owner, e restringes o acesso aos restantes, se não puderes fazer isso ao nivel do ficheiro, faz ao nivel do directorio.

Cumprimentos

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
cheires    0
cheires

Proibes o acesso ao folder onde tens os ficheiros .PHP com a respectiva connection string.

Assim nem visualizar, nem ler, nem aceder, nada. Ou proibes o acesso ao ficheiro. Logo que ninguém tenha acesso de SU, não tens problemas. É tão simples como definir permissões no ficheiro, deixas todas para creator/owner, e restringes o acesso aos restantes, se não puderes fazer isso ao nivel do ficheiro, faz ao nivel do directorio.

Cumprimentos

Eu percebi o que pretendes, e isso tudo está assegurado, mas um user que tenha acesso ao servidor, mesmo sem ser SU, consegue percorrer as directorias e visualizar os ficheiros de configuração, etc, embora não os consiga modificar.

Um vulgar utilizador do servidor web não consegue saber isso, nem que saiba o nome do ficheiro.

O que pretendia era que nenhum outro utilizador do servidor (utilizador resgistado) tenha acesso ao conteúdo dos ficheiros.

Um exemplo:

Eu e tu partilhamos o mesmo PC com linux, como posso eu impedir-te de veres o conteúdo dos ficheiros criados por mim.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
apocsantos    210
apocsantos

Podes, és o Owner do file, eu não devo ter acesso ao ficheiro, a não ser que tenha permissões de SU, posso ver onde ele está, mas não posso ver o conteudo porque não tenho acesso. por exemplo basta que a permissão read esteja apenas disponivel para mim.

Basta que deixes mudes o owner pra ti, e retires a permissão read aos others.

-rw-rw----

Cumprimentos

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora


×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade