当前位置:   article > 正文

Spring Boot项目Shiro1.7.1版本默认密钥的漏洞_shiro默认密钥

shiro默认密钥

1.Shiro1.7.1默认密钥

  1. public CookieRememberMeManager rememberMeManager(){
  2. CookieRememberMeManager cookieRememberMeManager = new CookieRememberMeManager();
  3. cookieRememberMeManager.setCookie(rememberMeCookie());
  4. cookieRememberMeManager.setCipherKey(Base64.decode("fCq+/xW488hMTCD+cmJ3aQ=="));
  5. return cookieRememberMeManager;
  6. }

2.重新生成新的密钥

  1. public static void main(String[] args) throws Exception {
  2. KeyGenerator keygen = KeyGenerator.getInstance("AES");
  3. SecretKey deskey = keygen.generateKey();
  4. System.out.println(Base64.encodeToString(deskey.getEncoded()));
  5. }

用新生成的密钥替换原来的密钥即可。

3.或者直接换成动态密钥

  1. public CookieRememberMeManager rememberMeManager()
  2. {
  3. CookieRememberMeManager cookieRememberMeManager = new CookieRememberMeManager();
  4. cookieRememberMeManager.setCookie(rememberMeCookie());
  5. cookieRememberMeManager.setCipherKey(Base64.decode(generateNewKey()));
  6. return cookieRememberMeManager;
  7. }
  8. public static String generateNewKey() {
  9. try {
  10. KeyGenerator keygen = KeyGenerator.getInstance("AES");
  11. SecretKey deskey = keygen.generateKey();
  12. return Base64.encodeToString(deskey.getEncoded());
  13. }catch (Exception e){
  14. e.printStackTrace();
  15. return "7Iqlf6Ql/A4h7Umjw+254w==";
  16. }
  17. }

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小小林熬夜学编程/article/detail/570341
推荐阅读
相关标签
  

闽ICP备14008679号