Sto modificando un xml di un lavoro Jenkins. C'è un campo che è una password. Quando ottengo l'xml, dov'era la password grezza ora c'è un hash.Quale crittografia password sta usando Jenkins?
Quello che mi serve è sapere come creare questo hash dal valore di password non elaborato.
<scm class="com.deluan.jenkins.plugins.rtc.JazzSCM">
<username>user</username>
<password>zlvnUMF1/hXwe3PLoitMpQ6BuQHBJ1FnpH7vmMmQ2qk=</password>
</scm>
Ho letto Jenkins source code e credo che il HudsonPrivateSecurityRealm.java classe è coinvolta, ma io non sono sicuro circa il parametro sale.
PS: Questo non è per la password di Jenkins è per un plug-in che nella configurazione del lavoro ha un campo password.
Se si conosce la password di testo non crittografato, è possibile provare alcuni algoritmi di hashing comuni. –
In un commento della classe HudsonPrivateSecurityRealm si afferma che PasswordEncoder è basato su SHA-256 e generazione salt casuale. Quindi il problema è come ottenere il sale usato da Jenkins o come generare lo stesso sale, giusto? –
I sali vengono generati durante la crittografia della password e [inclusi nell'output] (https://github.com/jenkinsci/jenkins/blob/0cc333faf285d587a87dee8a5ea54a4f75a2c758/core/src/main/java/hudson/security/HudsonPrivateSecurityRealm.java#L602 -L603). Dato che l'hash non si adatta al formato, potrebbe non essere generato da questo codice: è stato configurato da un plugin, dopotutto. – Blaisorblade