Jak uzyskać dostęp do niezabezpieczonego hasłem magazynu kluczy Java lub zmienić hasło?

121

Próbuję zaimportować zaufany certyfikat do magazynu kluczy Java Cacerts , ale mam problem. Próbowałem wyświetlić listę istniejących zaufanych certyfikatów i wygląda na to, że magazyn kluczy nie jest chroniony hasłem.

$ keytool -list -keystore cacerts
Enter keystore password:

*****************  WARNING WARNING WARNING  *****************
* The integrity of the information stored in your keystore  *
* has NOT been verified!  In order to verify its integrity, *
* you must provide your keystore password.                  *
*****************  WARNING WARNING WARNING  *****************

Keystore type: JKS
Keystore provider: SUN

Your keystore contains 76 entries

Próbowałem zaimportować zaufany certyfikat:

$ keytool -importcert -alias "JiraCert" -file /root/c9ssl.crt -keystore /etc/java-6-sun/security/cacerts
Enter keystore password:  
Keystore password is too short - must be at least 6 characters
Enter keystore password:  
Keystore password is too short - must be at least 6 characters
Enter keystore password:  
Keystore password is too short - must be at least 6 characters
Too many failures - try later

Próbowałem też zmienić hasło z „none” na coś:

$ keytool -storepasswd -keystore cacerts.back
Enter keystore password:
Keystore password is too short - must be at least 6 characters
Enter keystore password:
Keystore password is too short - must be at least 6 characters
Enter keystore password:
Keystore password is too short - must be at least 6 characters
Too many failures - try later
Eslam
źródło

Odpowiedzi:

206

co oznacza, że ​​magazyn kluczy cacerts nie jest chroniony hasłem

To fałszywe założenie. Jeśli uważnie przeczytasz, okaże się, że lista została dostarczona bez weryfikacji integralności magazynu kluczy, ponieważ nie podałeś hasła. Aukcja nie wymaga hasła, ale Twój magazyn kluczy na pewno ma hasło, na co wskazuje:

Aby zweryfikować jego integralność, musisz podać hasło do magazynu kluczy.

Domyślne hasło cacerts w Javie to „changeit”, chyba że używasz komputera Mac, na którym jest to „changeme” do pewnego momentu. Najwyraźniej od Mountain Lion (na podstawie komentarzy i innej odpowiedzi tutaj), hasło dla Maca jest teraz również „changeit”, prawdopodobnie dlatego, że Oracle obsługuje teraz również dystrybucję dla Mac JVM.

Ryan Stewart
źródło
Dzięki! Nie mogłem zrozumieć, dlaczego hasło było !!
Jesse Barnum
2
Tak, dzięki. Co za okropne domyślne hasło. Nie mogłem też zrozumieć, co to było. Właśnie usunąłem plik cacerts i zastąpiłem go własnym.
HeyWatchThis
3
Jak mówi datasmid poniżej, hasło do Maca, jeśli używasz Mountain Lion, to także „changeit”
Niro,
19
„Domyślne hasło cacerts w Javie to„ changeit ””: +1000, gdybym mógł! Dzięki Stackoverflow!
Neil Vass
55

Domyślne hasło magazynu kluczy to: „changeit”. Działałem zgodnie z moimi poleceniami, które tu wpisałeś, do importu certyfikatu. Mam nadzieję, że rozwiązałeś już swój problem.

GeoKlar
źródło
4

Mac Mountain Lion ma to samo hasło, teraz używa Oracle.

bbaassssiiee
źródło
0

Dostęp do niezabezpieczonego hasłem magazynu kluczy Java i zmianę hasła można wykonać za pomocą samego języka programowania Java.

Ten artykuł zawiera kod:

thetechawesomeness.ideasmatter.info

Oleksii Kyslytsyn
źródło