Linux內(nèi)核“大臟牛”漏洞來襲+Django 2.0 正式發(fā)布【馬哥教育早報(bào)-156期】
2017年12月04日 星期一
馬哥教育新聞快報(bào)
導(dǎo)讀:Linux內(nèi)核“大臟?!甭┒磥硪u+Django 2.0 正式發(fā)布
每日一句
犀象至龐大,人熊御之;虎豹鷙猛,人能伏之。惟其任智而學(xué)也。
早報(bào)內(nèi)容
0.“臟牛”內(nèi)核漏洞修復(fù)補(bǔ)丁存在缺陷 “大臟?!甭┒磥硪u
Bindecy 研究人員指出,去年在 Linux 系統(tǒng)中發(fā)現(xiàn)的“臟奶?!甭┒矗–VE-2016-5195)并未得到完全修復(fù)。
“臟奶?!甭┒丛醋?Linux 內(nèi)核中的內(nèi)存子系統(tǒng)在處理私有只讀內(nèi)存映射的寫時(shí)拷貝(簡稱 COW,即‘奶?!挠蓙恚r(shí),會(huì)因爭奪而引發(fā)破壞性結(jié)果。漏洞發(fā)現(xiàn)者菲爾·奧斯特(Phil Oester)意識(shí)到,黑客可以使用這個(gè)缺陷來獲得對其它只讀存儲(chǔ)器映射的寫入訪問,從而增加它們在系統(tǒng)上的特權(quán)。
原本的安全漏洞會(huì)影響到 get_user_page 函數(shù),其被用于獲取用戶進(jìn)程內(nèi)虛擬地址之后的物理頁?;旧希?bug 允許攻擊者向只讀權(quán)限頁版本中寫入內(nèi)容。
此項(xiàng)安全漏洞的修復(fù)補(bǔ)丁并不會(huì)降低所請求的權(quán)限。相反,研究人員們解釋稱“get_user_page 如今會(huì)記住我們通過了 COW 循環(huán)的事實(shí)?!?/span>
1.Linux Journal 停止出版
有 23 年歷史的 Linux 期刊 Linux Journal 因資金耗盡宣布停止出版。Linux Journal 是第一個(gè)專注于報(bào)道 Linux 內(nèi)核及其發(fā)行版的雜志,誕生于 1994 年 4 月。它在 2011 年停止發(fā)行印刷版,2017 年 11 月這一期將是數(shù)字版的最后一期。期刊發(fā)行人稱,他們沒錢繼續(xù)出版了,他們沒有富有的母公司,財(cái)力也不雄厚,自始至終都顯得反常。在很長時(shí)間里 Linux Journal 都是貼著地飛行,但上個(gè)月終于摔了下來。發(fā)行人表示希望期刊能得到拯救。Linux Journal 向它的忠實(shí)訂閱者提供了最后一份禮物:所有已出版期刊的存檔。
2.Raspbian 20171129 發(fā)布,基于 Debian 的 Linux 系統(tǒng)
Raspbian 20171129 已發(fā)布,Raspbian 是基于 Debian GNU/Linux 的免費(fèi)操作系統(tǒng),它面向 Raspberry Pi 硬件(armhf 處理器架構(gòu))而做了優(yōu)化。Raspbian 帶有 35000 多個(gè)軟件包或預(yù)編譯軟件,它們按優(yōu)美的格式打包從而便于在 Raspberry Pi 上安裝。
3.Django 2.0 正式發(fā)布,Python 的 Web 框架
Web 框架 Django 已正式發(fā)布 2.0 版本。該版本不再支持 Python 2.x,并添加了一大串新功能。
主要更新包括:
簡化 URL 路由語法 :新的 django.urls.path()允許使用更簡單,更易讀的 URL 路由語法。
對移動(dòng)端友好的 contrib.admin:admin 現(xiàn)在響應(yīng)和支持所有主要的移動(dòng)設(shè)備。
Window expressions:新的 Window expression 允許向查詢集添加 OVER 子句。
4.Apache Tomcat Native 1.2.16 發(fā)布
Apache Tomcat Native 1.2.16 已發(fā)布。Tomcat Native 這個(gè)項(xiàng)目可以讓 Tomcat 使用 Apache 的 apr 包來處理包括文件和網(wǎng)絡(luò) IO 操作,以提升性能。
此版本主要更新包括:
使用 APR 1.6.3 和 OpenSSL 1.0.2m 構(gòu)建 Windows 二進(jìn)制文件。
改進(jìn) OCSP 擴(kuò)展解析。
今日知識(shí)點(diǎn)
patch命令是什么?如何使用?
答案:
patch命令就是用來將修改(或補(bǔ)?。戇M(jìn)文本文件里。patch命令通常是接收diff的輸出并把文件的舊版本轉(zhuǎn)換為新版本。舉個(gè)例子,Linux內(nèi)核源代碼由百萬行代碼文件構(gòu)成,所以無論何時(shí),任何代碼貢獻(xiàn)者貢獻(xiàn)出代碼,只需發(fā)送改動(dòng)的部分而不是整個(gè)源代碼,然后接收者用patch命令將改動(dòng)寫進(jìn)原始的源代碼里。
創(chuàng)建一個(gè)diff文件給patch使用:
# diff -Naur old_file new_file > diff_file
舊文件和新文件要么都是單個(gè)的文件要么都是包含文件的目錄,-r參數(shù)支持目錄樹遞歸。
一旦diff文件創(chuàng)建好,我們就能在舊的文件上打上補(bǔ)丁,把它變成新文件:
# patch < diff_file