精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

Linux內核爆安全漏洞 可通過exploit獲取root權限

安全 網站安全
最近Linux 內核爆出了一個嚴重的安全漏洞,非root用戶可以通過該漏洞的exploit 獲取root權限。這并不罕見,值得一提的是這個補丁看起來如此平常以至于我們絕大多數人都不會以為這是安全問題。

最近Linux 內核爆出了一個嚴重的安全漏洞,非root用戶可以通過該漏洞的exploit 獲取root權限。這并不罕見,值得一提的是這個補丁看起來如此平常以至于我們絕大多數人都不會以為這是安全問題。

先看這個問題的補丁,就是下面這個:

 static int perf_swevent_init(struct perf_event *event)
 {-	int event_id = event->attr.config;+	u64 event_id = event->attr.config;

 	if (event->attr.type != PERF_TYPE_SOFTWARE)
 		return -ENOENT;

我們第一眼的感覺就是這大概只是修復了編譯器報的一個小警告吧,怎么會引起如此嚴重的安全問題呢?

在沒打補丁的代碼中 event_id 是個帶符號的整型,而且就在下面不遠處的兩行代碼中只檢查了其上界:

if (event_id>= PERF_COUNT_SW_MAX)
                return -ENOENT;

而如果傳遞進來的 event->attr.config 值正好設置了符號位,那么 event_id 就會變成負值,而且能躲過上面的檢查。

負值意味著什么呢?再繼續看后面的代碼:

 if (!event->parent) {
                int err;
 
                err = swevent_hlist_get(event);
                if (err)
                        return err;
 
                atomic_inc(&perf_swevent_enabled[event_id]);
                event->destroy = sw_perf_event_destroy;
        }

意味著數組越界!這時你應該身上開始冒冷汗了。繼續,數組 perf_swevent_enabled[] 在 RHEL6 上的定義是:

atomic_t perf_swevent_enabled[PERF_COUNT_SW_MAX];

而 atomic_t 基本上就是int,也就是說 perf_swevent_enabled[] 是整型數組,那么用 event_id 訪問該數組時會把 event_id 的值乘以4再加上數組的起始地址。很簡單哈!

好,通過 System.map 文件我們可以得到 perf_swevent_enabled 的地址:

ffffffff81f360c0 B perf_swevent_enabled

那么當 event->attr.config == 0xffffffff (即有符號的-1)時,在 x86_64 上面我們最終會得到:

0xffffffffffffffff * 4 + 0xffffffff81f360c0 == 0xFFFFFFFF81F360BC

同理,當 event->attr.config == 0xfffffffe 時我們得到:

0xfffffffffffffffe * 4 + 0xffffffff81f360c0 == 0xFFFFFFFF81F360B8

所以上述的 atomic_inc() 其實增加的是前面兩個地址中存放的值,而這倆地址都指向內核空間(參見 Documentation/x86/x86_64/mm.txt)!這時你應該感到緊張了。。。

后面更有趣的事情發生在 sw_perf_event_destroy() 函數中,它是在 perf_event_open() 返回的 fd 被關閉時被調用,RHEL6 上其定義如下:

static void sw_perf_event_destroy(struct perf_event *event){
        u64 event_id = event->attr.config;
 
        WARN_ON(event->parent);
 
        atomic_dec(&perf_swevent_enabled[event_id]);
        swevent_hlist_put(event);}

很明顯的不同是,event_id 這次是無符號的類型。那么,同上,當 event->attr.config == 0xffffffff 時我們得到:

0xffffffff * 4 + 0xffffffff81f360c0 == 0x0000000381F360BC

當 event->attr.config == 0xfffffffe 時我們得到:

0xfffffffe * 4 + 0xffffffff81f360c0 == 0x0000000381F360B8

所以這里的 atomic_dec() 實際上減小的是用戶空間地址內的值。

上面是“基礎知識”,帶著這些知識我們看 exploit 代碼究竟做了什么,代碼片段如下:

#define BASE 0x380000000
#define SIZE 0x010000000
assert((map = mmap((void*)BASE, SIZE, 3, 0x32, 0,0)) == (void*)BASE);
memset(map, 0, SIZE);
sheep(-1); sheep(-2); // sheep will just invoke perf_event_open
// syscall with attr.config set to the param
for (i = 0; i 
assert(map[i+1]);
break;
}

它首先會 mmap() 起始地址是 0×380000000 的一塊內存區域。然后分別以 attr.config 為 -1 和 -2 調用兩次 perf_event_open()。根據前面的計算,它實際上分別增加了 0xFFFFFFFF81F360BC 和 0xFFFFFFFF81F360B8 兩處內存的值,減少了 0x0000000381F360BC 和 0x0000000381F360B8 的值。后面的 for 循環則是找出被減少的內存地址,這樣一來也就可以算出 perf_swevent_enabled[] 數組的地址(System.map 并不總是存在,如果存在而且可讀我們當然可以直接去讀這個值)。

知道這個地址我們就可以操縱內核中某處的32bit的值,把其值加一。正因為如此,作者巧妙地選擇了中斷描述符表——一個16字節描述符的數組,它的地址可以通過 sidt 指令獲取。它其中的描述符結構定義如下:

Offset 	Size 	Description
0 	2 	Offset low bits (0..15)
2 	2 	Selector (Code segment selector)
4 	1 	Zero
5 	1 	Type and Attributes (same as before)
6 	2 	Offset middle bits (16..31)
8 	4 	Offset high bits (32..63)
12 	4 	Zero

這里最有趣的是 offset 為8 的地方,在 x86_64 上面其值為 0xffffffff。作者選擇的中斷描述符是 0×4,所以相對于中斷描述符表它的偏移實際上是 0×48。現在的任務就成了通過 perf_swevent_enabled[] 來計算出該中斷描述符中偏移為8的內存地址,并對其加一!下面的代碼就是做的這個工作:

sheep(-i + (((idt.addr&0xffffffff)-0x80000000)/4) + 16);

i 是我們前面在 for 循環中搜到的 perf_swevent_enabled[] 的一個偏移,idt.addr 是中斷描述符表的絕對內核地址,取其低32位并減去 0×80000000 是為了得到低28位作為偏移,除以4是因為數組是int,最后加的16就是 0×4 中斷描述符中的偏移(4已經除去了),所以最終sheep()里面的參數就是我們想要的偏移,這樣以來內核就替我們把 0×4 中斷描述符中的偏移為 8 的 0xffffffff 加上了1,也就成了0,也就成了用戶空間的地址!所以后面的 int 0×4 其實就會跳轉到用戶空間早已經設置好的代碼!!!

而這段代碼比較生澀,但其意思就是更改當前進程的 uid/gid 為0來提升權限,所以最終取得一個有 root 權限的 shell!整個攻擊大功告成!

注:上面的鏈接可能不能用,exploit 代碼也可以在這里看到:https://gist.github.com/onemouth/5625174

責任編輯:藍雨淚 來源: FreebuF
相關推薦

2010-11-01 13:38:11

2013-08-29 15:24:36

2021-07-21 20:24:29

Linux內核漏洞權限

2016-03-12 21:30:55

2009-09-02 18:33:45

2010-03-05 15:46:05

2010-03-03 14:17:02

Linux內核

2011-09-28 10:25:23

2009-12-07 09:55:12

2017-06-14 14:33:58

2010-07-26 15:37:12

telnet安全漏洞

2021-04-04 22:48:20

Linux網絡安全、漏洞

2009-12-15 17:21:10

BackTrack檢查

2014-06-03 09:23:41

2010-10-27 09:48:10

2009-07-05 11:27:09

2010-03-18 13:14:18

Ubuntu6.06-

2021-09-16 10:34:01

微軟漏洞RCE

2021-05-12 10:46:23

漏洞BINDDNS服務器

2020-10-09 09:52:00

漏洞分析
點贊
收藏

51CTO技術棧公眾號

国产美女视频免费| 亚洲精品自拍视频| 亚洲制服欧美久久| 亚洲综合视频在线播放| 免费电影一区二区三区| 欧美网站大全在线观看| 制服诱惑一区| jizz中国少妇| 日韩网站在线| 国产亚洲美女精品久久久| 男女视频在线看| www久久日com| av在线不卡免费看| 国产精品久久久999| 国产精品嫩草影院俄罗斯| 亚洲午夜免费| 在线观看日韩精品| 日本美女爱爱视频| 亚洲 小说区 图片区 都市| 日本aⅴ免费视频一区二区三区| 久久久99免费视频| 欧美一区二区三区成人精品| 久久毛片亚洲| 一区二区视频在线| 欧美高清视频一区二区三区在线观看| 91麻豆成人精品国产| 影音先锋久久资源网| 中文国产成人精品| av黄色一级片| 国产精选久久| 在线日韩一区二区| 高清欧美精品xxxxx| 青青草视频在线免费观看| 国产美女久久久久| 国产a级全部精品| 激情五月少妇a| blacked蜜桃精品一区| 日韩精品一区二区三区三区免费 | 国产女同无遮挡互慰高潮91| 大香伊人久久| 亚洲日本成人在线观看| 明星裸体视频一区二区| 亚洲精品久久久狠狠狠爱| 视频一区视频二区中文| 国内精品一区二区三区| 手机在线免费看片| 国产成人3p视频免费观看| 亚洲成人网av| 四川一级毛毛片| 51一区二区三区| 欧美日韩国产综合视频在线观看中文 | 四虎国产精品成人免费入口| 日韩一区二区三区高清在线观看| 精品婷婷伊人一区三区三| 日韩在线一级片| 毛片大全在线观看| 一区二区不卡在线播放| 免费观看黄色大片| 日韩黄色影院| 国产欧美日韩中文久久| 免费在线成人av电影| 神马午夜精品95| 另类调教123区| 亚洲精品国精品久久99热一| 欧美成人免费一级人片100| 91传媒理伦片在线观看| 曰本一区二区| 精品视频1区2区| 欧美精品成人网| 中文一区一区三区高中清不卡免费| 亚洲一区二区三区中文字幕 | 中文字幕一区视频| 日韩国产欧美一区| 国产鲁鲁视频在线观看免费| 久久毛片高清国产| 国产综合18久久久久久| 天堂成人在线视频| 本田岬高潮一区二区三区| 91av在线免费观看| 91嫩草视频在线观看| 日韩欧美一级视频| 亚洲久久视频| 青青精品视频播放| 日韩黄色片网站| 免费人成在线不卡| 日韩免费观看在线观看| 波多野结衣黄色网址| 日本成人在线电影网| 国产在线观看不卡| 国产xxxxxx| 懂色av一区二区夜夜嗨| 国产精品国模大尺度私拍| jizz中国少妇| 99re这里都是精品| 欧美一区亚洲二区| 欧美jizzhd69巨大| 一区二区三区av电影 | 欧美体内she精视频在线观看| 欧美国产中文字幕| 日韩伦理在线视频| 在线亚洲伦理| 国产精品丝袜白浆摸在线 | 春色校园综合激情亚洲| 精品久久中文字幕| 亚洲最大成人在线观看| 欧美视频精品全部免费观看| 亚洲第一福利网站| 中文字幕免费视频| 中文字幕免费一区二区| 国内偷自视频区视频综合 | 婷婷激情综合网| 欧美性猛交久久久乱大交小说| 香蕉久久一区| 亚洲精品97久久| 国产在视频线精品视频| 韩国一区二区三区在线观看| 日韩av免费看| aaa级黄色片| 久久综合久色欧美综合狠狠| 一本一生久久a久久精品综合蜜 | a天堂在线资源| 国产九九精品| 国产精品亚洲片夜色在线| 亚洲av永久无码国产精品久久| 99精品偷自拍| 91免费网站视频| 手机在线观看av| 3atv在线一区二区三区| 在线精品一区二区三区| 国产精品久久久久蜜臀| 欧美有码在线观看| 草逼视频免费看| 欧美激情资源网| 日本在线观看不卡| 91美女精品| 在线成人午夜影院| 免费看裸体网站| 免费永久网站黄欧美| 国产日韩精品在线| 国产女人在线视频| 欧美日韩国产页| 亚洲最大视频网| 欧美韩日一区| 国产精品久久久久免费a∨ | 激情伊人五月天久久综合| 国产精品jizz视频| 成人影院www在线观看| 色噜噜夜夜夜综合网| 老熟妇精品一区二区三区| 91精品啪在线观看国产18| 国产精品美女呻吟| 国产高清免费av在线| 欧美日韩国产激情| 污污免费在线观看| 欧美 日韩 国产精品免费观看| 国产精品日日摸夜夜添夜夜av| 色网站在线免费观看| 亚洲国产精品一区二区久久恐怖片| 日韩高清第一页| 日韩成人激情| 国产精品成人品| 国产黄在线观看| 欧美性淫爽ww久久久久无| 亚洲精品乱码久久久久久久久久久久| 在线亚洲精品| 国产精品久久久久久久久婷婷 | 婷婷成人av| 色小说视频一区| 欧美激情一区二区三区免费观看 | 亚洲色图网站| 亚洲a∨日韩av高清在线观看| 免费大片在线观看www| 欧美美女网站色| 最新av电影网站| 麻豆精品精品国产自在97香蕉| 欧美一级爱爱| 欧美v亚洲v综合v国产v仙踪林| 在线精品播放av| 亚洲中文字幕在线观看| 国产精品另类一区| 在线免费黄色网| 91成人看片| 动漫美女被爆操久久久| 变态调教一区二区三区| 日韩av中文字幕在线| 800av免费在线观看| 久久久99免费| 亚洲国产成人va在线观看麻豆| 91精品一区二区三区综合在线爱| 96成人在线视频| 欧美xxxx少妇| 亚洲精品视频二区| 中文字幕+乱码+中文字幕明步| 综合激情成人伊人| 在线免费看v片| 亚洲激情亚洲| 神马影院我不卡午夜| 最新亚洲国产| 孩xxxx性bbbb欧美| 色wwwwww| 欧美四级电影网| 日韩va亚洲va欧美va清高| 东方aⅴ免费观看久久av| 妞干网在线免费视频| 国产精品二区不卡| 国产精品久久久久免费| 国产伦精品一区二区三区视频金莲| 中文字幕亚洲一区| 动漫av一区二区三区| 日本高清视频一区二区| 91久久国产综合| 26uuu久久天堂性欧美| 日本国产一级片| 国产精品日韩| 精品一区二区成人免费视频| 日韩电影不卡一区| 91美女福利视频高清| 欧美人与性动交α欧美精品济南到| 亚洲欧美激情视频| 亚洲精品网站在线| 欧美日韩成人综合天天影院| 日韩欧美国产亚洲| 亚洲日韩欧美一区二区在线| 国产美女免费无遮挡| 国产高清无密码一区二区三区| 欧美精品无码一区二区三区| 日韩中文在线电影| 鲁丝片一区二区三区| 永久免费观看精品视频| 国产97在线视频| 懂色av一区| 久久影院资源网| 国产精品一区二区婷婷| 亚洲国产精品免费| 精品国产伦一区二区三| 欧美网站一区二区| 中文字幕在线看人| 午夜激情综合网| 久久久精品人妻一区二区三区四 | 欧美精品色综合| 日韩精品一区不卡| 亚欧色一区w666天堂| 久久久www成人免费毛片| 成人欧美一区二区三区黑人麻豆| 精品人妻一区二区三区蜜桃视频| a级高清视频欧美日韩| 国产又粗又猛又爽又黄| 国内精品免费在线观看| 特级丰满少妇一级| 日韩av网站免费在线| 国产玉足脚交久久欧美| 亚洲欧美一区在线| 日韩video| 伊人久久大香线| 二级片在线观看| 国产精品久久久久蜜臀| 亚洲午夜在线观看| 成人黄色小视频| 日韩欧美一区二区视频在线播放| 综合国产视频| 欧日韩一区二区三区| 色哟哟精品丝袜一区二区| 国产精品一区二区三区不卡 | 国产成人亚洲综合91| 神马电影网我不卡| 38少妇精品导航| 在线女人免费视频| 欧美专区日韩视频| 婷婷激情一区| 电影网一区二区| 欧美成人午夜激情视频| 欧美性受ⅹ╳╳╳黑人a性爽| 久久久久国产视频| 性欧美freesex顶级少妇| 国产精品国产三级国产专播精品人 | 无码内射中文字幕岛国片| 蜜臀av一区二区在线观看| xxx国产在线观看| 国产成人av影院| 欧美特级黄色录像| 综合在线观看色| 五月天婷婷网站| 欧洲视频一区二区| 国产av无码专区亚洲a∨毛片| 欧美大黄免费观看| 国产精品一区在线看| 精品少妇v888av| 在线成人av观看| 成人欧美一区二区三区黑人| 精品三级av在线导航| 日韩久久在线| 亚洲黄网站黄| 一级黄色大片儿| 337p粉嫩大胆噜噜噜噜噜91av | 午夜不卡av免费| 在线视频欧美亚洲| 精品亚洲一区二区| 性欧美ⅴideo另类hd| 国产精品欧美亚洲777777| youjizz亚洲| 一区二区视频在线观看| 99精品视频网| 国产又粗又猛大又黄又爽| 久久久91精品国产一区二区精品 | 色婷婷综合久久| 午夜久久久久久噜噜噜噜| 中国china体内裑精亚洲片| 精品三级久久| av在线亚洲男人的天堂| 日韩精品水蜜桃| 成年人免费在线播放| 国产老女人精品毛片久久| 国产美女永久免费无遮挡| 黄色一区二区在线| 国产夫妻在线观看| 爽爽爽爽爽爽爽成人免费观看| 在线观看涩涩| 国产青春久久久国产毛片| 91九色精品国产一区二区| 国产免费视频传媒| 久久久久99精品一区| 日本三级视频在线| 欧美va日韩va| 制服丝袜中文字幕在线| 国产精品自拍偷拍视频| 久操精品在线| 欧美女人性生活视频| gogo大胆日本视频一区| 久久久久久久久艹| 日韩三级精品电影久久久| 里番在线观看网站| 国产精品天天狠天天看| 欧美少妇xxxx| 成人免费视频久久| 国产三级精品三级在线专区| av资源免费观看| 精品亚洲精品福利线在观看| 擼擼色在线看观看免费| 久久国产精品一区二区三区| 一区二区自拍| 女人被狂躁c到高潮| 精品国产鲁一鲁一区二区张丽| 欧美熟妇另类久久久久久不卡 | 五月婷婷视频在线| 亚洲精品一区二区三区婷婷月| 2021天堂中文幕一二区在线观| 成人自拍偷拍| 亚洲黄色一区| 草草地址线路①屁屁影院成人| 精品日韩中文字幕| 青青草视频在线观看| 国产精品久久久久久av下载红粉| 国产欧美日韩精品一区二区免费 | 色婷婷久久av| www一区二区三区| 99re6这里有精品热视频| 国产99久久久久| 亚洲国产综合久久| 亚洲精品小视频| 国产精品美女午夜爽爽| 中文网丁香综合网| 国产精品一级二级三级| 日韩美女黄色片| 亚洲美女av网站| 久久69成人| 国产精品视频网站在线观看| 北岛玲一区二区三区四区| 亚洲毛片一区二区三区| xvideos亚洲人网站| 2023国产精华国产精品| 大陆极品少妇内射aaaaa| 久久久综合网站| 亚洲最大成人在线视频| 欧美精品激情在线观看| 亚洲国产国产| 亚洲黄色av片| 午夜视频在线观看一区| 国产小视频免费在线网址| 91中文字幕在线| 亚洲影院在线| 蜜桃av免费在线观看| 精品电影一区二区三区| 欧美va在线观看| 久久这里只有精品18| 国产日韩三级在线| www.av导航| 国产精品白嫩初高中害羞小美女| 亚洲一级淫片| 国产呦小j女精品视频| 欧美性色综合网| 国产美女一区视频| 午夜一区二区三区| 不卡的av电影| 一区二区三区亚洲视频| 91av在线视频观看| 欧美fxxxxxx另类| 欧美一区二区三区粗大| 精品处破学生在线二十三| 欧美视频免费看| 国产l精品国产亚洲区久久|