韩剧1988免费观看全集_久久影视三级福利片_亚洲视频在线观看免费_在线观看欧美日韩_国产亚洲激情在线_亚洲精品美女久久久_欧美国产日韩一区二区在线观看_91在线观看免费高清完整版在线观看_日韩av免费看_国产又爽又黄的激情精品视频_琪琪亚洲精品午夜在线_欧美性猛xxx_不卡毛片在线看_国产亚洲日本欧美韩国_91国内在线视频_精品国产福利视频

當(dāng)前位置:蘿卜系統(tǒng) > 網(wǎng)絡(luò)技術(shù)教程 > 詳細(xì)頁面

安全編程: 避開競爭條件(1)

安全編程: 避開競爭條件(1)

更新時(shí)間:2021-10-03 文章作者:未知 信息來源:網(wǎng)絡(luò) 閱讀次數(shù):

網(wǎng)絡(luò)技術(shù)是從1990年代中期發(fā)展起來的新技術(shù),它把互聯(lián)網(wǎng)上分散的資源融為有機(jī)整體,實(shí)現(xiàn)資源的全面共享和有機(jī)協(xié)作,使人們能夠透明地使用資源的整體能力并按需獲取信息。資源包括高性能計(jì)算機(jī)、存儲資源、數(shù)據(jù)資源、信息資源、知識資源、專家資源、大型數(shù)據(jù)庫、網(wǎng)絡(luò)、傳感器等。 當(dāng)前的互聯(lián)網(wǎng)只限于信息共享,網(wǎng)絡(luò)則被認(rèn)為是互聯(lián)網(wǎng)發(fā)展的第三階段。
了解什么是競爭條件,以及它們?yōu)槭裁磿?huì)引發(fā)安全問題。本文向您展示了如何在類 UNIX® (Unix-like)系統(tǒng)中處理常見的競爭條件,包括如何正確地創(chuàng)建鎖文件、鎖文件的替代者,如何處理文件系統(tǒng),以及如何處理共享目錄(特別是如何在 /tmp 目錄下正確創(chuàng)建臨時(shí)目錄)。需要您對信號處理稍有了解。

  通過一個(gè)偷竊而來的口令,Mallory 成功地登錄到一臺運(yùn)行 Linux 的重要服務(wù)器。其帳號是一個(gè)非常受限的帳號,但是 Mallory 知道如何使用它來制造麻煩。Mallory 安裝并運(yùn)行了一個(gè)行為非常奇怪的小程序,該程序使用多個(gè)進(jìn)程在 /tmp 目錄下快速地創(chuàng)建和刪除很多不同的符號鏈接文件。(符號鏈接文件也稱為 symlink,是一種簡單的文件,當(dāng)被訪問時(shí),它會(huì)將請求重定向到另一個(gè)文件。)Mallory 的程序不停地創(chuàng)建和刪除很多指向同一特殊文件(/etc/passwd,口令文件)的不同符號鏈接文件。

  這臺重要的服務(wù)器的安全措施之一是,它每天都運(yùn)行 Tripwire —— 具體地說,是較老的 2.3.0 版本。Tripwire 是一個(gè)檢測重要文件是否被篡改的安全程序。與很多程序一樣,Tripwire 啟動(dòng)時(shí)會(huì)嘗試著創(chuàng)建一個(gè)臨時(shí)文件。Tripwire 會(huì)查看并斷定不存在名為“/tmp/twtempa19212”的文件,所以看起來這是一個(gè)合適的臨時(shí)文件名稱。但是在 Tripwire 完成檢查后,Mallory 的程序就會(huì)使用該名稱創(chuàng)建一個(gè)符號鏈接文件。這不是偶然的;Mallory 程序的設(shè)計(jì)目標(biāo)就是創(chuàng)建最有可能為 Tripwire 所使用的文件名。然后 Tripwire 就會(huì)打開該文件,開始寫入臨時(shí)信息,但不用創(chuàng)建新的空文件,Tripwire 現(xiàn)在正在重寫口令文件!從那時(shí)起,任何人 —— 甚至是管理員 —— 都不能登錄到該系統(tǒng),因?yàn)榭诹钗募呀?jīng)被破壞了。更糟的是,Mallory 的攻擊完全可以覆蓋所有文件,包括服務(wù)器上存儲的重要數(shù)據(jù)。


競爭條件簡介

  這是個(gè)假想的故事;“Mallory”是攻擊者的一個(gè)慣用名。但是這類攻擊,以及它所利用的缺陷,都極其常見。問題是很多程序都容易受到名為“競爭條件”的安全問題的影響。

  當(dāng)由于事件次序異常而造成對同一資源的競爭,從而導(dǎo)致程序無法正常運(yùn)行時(shí),就會(huì)出現(xiàn)“競爭條件”。注意,競爭條件無需介入同一程序的兩個(gè)部分之間的競爭;如果一個(gè)外部的攻擊者可以通過意想不到的方式干擾程序,那么就會(huì)出現(xiàn)很多安全問題。例如,如果 Tripwire 2.3.0 確定某個(gè)文件不存在,它就會(huì)嘗試著創(chuàng)建該文件,而不去考慮在進(jìn)行這兩個(gè)步驟期間,該文件是否已經(jīng)被攻擊者創(chuàng)建。幾十年前,競爭條件還不是什么問題;那時(shí),計(jì)算機(jī)系統(tǒng)通常在同一時(shí)刻只能運(yùn)行一個(gè)單獨(dú)的程序,什么都不能打斷它或者與它競爭。但是,當(dāng)今的計(jì)算機(jī)通常需要同時(shí)運(yùn)行大量的進(jìn)程和線程,經(jīng)常還會(huì)有多個(gè)處理器確實(shí)在同時(shí)運(yùn)行不同的程序。這樣做更靈活,但是有一個(gè)危險(xiǎn):如果這些進(jìn)程和線程共享了所有的資源,那么它們都可能互相影響。實(shí)際上,競爭條件缺陷是軟件的更常見缺陷之一,此外,在類 Unix 系統(tǒng)上,/tmp 和 /var/tmp 目錄經(jīng)常會(huì)被錯(cuò)誤地使用,從而導(dǎo)致競爭條件。

  不過,我們首先需要了解一些術(shù)語。所有 類-Unix 系統(tǒng)都支持用戶進(jìn)程;每個(gè)進(jìn)程都有自己的內(nèi)存空間(其他進(jìn)程通常無法訪問)。底層的內(nèi)核會(huì)盡量使進(jìn)程看起來像是在同時(shí)運(yùn)行;在多處理器的系統(tǒng)中,它們確實(shí)可以同時(shí)運(yùn)行。從理論上講,一個(gè)進(jìn)程可以擁有一個(gè)或多個(gè)線程;這些線程可以共享內(nèi)存。線程也可以同時(shí)運(yùn)行。由于線程可以共享內(nèi)存,所以,相對于進(jìn)程,線程之間更有可能產(chǎn)生競爭條件;正是由于這個(gè)原因,多線程程序的調(diào)試要困難得多。Linux 內(nèi)核有一個(gè)非常好的基本設(shè)計(jì):只有線程,并且一些線程可以與其他線程共享內(nèi)存(這樣實(shí)現(xiàn)了傳統(tǒng)的線程),而另外一些線程則不能(這樣就實(shí)現(xiàn)了獨(dú)立進(jìn)程)。

  為了理解競爭條件,讓我們首先來看一個(gè)非常普通的 C 聲明:

清單 1. 普通的 C 聲明

b = b + 1;

  看起來非常簡單,不是嗎?但是,讓我們假定有兩個(gè)線程在運(yùn)行這一行代碼,在這里,“b”是一個(gè)由兩個(gè)線程共享的變量,“b”的初始值為“5”。以下是一個(gè)似是而非的執(zhí)行次序:

清單 2. 使用共享的“b”的可能執(zhí)行次序

(thread1) load b into some register in thread 1.
    (thread2) load b into some register in thread 2.
(thread1) add 1 to thread 1's register, computing 6.
    (thread2) add 1 to thread 2's register, computing 6.
(thread1) store the register value (6) to b.
    (thread2) store the register value (6) to b.

  初始值為 5,然后兩個(gè)線程分別加 1,但是最終的結(jié)果是 6... 而不是應(yīng)該得到的 7。問題在于,兩個(gè)線程互相干擾,從而導(dǎo)致產(chǎn)生錯(cuò)誤的最終答案。

  通常,線程不是以原子的方式執(zhí)行的;另一個(gè)線程可以在任何兩個(gè)指令期間打斷它,而且還可以使用一些共享的資源。如果一個(gè)安全程序的線程沒有預(yù)防這些中斷,那么另一個(gè)線程就可以干擾該安全程序的線程。在安全程序中,不管在任何一對指令中間運(yùn)行了多少其他線程的代碼,程序都必須正確地運(yùn)行。關(guān)鍵是,當(dāng)您的程序訪問任意資源時(shí),要確定其他某個(gè)線程是否可能因?yàn)槭褂迷撡Y源對您的程序造成干擾。


解決競爭條件

  競爭條件的典型解決方案是,確保程序在使用某個(gè)資源(比如文件、設(shè)備、對象或者變量)時(shí),擁有自己的專有權(quán)。獲得某個(gè)資源的專有權(quán)的過程稱為加鎖。鎖不太容易處理。死鎖(“抱死,deadly embrace”)是常見的問題,在這種情形下,程序會(huì)因等待對方釋放被加鎖的資源而無法繼續(xù)運(yùn)行。要求所有線程都必須按照相同的順序(比如,按字母排序,或者從“l(fā)argest grain”到“smallest grain”的順序)獲得鎖,這樣可以避免大部分死鎖。另一個(gè)常見問題是活鎖(livelock),在這種情況下,程序至少成功地獲得和釋放了一個(gè)鎖,但是以這種方式無法將程序再繼續(xù)運(yùn)行下去。如果一個(gè)鎖被掛起,順利地釋放它會(huì)很難。簡言之,編譯在任何情況下都可以按需要正確地加鎖和釋放的程序通常很困難。

  有時(shí),可以一次執(zhí)行一個(gè)單獨(dú)操作來完成一些特殊的操作,從而使您不需要顯式地對某個(gè)資源進(jìn)行加鎖而后再解鎖。這類操作稱為“原子”操作,只要能夠使用這類操作,它們通常是最好的解決方案。

  有一些錯(cuò)誤是如此常見,所以,為了避免犯這些錯(cuò)誤,您需要了解它們。一個(gè)問題是,以不總是鎖定某資源的方式創(chuàng)建鎖文件;您應(yīng)該學(xué)習(xí)如何正確創(chuàng)建它們,或者轉(zhuǎn)而采取不同的加鎖機(jī)制。您還需要正確地處理文件系統(tǒng)中的競爭,其中包括如何處理永遠(yuǎn)危險(xiǎn)的共享目錄 /tmp 和 /var/tmp,以及如何安全地使用信號。下一章中將描述如何安全使用它們。


網(wǎng)絡(luò)的神奇作用吸引著越來越多的用戶加入其中,正因如此,網(wǎng)絡(luò)的承受能力也面臨著越來越嚴(yán)峻的考驗(yàn)―從硬件上、軟件上、所用標(biāo)準(zhǔn)上......,各項(xiàng)技術(shù)都需要適時(shí)應(yīng)勢,對應(yīng)發(fā)展,這正是網(wǎng)絡(luò)迅速走向進(jìn)步的催化劑。

溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統(tǒng)下載排行

網(wǎng)站地圖xml | 網(wǎng)站地圖html
亚洲国产精品推荐| 麻豆国产va免费精品高清在线| 亚洲精品一区二区三区香蕉| 中文字幕在线看视频国产欧美在线看完整| 久久亚洲精品石原莉奈| 亚洲卡一卡二卡三| 欧美日韩国产欧| 欧美午夜精品久久久久久浪潮| 麻豆成人91精品二区三区| 精品国产一区探花在线观看| 91日韩免费| 波多野结衣电影在线播放| 久久精品99久久无色码中文字幕| 国产精品va在线| 久久综合久久鬼色| a级片在线观看视频| 精品处破学生在线二十三| 国产精品一区二区三区久久| 国产激情一区二区三区| 国产成人免费9x9x人网站视频| 久久久久久久久久久久久久| 日韩美女久久久| 日韩一区精品视频| 中文日韩在线观看| 天堂www在线а√天堂| 波多野结衣一区| 久久人人爽爽人人爽人人片av| www.亚洲男人天堂| 蜜桃av.com| 91午夜交换视频| 国产女同91疯狂高潮互磨| 国产在线第二页| 国产成人精品免费视频| 三级精品视频| 91久久夜色精品国产网站| 日韩有码中文字幕在线| 精品成人免费| 黄色片中文字幕| 日韩中文字幕视频在线观看| 日日摸夜夜添夜夜添国产精品| 国产精品果冻传媒潘| 亚洲精品美女在线观看播放| 国内免费久久久久久久久久久| 在线亚洲观看| 宅男一区二区三区| www 久久久| 欧美黑人巨大xxxx猛交| 国产无遮挡一区二区三区毛片日本| 欧美视频精品全部免费观看| 中文字幕在线视频一区二区| 你懂的视频网| 黄色片一区二区三区| 国产精品日韩欧美大师| 亚洲第一福利社区| 99久久久久免费精品国产| 日韩欧美不卡在线观看视频| 日韩欧美专区| 加勒比av中文字幕| 欧美黄色录像片| 国产欧美日本在线| 久久天天躁狠狠躁夜夜躁2014| 午夜私人影院久久久久| 日韩精品成人一区| 欧美精品七区| 精品免费国产一区二区| 自拍在线播放| 欧美黄色一级视频| 久久99精品视频一区97| 日本精品视频一区二区| aaa级黄色片| 亚洲制服丝袜在线播放| 久久综合电影| 成人欧美一区二区三区黑人麻豆| 中文字幕国产亚洲| 国模吧视频一区| 日本55丰满熟妇厨房伦| 99国产在线视频| 日本一区二区视频在线播放| 色一色在线观看视频网站| 51ⅴ精品国产91久久久久久| 欧美一激情一区二区三区| 又粗又大的机巴好爽欧美| 激情小说欧美色图| 91精品久久久久久久久99蜜臂| 大胆高清日本a视频| 懂色av一区二区三区在线播放| 国产欧美一区二区精品久久久| 国产精品一区电影| 日韩精品无码一区二区三区| 久久综合九色综合97婷婷| 国产精品综合av一区二区国产馆| 色视频一区二区三区| 国产一区二区三区四区五区3d| 国产丝袜在线| 亚洲一区二区在线播放| 秋霞影院午夜丰满少妇在线视频| 91精品视频播放| 欧美爱爱免费视频| 国产在线你懂得| 日韩精品三级| 国产精品二三区| 极品粉嫩美女露脸啪啪| 最近免费中文字幕在线第一页| 日本在线视频1区| 久久久久无码国产精品| 91精品国产美女浴室洗澡无遮挡| 亚洲日本理论电影| chinese少妇国语对白| 日韩成人av网址| 在线观看日韩高清av| 免费看h片网站| 国产亚洲欧美一区在线观看| 91国产精品视频在线观看| 亚洲精品精品一区| 在线观看日韩精品视频| 99久久夜色精品国产网站| 国产精品 欧美 日韩| 欧美偷拍视频| 国产高潮av| 999久久久精品国产| 精品欠久久久中文字幕加勒比| 污网站免费在线| 国内自拍视频一区二区三区| 99视频热这里只有精品免费| 免费看av在线| 欧美99在线视频观看| 久久影视精品| 久久嫩草捆绑紧缚| 亚洲中国色老太| 久久久久久久久毛片| 日本中文字幕精品—区二区| free性护士videos欧美| 久草一本av| 欧洲精品码一区二区三区免费看| 亚洲国产精品高清久久久| 国产又大又粗又硬| 亚洲一区二区三区高清| 国产精品欧美风情| 日b视频在线观看| 国产午夜性春猛交ⅹxxx| 免费成人看片网址| 国产美女视频黄a视频免费| 国产99999| 亚洲一级片免费看| 热久久最新地址| 国产麻豆午夜三级精品| 亚洲精品国产片| 少妇真人直播免费视频| 国产一区二区三区四区五区传媒| 国产经典欧美精品| 亚洲激情自拍偷拍| 熟妇人妻无乱码中文字幕真矢织江| 亚洲欧美中文日韩v在线观看| 欧美成人免费在线观看视频| 亚洲欧美卡通动漫| 黑人巨大精品欧美一区免费视频| 在线免费观看日韩欧美| 亚洲资源在线看| 成年人在线观看视频免费| 亚洲一二三在线| 天堂网在线最新版www中文网| 老司机午夜精品视频在线观看| 欧美aaaaaa午夜精品| 福利在线视频导航| 日本激情视频在线观看| 伊人情人综合网| 欧美日韩一区二区三区四区五区| 亚洲小说春色综合另类网蜜桃| 午夜精品一二三区| 婷婷色一区二区三区| 亚洲国产日韩欧美一区二区三区| 黄色三级免费电影| 美女的诞生在线观看高清免费完整版中文| 黄色精品在线看| 成人免费淫片在线费观看| 亚洲xxxx天美| 在线播放毛片| 3344国产精品免费看| 在线免费av网址| 国产二区在线播放| 国产视频二区三区| 精品网站aaa| 国产乱人伦精品一区二区在线观看| 神马午夜电影一区二区三区在线观看| 亚洲成a人片77777在线播放| 怡红院一区二区| jizzjizz国产精品喷水| 国产精品一区二区不卡| 欧美精品二区三区| 亚洲福利在线播放| 天堂网成人在线| 天天躁夜夜躁狠狠是什么心态| 91精品久久久久久久久久久久久| 亚洲精品美女| 成人蜜臀av电影| 国产精品久久久久国产a级| 亚洲国产精品美女| 色综合久久88色综合天天免费| 一区二区久久| 国产综合色精品一区二区三区| 在线天堂av| 色婷婷av一区二区三区丝袜美腿| 美女视频黄频大全不卡视频在线播放| 日本成人福利| 国产午夜大地久久| 精品1区2区| 日韩成人高清视频| 免费在线成人av| 久久97久久97精品免视看| 色www免费视频| 成人福利在线视频| 国产视频每日更新| 影音先锋成人在线电影| 蜜臀av性久久久久av蜜臀妖精| 日韩精品一区三区| 亚洲成人在线| 欧美日韩国产首页| 亚洲精品国产一区二区三区四区在线| 偷拍国模大尺度视频在线播放| 国内精品偷拍| 久久亚洲国产精品一区二区| 色又黄又爽网站www久久| 成人av网在线| 亚洲美女偷拍久久| 美女日韩欧美| 欧美午夜电影在线播放| 久香视频在线观看| 女女互磨互喷水高潮les呻吟| 久久久国产精品亚洲一区| 国产视频1区2区| 欧美激情福利视频在线观看免费| 国产精品久久久久久久午夜| 九九九免费视频| 国产一区二区三区中文| 日韩欧美电影在线| 国产精品色呦| 国产一区二区剧情av在线| 亚洲毛片在线免费观看| 97精品国产99久久久久久免费| a天堂视频在线观看| 7777精品伊人久久久大香线蕉最新版| 精品少妇一区二区三区日产乱码| 国产一区二区三区四区| 中文字幕第100页| 色一情一乱一伦一区二区三欧美| 国产精品99免费看| 国产精品zjzjzj在线观看| 日韩禁在线播放| 又色又爽又高潮免费视频国产| 日本高清无吗v一区| 国产农村妇女毛片精品久久莱园子| 亚洲大尺度视频| 国产二区国产一区在线观看| 成人精品视频一区二区三区| 久久66热这里只有精品| 一个色免费成人影院| 91精品国产综合久久香蕉的特点| 熟女少妇a性色生活片毛片| 中文一区在线播放| 中文字幕九色91在线| 国产精品精品软件视频| 天堂影院在线| 黄色av观看| 激情一区二区| 中文字幕第7页| 亚洲国产精品久久人人爱蜜臀| 精品日韩视频| 国产欧美日韩视频| 欧日韩在线视频| 亚欧精品一区二区三区| 美女三级99| hitomi一区二区三区精品| 国产对白国语对白| 男女啪啪免费观看| 1024手机在线视频| 超碰av女优在线| 欧美丰满片xxx777| 91l九色lporny| 丰满人妻一区二区三区53号| 国产免费一区二区三区最新不卡| 精品亚洲成a人| 日本一级片免费看| 欧美啪啪一区| av成人黄色| 国产美女裸体无遮挡免费视频| 日韩精品在线免费观看| 一本色道88久久加勒比精品| 中文字幕在线观看成人| 亚洲麻豆视频| 精品午夜久久| 亚洲一区精品在线观看| 日韩精品免费在线播放| 成年人国产精品| 国产三级香港三韩国三级| 日本精品久久久久久| 一区二区三区精品视频在线| 欧美日韩黄色| 中文字幕在线欧美| 国产精品丝袜久久久久久高清| 色999日韩自偷自拍美女| 欧美一区二区三区系列电影| 精品视频一区二区三区四区| 久久国产精品影片| 最新二区三区av| 可以直接在线观看的av| 最近国语视频在线观看免费播放| 国产日韩欧美电影| 欧美精品videossex变态| 欧美日韩国产综合一区二区| 亚洲人成午夜免电影费观看| 91精品国产自产在线丝袜啪| 96久久精品| 最近免费中文字幕mv视频| 国产91精品一区二区麻豆网站| 色一情一乱一区二区| a天堂中文在线官网| 久久久99久久精品欧美| 国产精品美女久久久久久久久久久| 久久色视频免费观看| 91av在线免费播放| 色999国产精品| 欧美绝顶高潮抽搐喷水合集| 成人免费在线视频播放| 成人软件网18免费视频| 亚洲精品91| 中文字幕av一区二区三区人| 亚洲精品麻豆| 国产精品国产三级国产专业不|