I have no history or knowledge how the .htpasswd file was created.
Provavelmente você está procurando pelo comando htpasswd
. Leia a man page para mais detalhes:
man htpasswd
How may I distinguish which encryption my .htpasswd file uses?
Por que você precisa saber disso? Eu não acho importante saber se você quer apenas editar o arquivo.
I'm asking because I had the impression that both of them are vulnerable.
O comando htpasswd
na minha máquina pode usar quatro formatos de senha diferentes:
# MD5 (default)
martin@martin ~ % htpasswd -m -b -n user pass
user:$apr1$uFKIg3No$ItOJ5p6EEbALwPDYcPDd0.
# crypt
martin@martin ~ % htpasswd -d -b -n user pass
user:qMYdeiUkbhR/o
# SHA
martin@martin ~ % htpasswd -s -b -n user pass
user:{SHA}nU4eI71bcnBGqeO0t9tXvY1u5oQ=
# Plain
martin@martin ~ % htpasswd -p -b -n user pass
user:pass
Isso deve ajudá-lo a descobrir qual formato você está usando.
Eu estou querendo saber o que você está preocupado ... se os hashes são vulneráveis é apenas uma preocupação se um atacante é capaz de obter acesso ao arquivo .htpasswd
, o que deve ser muito improvável em uma configuração sensata. O arquivo .htpasswd
deve ser armazenado fora do diretório servido, por exemplo, em algum lugar em /etc
, onde o servidor da Web pode acessá-lo, mas não o veiculará.
O que mais lhe preocupa é o fato de que HTTP Basic Auth transmite senhas em texto não criptografado , o que definitivamente não é seguro se você não estiver usando HTTPS. Por isso, se estiver preocupado com a segurança, considere mudar para Autenticação do resumo do HTTP .