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

深入分析在ISC BIND服務(wù)器中潛藏了15年的RCE漏洞

安全 漏洞
在本文中,我們將與讀者一道深入分析在ISC BIND服務(wù)器中潛藏了15年的一個(gè)RCE漏洞 。

2020年10月,我們收到了一份針對(duì)ISC BIND服務(wù)器的匿名安全報(bào)告。在這份報(bào)告中發(fā)現(xiàn)的安全問(wèn)題,實(shí)際上基于之前曝出的漏洞CVE-2006-5989,該漏洞影響Apache模塊mod_auth_kerb,并且,它最初也是由匿名研究人員發(fā)現(xiàn)的。ISC BIND服務(wù)器SPNEGO(the Simple and Protected GSSAPI Negotiation Mechanism,SPNEGO)組件內(nèi)共享了含有該漏洞的代碼,但I(xiàn)SC當(dāng)時(shí)并沒(méi)有合并相應(yīng)的安全補(bǔ)丁。15年后,ISC對(duì)BIND中的這個(gè)漏洞進(jìn)行了修復(fù),并為其分配了相應(yīng)的漏洞編號(hào),即CVE-2020-8625。

對(duì)于BIND服務(wù)器來(lái)說(shuō),從9.11到9.16的版本都受到該漏洞的影響。并且,攻擊者可以在無(wú)需身份驗(yàn)證的情況下遠(yuǎn)程觸發(fā)該漏洞,進(jìn)而導(dǎo)致一個(gè)4字節(jié)的堆溢出。這份安全報(bào)告的內(nèi)容符合Targeting Incentive Program的要求,但缺乏獲得全額獎(jiǎng)金所需的完整exploit。不過(guò),這仍然不失為一個(gè)優(yōu)秀的安全報(bào)告,而且這個(gè)漏洞也值得我們深入進(jìn)行研究。

漏洞分析

該漏洞的成因,是位于lib/dns/spnego.c中的函數(shù)der_get_oid()存在堆溢出漏洞。

  1. static int 
  2. der_get_oid(const unsigned char *p, size_t len, oid *data, size_t *size) { 
  3. // ... 
  4. data->components = malloc(len * sizeof(*data->components));   // components == NULL) { 
  5.       return (ENOMEM); 
  6.     } 
  7.     data->components[0] = (*p) / 40;    // components[1] = (*p) % 40; 
  8.     --len;               //  0U; ++n) { 
  9.         unsigned u = 0
  10.   
  11.         do { 
  12.             --len; 
  13.             uu = u * 128 + (*p++ % 128); 
  14.         } while (len > 0U && p[-1] & 0x80); 
  15.         data->components[n] = u;      // <-- (4) 
  16.     } 
  17. // ... 

這個(gè)函數(shù)在(1)處分配一個(gè)數(shù)組緩沖區(qū)。變量len用于跟蹤緩沖區(qū)中剩余的元素?cái)?shù)量。同時(shí),代碼在(2)處對(duì)前2個(gè)元素進(jìn)行了填充處理,但是,它在(3)處只將len減去了1。因此,循環(huán)(4)可以使緩沖區(qū)溢出1個(gè)元素。data->components的類(lèi)型是int,所以,這將導(dǎo)致4字節(jié)的堆溢出。

觸發(fā)機(jī)制

由于該漏洞存在于SPNEGO組件中,因此,必須在BIND中對(duì)TKEY-GSSAPI進(jìn)行相應(yīng)的配置。

  1. # cat /etc/bind/named.conf.options 
  2. options { 
  3.     directory "/var/cache/bind"; 
  4.     tkey-gssapi-keytab "/etc/bind/dns.keytab"; 
  5. }; 
  6.   
  7. # cat /etc/bind/named.conf.local 
  8. zone "example.nil." IN { 
  9.     type master; 
  10.     file "/etc/bind/example.nil.db"; 
  11. }; 

其中,dns.keytab文件位于bin/tests/system/tsiggss/ns1/中,而example.nil.db文件則是由腳本bin/tests/system/tsiggss/setup.sh生成的。

現(xiàn)在,相應(yīng)的測(cè)試環(huán)境已經(jīng)準(zhǔn)備好了。當(dāng)接收到一個(gè)手工請(qǐng)求時(shí),該漏洞就會(huì)被觸發(fā),并產(chǎn)生以下調(diào)用棧:

  1. #0  der_get_oid at spnego.c:841 
  2. #1  decode_oid at spnego.c:1054 
  3. #2  decode_MechType at spnego_asn1.c:213 
  4. #3  decode_MechTypeList at spnego_asn1.c:290 
  5. #4  decode_NegTokenInit at spnego_asn1.c:523 
  6. #5  gss_accept_sec_context_spnego at spnego.c:591 
  7. #6  dst_gssapi_acceptctx at gssapictx.c:729 
  8. #7  process_gsstkey at tkey.c:551 
  9. #8  dns_tkey_processquery at tkey.c:882 
  10. #9  ns_query_start at query.c:11315 
  11. #10 ns__client_request at client.c:2161 
  12. #11 processbuffer at tcpdns.c:227 
  13. #12 dnslisten_readcb at tcpdns.c:294 
  14. #13 read_cb at tcp.c:814 
  15. ... 

漏洞利用

這個(gè)漏洞的可利用性高度依賴(lài)于glibc的版本,而下面的解釋是基于Ubuntu18.04和glibc2.27的,后者支持tcache。

首先,我們要確定這個(gè)溢出漏洞所能控制的內(nèi)容:

  • 在der_get_oid()中分配的易受攻擊的緩沖區(qū)的大小和內(nèi)容是可控的。順便說(shuō)一下,當(dāng)當(dāng)前請(qǐng)求完成后,該緩沖區(qū)將被釋放。
  • decode_MechTypeList()中有一個(gè)while循環(huán),用于重復(fù)執(zhí)行der_get_oid()函數(shù),并且循環(huán)次數(shù)也是可控的。

有了這兩點(diǎn),我們就可以輕松地操縱堆了。為了準(zhǔn)備堆,我們可以耗盡任意大小的tcache bins,并在請(qǐng)求完成后重新對(duì)其進(jìn)行填充。同時(shí),重新填充的分塊(chunk)在內(nèi)存中可以是連續(xù)的。這使得內(nèi)存布局相當(dāng)有利于通過(guò)緩沖區(qū)溢出發(fā)動(dòng)攻擊。

實(shí)現(xiàn)任意寫(xiě)原語(yǔ)

在這個(gè)階段,通過(guò)濫用tcache空閑列表可輕松實(shí)現(xiàn)任意寫(xiě)原語(yǔ)。

觸發(fā)一個(gè)4字節(jié)的溢出來(lái)擴(kuò)展下一個(gè)空閑的chunk大小。

在下一個(gè)請(qǐng)求中,在受損的chunk中分配內(nèi)存空間。當(dāng)請(qǐng)求結(jié)束時(shí),它將被移動(dòng)到新的tcache bin中。

用新的大小再次分配受損的chunk。這時(shí),受損的chunk將與下一個(gè)空閑的chunk發(fā)生重疊,然后,用一個(gè)任意的值覆蓋其freelist。

從“中毒的”tcache freelist上分配內(nèi)存空間。它將返回一個(gè)任意地址。

泄漏內(nèi)存地址

默認(rèn)情況下,會(huì)為BIND啟用所有Linux緩解措施。因此,我們首先要搞定ASLR,這意味著我們需要找到一種從內(nèi)存中泄漏地址的方法。一個(gè)可能實(shí)現(xiàn)內(nèi)存泄漏的機(jī)會(huì),是利用code_NegTokenArg()函數(shù)。該函數(shù)用于將響應(yīng)消息編碼到一個(gè)緩沖區(qū)中,并將其發(fā)送給客戶(hù)端。

  1. static OM_uint32 
  2. code_NegTokenArg(OM_uint32 *minor_status, const NegTokenResp *resp, 
  3.                  unsigned char **outbuf, size_t *outbuf_size) { 
  4. // ... 
  5.     buf_size = 1024
  6.     buf = malloc(buf_size);    // <-- (5) 
  7. //... 
  8.     do { 
  9.         ret = encode_NegTokenResp(buf + buf_size - 1, buf_size, resp, 
  10.                                   &buf_len); 
  11. // ... 
  12.     } while (ret == ASN1_OVERFLOW); 
  13.   
  14.     *outbuf = malloc(buf_len);    // <-- (6) 
  15.     if (*outbuf == NULL) { 
  16.         *minor_status = ENOMEM
  17.         free(buf); 
  18.         return (GSS_S_FAILURE); 
  19.     } 
  20.     memmove(*outbuf, buf + buf_size - buf_len, buf_len); 
  21.     *outbuf_size = buf_len
  22.   
  23.     free(buf);       // <-- (7) 
  24.   
  25.     return (GSS_S_COMPLETE); 

位于(5)處的buf是一個(gè)臨時(shí)緩沖區(qū),它的初始大小是1024字節(jié),正好在tcache處理的范圍內(nèi)。而(6)處的outbuf是將被發(fā)送到客戶(hù)端的緩沖區(qū),其大小也在tcache的范圍內(nèi)。如果可以對(duì)這兩個(gè)緩沖區(qū)的大小進(jìn)行tcache dup攻擊,那么,在(5)和(6)處的兩次malloc()調(diào)用將返回相同的地址。在執(zhí)行(7)處的free()函數(shù)之后,一個(gè)tcache->next指針將被更新到buf中,但是,這時(shí)它已經(jīng)和outbuf重疊在一起了。這意味著堆指針將泄露給客戶(hù)端。

理想情況下,位于(6)處的buf_len應(yīng)該選擇得足夠大,以避免干擾較小的tcache bins。不幸的是,最大值似乎只有96個(gè)字節(jié)。由于這個(gè)問(wèn)題,進(jìn)程根本無(wú)法存活,并在客戶(hù)端得到泄漏的堆指針后不久就會(huì)崩潰。因此,我們需要進(jìn)行更深入的研究,以便來(lái)找到一種可以充分利用該漏洞的方法。

漏洞的修復(fù)

在BIND 9.16.12和BIND 9.11.28中,已經(jīng)修復(fù)了該漏洞。為了修復(fù)BIND 9.16,ISC完全放棄了SPNEGO的使用。在BIND 9.11中,他們針對(duì)原始問(wèn)題應(yīng)用了補(bǔ)丁程序。

小結(jié)

這個(gè)安全漏洞表明,即使軟件是開(kāi)源的,并且得到了廣泛使用,漏洞也會(huì)存在多年而難以被發(fā)現(xiàn)。軟件維護(hù)人員需要密切監(jiān)視他們使用的所有外部模塊,以確保應(yīng)用了最新的安全補(bǔ)丁。同時(shí),該漏洞也表明這是一個(gè)非常棘手的挑戰(zhàn)。ISC BIND是Internet上最流行的DNS服務(wù)器,所以,該漏洞的影響范圍相當(dāng)大,特別是該漏洞可以在遠(yuǎn)程且無(wú)需身份驗(yàn)證的情況下觸發(fā)。我們建議大家盡快更新相應(yīng)的DNS服務(wù)器。

本文翻譯自:https://www.thezdi.com/blog/2021/2/24/cve-2020-8625-a-fifteen-year-old-rce-bug-returns-in-isc-bind-server

 

 

責(zé)任編輯:趙寧寧 來(lái)源: 嘶吼網(wǎng)
相關(guān)推薦

2020-09-30 10:11:34

漏洞

2011-11-29 12:10:57

2010-05-10 14:10:34

Unix服務(wù)器

2009-12-28 15:50:23

AnyMedia接入系

2009-11-23 17:56:45

業(yè)務(wù)路由器

2010-05-06 14:22:12

流媒體服務(wù)器負(fù)載均衡

2017-09-28 10:12:51

2010-11-26 13:10:17

2021-03-18 10:56:59

SpringMVC參數(shù)解析器

2010-09-07 14:21:22

PPPoE協(xié)議

2022-04-12 08:30:45

TomcatWeb 應(yīng)用Servlet

2011-03-23 11:01:55

LAMP 架構(gòu)

2017-01-15 22:51:16

2009-12-23 09:06:34

網(wǎng)吧路由器

2024-11-21 14:59:47

2022-04-26 16:52:59

漏洞網(wǎng)絡(luò)攻擊者谷歌

2020-12-07 06:23:48

Java內(nèi)存

2014-10-30 15:08:21

快速排序編程算法

2017-02-08 08:46:39

瀏覽器服務(wù)端亂碼

2009-11-30 14:15:17

Cisco路由器配置實(shí)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

国产视频精选在线| 精品午夜福利视频| 久久91视频| 国产精品福利一区| 成人av资源网| 日韩精品成人免费观看视频| 久久国产亚洲| 精品久久久久久久一区二区蜜臀| 久久久一本二本三本| 国产对白叫床清晰在线播放| 国产精品一区二区在线播放 | 野外性满足hd| 欧美一区二区三区婷婷| 亚洲一区二区三区国产| 免费中文日韩| 性欧美videos另类hd| 免费亚洲网站| 色综合色综合网色综合| 欧美人妻一区二区三区| 99a精品视频在线观看| 亚洲成人一二三| 亚洲一区二区三区色| 欧美一级特黄aaaaaa大片在线观看| 老司机亚洲精品| 欧美激情xxxxx| 最新日韩免费视频| 日韩aaa久久蜜桃av| 91精品国产91久久久久久最新毛片| 午夜精品久久久久久久无码| h片在线播放| 国产亚洲欧美日韩日本| 国产精品jizz视频| 97人妻精品一区二区三区动漫| 国产欧美成人| 久久久久久久久久久av| 精品自拍偷拍视频| 成人羞羞网站入口| 亚洲美女自拍视频| 国模私拍在线观看| 日韩免费一级| 欧美一区二区三区婷婷月色| 91n.com在线观看| 午夜伦理福利在线| 婷婷成人综合网| 激情五月六月婷婷| 在线网址91| 亚洲欧美日韩中文字幕一区二区三区| 日韩av电影免费观看| 天天综合网天天综合| 国产91精品一区二区麻豆网站 | 成人午夜精品视频| 国产一区二区三区的电影| 午夜免费在线观看精品视频| 久久久久久久中文字幕| 综合久久一区| 久久天天躁狠狠躁夜夜av| 少妇视频在线播放| 久久大综合网| 精品国产一区二区三区在线观看| 99久久精品免费视频| 国产探花在线精品一区二区| 精品五月天久久| 51调教丨国产调教视频| 丝袜美腿综合| 亚洲欧洲在线免费| 五月婷婷欧美激情| 日韩中文在线电影| 不卡av在线播放| 午夜激情视频在线播放| 亚洲色图欧美| 久久久久久久久久av| 国产 欧美 日韩 在线| 免费欧美日韩| 国产精品一区二区电影| 国产一区二区三区成人| 国产在线播放一区| 国产精品国色综合久久| 手机看片1024国产| 久久久久国产精品人| 五月天国产一区| 黄色免费在线网站| 亚洲韩国一区二区三区| 欧美极品欧美精品欧美| 国产成人免费9x9x人网站视频| 在线精品视频免费观看| 亚洲无在线观看| 国产精品2023| 在线观看精品国产视频| 欧美精品乱码视频一二专区| av成人天堂| 国产精品丝袜白浆摸在线 | 亚洲精品suv精品一区二区| 最近中文字幕无免费| 精品国内自产拍在线观看视频 | 精品国产亚洲在线| 欧美亚一区二区三区| 成人网18免费网站| 欧美极品少妇与黑人| yjizz国产| 激情偷乱视频一区二区三区| 国产在线精品一区二区中文| 91社区在线| 性做久久久久久久免费看| 少妇黄色一级片| 成人三级av在线| 伊人青青综合网站| 九九九在线视频| 日韩在线a电影| 97自拍视频| 懂色av中文在线| 性欧美疯狂xxxxbbbb| 17c国产在线| 要久久爱电视剧全集完整观看| 久久久成人的性感天堂| 日本免费精品视频| 国产成人久久精品77777最新版本| 美女精品国产| 人人超在线公开视频| 欧美性大战久久久| 成人性生活免费看| 好吊日精品视频| 国产在线a不卡| 久久手机免费观看| 亚洲成a人在线观看| 手机看片福利日韩| 杨幂一区二区三区免费看视频| 九九视频这里只有精品| 伊人网视频在线| 久久久久久免费毛片精品| 国产成人在线小视频| 亚洲日本免费电影| 国产一区二区三区直播精品电影 | 国产日韩一区二区三区在线| 91国产丝袜在线放| 黄色的网站在线观看| 欧美系列日韩一区| 五月天综合视频| 久久成人在线| 美国av一区二区三区| 久久男人天堂| 亚洲精品99久久久久中文字幕| 欧美激情一区二区视频| 国产精品1区二区.| 国产91视频一区| 成人动漫视频在线观看| 色av吧综合网| 一级片视频播放| 国产精品色哟哟| 99sesese| 99热精品久久| 成人免费直播live| 麻豆传媒免费在线观看| 欧美日韩高清在线| 特级西西人体高清大胆| 毛片av中文字幕一区二区| 亚洲天堂电影网| 日韩成人综合网站| 另类色图亚洲色图| 性欧美videos另类hd| 一区二区成人在线| 美女露出粉嫩尿囗让男人桶| 国内激情久久| 精品视频一区二区三区四区| 国产激情在线播放| 亚洲美女av电影| 波多野结衣午夜| 国产精品欧美久久久久无广告| 亚洲一级片网站| 香蕉久久网站| 国产精品国产精品国产专区蜜臀ah | 特大黑人娇小亚洲女mp4| 日韩欧美中文在线观看| 久久人人爽人人| 日本ー区在线视频| 欧美在线观看一区| 极品色av影院| 国产91精品一区二区麻豆亚洲| 久久精品国产sm调教网站演员| 日韩欧美ww| 国产精品久久77777| 嫩草在线视频| 欧美精品一区二区三区蜜臀| 中文字幕精品无码一区二区| 亚洲国产精品黑人久久久| 亚洲综合激情视频| 亚洲成人原创| 日韩一区二区三区资源| 大胆国模一区二区三区| 午夜精品福利在线观看| jyzzz在线观看视频| 欧美一级日韩免费不卡| 国产精品久免费的黄网站| 国产精品国产三级国产普通话蜜臀 | 精品国一区二区三区| 麻豆成人免费视频| 自拍偷自拍亚洲精品播放| 亚洲精品激情视频| 日本美女一区二区三区| 亚洲爆乳无码精品aaa片蜜桃| 麻豆国产欧美一区二区三区r| 日韩免费不卡av| 黄色网址在线免费| 亚洲欧美日本精品| 国产手机视频在线| 色悠悠亚洲一区二区| 乱h高h女3p含苞待放| 91色综合久久久久婷婷| 亚洲黄色片免费| 久久久久久亚洲精品杨幂换脸| 黄色一级视频播放| 久久99精品久久久久久园产越南| 亚洲一区二区三区久久| 日韩精品三区| 国内精品美女av在线播放| 成人亚洲综合天堂| 亚洲成人久久久久| 亚洲天堂手机版| 欧美性xxxxxxxxx| 久久久91视频| 中文字幕亚洲区| 精品成人av一区二区三区| 粉嫩aⅴ一区二区三区四区五区| 色婷婷狠狠18| 美女国产一区| 青青草视频在线免费播放| 亚洲老妇激情| 亚洲一区二区三区四区中文| 日韩伦理一区二区三区| 国产精品青青草| 国产亚洲高清在线观看| 国产精品嫩草影院一区二区| 英国三级经典在线观看| 欧美激情精品在线| 影音先锋男人资源在线| 日韩在线观看免费高清| 97人人在线| 亚洲欧洲激情在线| 视频国产一区二区三区| 精品粉嫩超白一线天av| 国产免费黄色片| 欧美日本视频在线| 伊人久久亚洲综合| 欧美美女一区二区三区| 最新在线中文字幕| 在线观看亚洲a| 在线视频一区二区三区四区| 精品久久久久久久久久ntr影视| 国产精品18p| 亚洲国产精品一区二区尤物区| 免费又黄又爽又色的视频| 亚洲免费资源在线播放| 午夜爱爱毛片xxxx视频免费看| 中文字幕在线一区| 极品色av影院| 樱花草国产18久久久久| 久久久久成人精品无码| 亚洲午夜久久久| 五月婷婷激情网| 欧美午夜影院在线视频| 黄色在线免费观看| 欧美性生活大片视频| 国产又粗又猛又爽| 日韩三级av在线播放| 黑人精品一区二区| 亚洲精品国产精品乱码不99按摩 | 91香蕉视频在线| 西西444www无码大胆| 中文字幕欧美激情一区| 久久精品亚洲a| 亚洲一级二级在线| www.国产高清| 欧美在线观看一区二区| 国产特黄一级片| 亚洲成人a级网| 国产视频网站在线| 麻豆成人在线看| 欧美a级在线观看| 国产精品日韩在线一区| 只有精品亚洲| 国产精品久久精品国产 | 国产成年人在线观看| 国产一区日韩一区| 欧美黄色一级片视频| 久久精品国产秦先生| 白丝校花扒腿让我c| 久久久久久免费网| 欧美日韩精品在线观看视频| 午夜欧美在线一二页| 进去里视频在线观看| 日韩美女主播在线视频一区二区三区| 香蕉视频911| www.久久色.com| 国产在线美女| 成人网址在线观看| 香蕉精品久久| 桥本有菜av在线| 国产精品夜夜夜| 日韩精品视频网址| 26uuu欧美| 欧美日韩中文字幕在线观看| 欧美性猛xxx| www.99视频| 中文字幕精品一区二区精品| 国产天堂在线播放视频| 国产精品亚洲视频在线观看| 欧美人妖在线观看| 天天操天天干天天玩| 日韩精品国产精品| 完美搭档在线观看| 亚洲老司机在线| 中文字幕在线观看精品| 亚洲第一中文字幕| 国产激情在线观看| 国产精品户外野外| 三级小说欧洲区亚洲区| 99久久99久久精品| 久草中文综合在线| 免费一级黄色录像| 天天色天天操综合| 亚洲精品成人区在线观看| x99av成人免费| 78精品国产综合久久香蕉| 九色一区二区| 午夜精品偷拍| 久久精品亚洲天堂| 中文一区二区在线观看| 男人天堂2024| 国产网站欧美日韩免费精品在线观看 | 久久午夜免费视频| 欧美tk—视频vk| 大片免费在线看视频| 国产精品一区二区久久久| 欧美女王vk| 成年网站在线免费观看| 成人18视频在线播放| 九九九久久久久| 欧美一级夜夜爽| 91在线中文| 91精品中文在线| 99久久99视频只有精品| 亚洲国产高清av| 国产精品嫩草99a| 青青艹在线观看| 亚洲欧美制服丝袜| 欧美专区福利免费| 日韩av在线电影观看| 日韩在线播放一区二区| 免费黄色片网站| 欧美性xxxxxx少妇| 日本三级在线播放完整版| 国产美女直播视频一区| 三上亚洲一区二区| 日本高清一区二区视频| 亚洲欧美日韩中文播放| 午夜免费福利视频| 久久免费视频网站| 欧美三级午夜理伦三级小说| 日日碰狠狠添天天爽超碰97| 91色在线porny| 中文字幕永久在线观看| 日韩亚洲国产中文字幕| 久久久国产精品入口麻豆 | 久久成人精品| 色噜噜噜噜噜噜| 91麻豆精品国产91久久久使用方法| 黄色av电影在线观看| 成人欧美视频在线| 国产精品综合| 国产成人免费观看网站| 欧美精品一级二级| 激情在线视频播放| 麻豆av一区二区三区| 美腿丝袜亚洲三区| 印度午夜性春猛xxx交| 亚洲国产三级网| 欧洲一级精品| 麻豆映画在线观看| 99久久亚洲一区二区三区青草| 精产国品一区二区| 色偷偷噜噜噜亚洲男人| 9l视频自拍九色9l视频成人| 日韩在线综合网| 国产精品国产三级国产普通话三级| www.国产视频| 日本成人黄色片| 亚洲二区三区不卡| 久久人人妻人人人人妻性色av| 欧美在线小视频| 成人三级小说| 日韩一区二区三区高清| 国产.欧美.日韩| 亚洲精品国产精品乱码视色| 美女国内精品自产拍在线播放| 久久99精品国产自在现线| 手机在线看福利| 亚洲一区二区三区四区在线观看| 噜噜噜噜噜在线视频| 91精品久久久久久蜜桃| 久久中文欧美| 豆国产97在线 | 亚洲|