cheires Posted December 15, 2009 at 11:34 AM Report Share #300470 Posted December 15, 2009 at 11:34 AM 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. Link to comment Share on other sites More sharing options...
cyclop Posted December 15, 2009 at 12:48 PM Report Share #300474 Posted December 15, 2009 at 12:48 PM 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.... "Quando eu for grande quero ser como o Celso" Link to comment Share on other sites More sharing options...
KiNgPiTo Posted December 15, 2009 at 03:17 PM Report Share #300492 Posted December 15, 2009 at 03:17 PM 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ê? Link to comment Share on other sites More sharing options...
yoda Posted December 15, 2009 at 03:28 PM Report Share #300493 Posted December 15, 2009 at 03:28 PM 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. before you post, what have you tried? - http://filipematias.info sense, purpose, direction Link to comment Share on other sites More sharing options...
cheires Posted December 15, 2009 at 03:43 PM Author Report Share #300498 Posted December 15, 2009 at 03:43 PM 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. Link to comment Share on other sites More sharing options...
apocsantos Posted December 15, 2009 at 04:00 PM Report Share #300500 Posted December 15, 2009 at 04:00 PM 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. "A paciência é uma das coisas que se aprendeu na era do 48k" O respeito é como a escrita de código, uma vez perdido, dificilmente se retoma o habito" Link to comment Share on other sites More sharing options...
yoda Posted December 15, 2009 at 07:42 PM Report Share #300557 Posted December 15, 2009 at 07:42 PM 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. before you post, what have you tried? - http://filipematias.info sense, purpose, direction Link to comment Share on other sites More sharing options...
cheires Posted December 16, 2009 at 11:34 AM Author Report Share #300689 Posted December 16, 2009 at 11:34 AM 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. Link to comment Share on other sites More sharing options...
yoda Posted December 16, 2009 at 11:50 AM Report Share #300694 Posted December 16, 2009 at 11:50 AM Só vêm todos os ficheiros se permitires tal coisa. before you post, what have you tried? - http://filipematias.info sense, purpose, direction Link to comment Share on other sites More sharing options...
cheires Posted December 16, 2009 at 02:44 PM Author Report Share #300732 Posted December 16, 2009 at 02:44 PM 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. 😛 Link to comment Share on other sites More sharing options...
apocsantos Posted December 16, 2009 at 02:54 PM Report Share #300736 Posted December 16, 2009 at 02:54 PM 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 "A paciência é uma das coisas que se aprendeu na era do 48k" O respeito é como a escrita de código, uma vez perdido, dificilmente se retoma o habito" Link to comment Share on other sites More sharing options...
cheires Posted December 16, 2009 at 03:07 PM Author Report Share #300740 Posted December 16, 2009 at 03:07 PM 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. Link to comment Share on other sites More sharing options...
apocsantos Posted December 16, 2009 at 03:19 PM Report Share #300741 Posted December 16, 2009 at 03:19 PM 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 "A paciência é uma das coisas que se aprendeu na era do 48k" O respeito é como a escrita de código, uma vez perdido, dificilmente se retoma o habito" Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now