一、 沙箱保護(hù)
創(chuàng)新互聯(lián)是專業(yè)的麻江網(wǎng)站建設(shè)公司,麻江接單;提供成都網(wǎng)站建設(shè)、網(wǎng)站制作,網(wǎng)頁設(shè)計(jì),網(wǎng)站設(shè)計(jì),建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進(jìn)行麻江網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴(kuò)展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團(tuán)隊(duì),希望更多企業(yè)前來合作!(1)chroot
chroot的主要功能是指定根目錄,如“chroot ‘/home/star’”,會啟動一個新的shell,并將‘/home/star’作為該shell的根目錄。chroot沙箱可以將文件訪問限定在某一特定目錄下,但可能會被逃逸。
推薦一個chroot繞過工具:
GitHub - earthquake/chw00t: chw00t - Unices chroot breaking tool
(2)restricted bash
rbash主要限制了部分bash命令,使得bash只執(zhí)行當(dāng)前目錄下可執(zhí)行文件,并且不允許改變當(dāng)前目錄,通常與chroot共同使用。
(1)ptrace是一種系統(tǒng)調(diào)用,父進(jìn)程通過ptrace監(jiān)控和修改子進(jìn)程運(yùn)行狀態(tài)(內(nèi)存,寄存器等)。由于ptrace可以使子進(jìn)程處于受控狀態(tài),所以可以用于沙箱保護(hù),限制子進(jìn)程可以使用的系統(tǒng)調(diào)用。
(2)seccomp限制程序可以使用或不可使用的系統(tǒng)調(diào)用。
(1)prctl
prctl()是最原始的沙箱規(guī)則實(shí)現(xiàn),決定哪些系統(tǒng)函數(shù)可以被調(diào)用,那些不可以被調(diào)用。
函數(shù)原型
int prctl(int option, unsigned long argv2, unsigned long argv3, unsigned long argv4,unsigned long argv3)
二、 容器技術(shù)
容器的目的是資源隔離和控制隔離。容器我用的最多就是docker,主要用來部署環(huán)境。Docker實(shí)現(xiàn)原理自己目前還說不明白,停留在剛好會用階段,在這里先空著,后面有時間再補(bǔ)上。
三、 ORW技術(shù)
使用方法:seccomp-tools dump ./文件名
通過該工具可以查看沙箱允許使用的系統(tǒng)調(diào)用函數(shù)(白名單)
x86和x64下系統(tǒng)調(diào)用號不一樣,x86下
read:3 exit:1 write:4 open:5
x64下
read:0 exit: 60 write:1 open:2
orw技術(shù)常應(yīng)用于沙箱保護(hù)機(jī)制(常見標(biāo)志是prctl()和seccomp()等函數(shù)),是一種安全交互方式,通過系統(tǒng)調(diào)用(open,write等)與服務(wù)器交互(常用于輸出flag),與漏洞利用本身無關(guān)。(以下orw利用思路以64位為例)
對系統(tǒng)函數(shù)的調(diào)用通常通過匯編代碼的形式,可以手動修改rdi,rsi等寄存器值或內(nèi)存內(nèi)容,也可以通過pwntools中的shellcraft模塊直接生成(匯編代碼,以下演示代碼以64位為例)。但注意,最后交互需要使用asm轉(zhuǎn)換。
open
shellcraft.open(‘./flag’)
實(shí)際匯編:
xor rsi,rsi;
xor rdx,rdx;
push rdx; #添加\x00,但不會引入\x00
mov rax,{convert_str_asmencode(“././flag”)}; #這里填寫對應(yīng)的文件名,對應(yīng)hex編碼,文件名最好湊到8的整數(shù)倍,不然會出現(xiàn)\x00
push rax;
mov rdi,rsp;
xor rax,rax;
mov al,2;
syscall;
read
shellcraft.read(x, y, z)
實(shí)際匯編:
mov rdi,rax;#rdi為文件描述符
mov dl,0x40;#長度
mov rsi,{stack_addr}#保存位置
mov al,0;
syscall;
write
shellcraft.write(x, y, z)
實(shí)際匯編:
xor rdi,rdi;#使用標(biāo)準(zhǔn)輸入
mov al,1;
syscall;
linux中的容器與沙箱初探 — Atum
seccomp escape - 簡書 (jianshu.com)
從prctl函數(shù)開始學(xué)習(xí)沙箱規(guī)則 - Riv4ille - 博客園 (cnblogs.com)
從prctl函數(shù)開始學(xué)習(xí)沙箱規(guī)則 - Riv4ille - 博客園 (cnblogs.com)
CTF wiki
你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機(jī)房具備T級流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級服務(wù)器適合批量采購,新人活動首月15元起,快前往官網(wǎng)查看詳情吧
本文題目:c沙箱與容器-創(chuàng)新互聯(lián)
本文地址:http://m.newbst.com/article16/hpedg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供標(biāo)簽優(yōu)化、網(wǎng)站設(shè)計(jì)、做網(wǎng)站、軟件開發(fā)、定制網(wǎng)站、品牌網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容