亚洲视频二区_亚洲欧洲日本天天堂在线观看_日韩一区二区在线观看_中文字幕不卡一区

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.430618.com 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

寫在前面

今天收到運維人員的反饋,說程序有漏洞,如下圖:

Apache Shiro反序列化漏洞及修復

 

哎,不查不知道,一查嚇一跳。發現兩個問題!!


Apache Shiro是一個強大且易用的JAVA安全框架,被用來執行身份驗證、授權、密碼和會話管理。

我手頭項目的一個管理后臺,開發時候為了快速上線,選了若依開源管理系統,基于它來開發。確實,基于開源系統開發很方便,但有些問題還是不能避免的,像下邊這個漏洞。

SHIRO-550

在v1.2.4版本時候爆出的嚴重的Java反序列化漏洞,具體看:https://issues.apache.org/jira/browse/SHIRO-550。

這個漏洞的成因是shiro的rememberMe功能AES密鑰硬編碼在代碼中,造成密鑰泄露。使得惡意攻擊者可以利用系統在用戶登錄并勾選了“記住我”時所生成cookie的流程,構造惡意cookie,服務器收到該cookie后解析出的命令可能會造成信息泄露等安全風險。

我手頭項目的管理系統是基于開源的若依管理系統,shiro的秘鑰也是硬編碼在代碼里邊的,在github上搜索下就可以拿到(/汗)。而且github上用這個秘鑰搜索,居然搜到1K+代碼段(/狂汗),很多使用的差不多,拷貝粘貼??

解決辦法:官方在v1.2.5版本已經解決了這個漏洞,所以需要升級shiro版本,并且,重要的一點-->> 去掉或者替換默認的秘鑰。

以若依shiro配置(ShiroConfig.java)來看,具體在初始化CookieRememberMeManager時候設置。

1、去掉默認秘鑰

Apache Shiro反序列化漏洞及修復

 

在ShiroConfig類里邊,在上圖方法里邊將第4行注釋即可。

2、替換默認秘鑰,這里可以自定義一個,或者使用下邊自動生成的方式。

新建類GenerateCipherKey,添加靜態方法getCipherKey()。

Apache Shiro反序列化漏洞及修復

 

在初始化CookieRememberMeManager時候調用。

Apache Shiro反序列化漏洞及修復

 

SHIRO-721

這個漏洞還是Java反序列化問題,比較嚴重,并且影響范圍也很廣,涉及到的版本也很多,具體看下圖。

Apache Shiro反序列化漏洞及修復

 

這個漏洞的成因是使用AES加密模式CBC導致的。詳細情況官方已給出:

RememberMe使用AES-128-CBC模式加密,容易受到Padding Oracle攻擊,AES的初始化向量iv就是rememberMe的base64解碼后的前16個字節,攻擊者只要使用有效的RememberMe cookie作為Padding Oracle Attack 的前綴,然后就可以構造RememberMe進行反序列化攻擊,就像SHIRO-550漏洞一樣。

具體利用這個漏洞攻擊方式和原理,大家可以參考下文章:《從更深層面看Shiro Padding Oracle漏洞》(https://www.anquanke.com/post/id/203869)

解決辦法:升級shiro版本大于等于v1.4.2。

總結

  1. 程序開發漏洞、bug少不了,但開發過程中仔細斟酌推敲肯定不會有錯的。
  2. 開源項目很多,也很雜,使用時候需要注意,尤其是涉及到安全方面的框架,盡量去看下源碼,不說完全吃透,關鍵點還是需要過一遍的。

分享到:
標簽:Apache Shiro
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養生app2018-06-03

每日養生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定