91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何通過JBoss反序列化淺談Java反序列化漏洞

發布時間:2021-12-22 21:16:45 來源:億速云 閱讀:649 作者:柒染 欄目:安全技術

今天就跟大家聊聊有關如何通過JBoss反序列化淺談Java反序列化漏洞,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。

前段時間學校學習J2EE,用到了jboss,順便看了下jboss的反序列化,再淺談下反序列化漏洞。

   

Java序列化,簡而言之就是把java對象轉化為字節序列的過程。而反序列話則是再把字節序列恢復為java對象的過程,然而就在這一轉一變得過程中,程序員的過濾不嚴格,就可以導致攻擊者惡意構造的代碼的實現。

舉個簡單的例子,jboss的反序列化漏洞出現在jboss\server\all\deploy\httpha-invoker.sar\invoker.war\WEB-INF\classes\org\jboss\invocation\http\servlet目錄下的ReadOnlyAccessFilter.class文件中的doFilter中。

public void doFilter(ServletRequest request,ServletResponse response,FilterChain chain)
  throw IOException,ServletException
{
  HttpServletRequest httpRequest=(HttpServletRequest)request;
  Principal user=httpRequest.getUserPrincipal();
  if((user=null)&&(this.readOnlyContext!=null))
  { 
    ServletInputStream sis=request.getInputStream();
    ObjectInputStream ois=new ObjectInputStream(sis);
    MarshalledInvocation mi=null;
    try
    {
      mi=(MarshalledInvocation)ois.readObject();
    } 
    catch(ClassNotFountException e)
    {
      throw new ServletException("Failed to read MarshalledInvocation",e);
    }
    request.serAttribute("MarshalledInvocation",mi);

    mi.setMethodMap(this.namingMethodMap);
    Method m=mi.getMethod();
    if(m!=null){
      validateAccess(m,mi)
    }
  }
  chain.doFilter(request,response);
}

程序獲取http數據保存到了httpRequest中,序列化后保存到了ois中,然后沒有進行過濾操作,直接使用了readObject()進行了反序列化操作保存到了mi變量中,這其實就是一個典型的java反序列化漏洞。

復現jboss反序列化漏洞(CVE-2017-12149)

靶機 xp_sp3 10.10.1.34

CVE-2017-12149的主要影響范圍是jbossas 5.x和6.x,下載jboss5.1.0 GA并安裝(需要有java環境)。運行時如果發現只能通過localhost或者127.0.0.1進行訪問,可以通過運行時增加命令 run.bat -b 0.0.0.0 ,或新建start.bat 內容run.bat -b 0.0.0.0

如何通過JBoss反序列化淺談Java反序列化漏洞    

當出現這個的時候說明已經部署好了,可以進行訪問了

如何通過JBoss反序列化淺談Java反序列化漏洞

可以訪問到頁面,

訪問10.10.1.134:8080/invoker/readonly

如何通過JBoss反序列化淺談Java反序列化漏洞    

出現此頁面則可以判斷含有java反序列化漏洞

進行漏洞利用,我使用的是香草反序列化工具,網上還有很多工具,包括ysoserial,都可以進行漏洞利用

如何通過JBoss反序列化淺談Java反序列化漏洞    

如何通過JBoss反序列化淺談Java反序列化漏洞    

列出了文件目錄

關于修復漏洞,建議如果不使用此組件,可以刪除。或添加代碼,進行監控。

看完上述內容,你們對如何通過JBoss反序列化淺談Java反序列化漏洞有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

花莲市| 北宁市| 北票市| 南投市| 金门县| 抚州市| 海丰县| 牟定县| 志丹县| 甘孜县| 濮阳市| 额尔古纳市| 博乐市| 英山县| 宁海县| 客服| 宾川县| 石门县| 葫芦岛市| 宝鸡市| 佳木斯市| 施甸县| 吉林市| 炉霍县| 太仆寺旗| 昌邑市| 娱乐| 阳新县| 建始县| 万山特区| 马公市| 乡宁县| 阿巴嘎旗| 广丰县| 定南县| 连州市| 宁乡县| 平潭县| 阿拉善右旗| 阜新市| 靖远县|