您現在的位置: 网站首頁 / seo優化 / 正文

【網站安全】網站被挂木馬與777權限的奧妙

作者: admin 发布: 2016-12-2 17:33:49 分类: seo優化 閱讀: 次 查看評論

  某天VIP大講堂微信群裏的一位同學說網站被人挂馬了,查了半天也查不到原因。藝龍SEO負責人劉明問了一句“是不是技術把linux系統裏網站的核心目錄設置777文件權限了”,同學查後發現果然如此。那麽,777是什麽?老虎機嗎?愛偷懶的程序員都該會心一笑,省事大法啊。這簡單的數字背後代表了一套偉大的文件權限控制思想。院長趕緊請劉明長敘一篇,讓我們隨著劉明的解釋慢慢理解。

  一、當用戶訪問一個網頁

  這個時候,你的服務器內部發生了什麽,請參考下圖。其中任何一個環節有漏洞,都會出問題。注意,本圖片只代表個人理解,並非真實流程。

  

  二、文件的權限只有三

  查询一下linux的标准文档,就知道。文件分为,读、写、执行三種权限。

  r Read 可以打开并读取内容。

  w Write 可以修改内容,增加内容,甚至删除内容。

  x Execute 可以当做可执行程序,或者shell脚本执行。

  特別注意,對于目錄來說,x表示可以浏覽他裏頭都有什麽文件。

  三、文件權限針對的是三類用戶。

  owner 文件所有者,或者说是创建了这个文件的人。

  group 文件所在的组,一个组可以包含很多个owner,但不一定包含当前文件这个owner。

  other 其他人,也就是除了当前这个owner,除了当前这个group外的所有人。

  四、實際是什麽樣子的。

  linux中所有文件都需要记录这3種权限和3種人群。3x3=9,再加上一个标记表示“这是不是一个目录”,一共10个标记。如图所示,

  

  這12行表示12個文件,都是一個叫sin的人創建都,而且sin的分組是staff。

  五、詳細解釋一下。

  我們從前到後逐一說一遍。寫著子母(drwx)的,表示有這個權限。寫著橫線(-)的,表示沒有這個權限。

  drwxrwxrwx

  1: 这是不是一个文件夹。d表示是,-表示否。(如果写的是l,可以理解为他是快捷方式)

  2:owner是否可以讀取這個文件的內容。r表示是,-表示否。

  3:owner是否可以改寫這個文件的內容。w表示是,-表示否。

  4: owner是否可以执行这个文件。x表示是,-表示否

  5:group是否可以讀取這個文件的內容。r表示是,-表示否。

  6: group是否可以改写这个文件的内容。w表示是,-表示否。

  7: group是否可以执行这个文件。x表示是,-表示否。

  8: other是否可以读取这个文件的内容。r表示是,-表示否。

  9:other是否可以改寫這個文件的內容。w表示是,-表示否。

  10:other是否可以執行這個文件。x表示是,-表示否。

  六、怎麽用數字方便的表示文件權限。

  因爲10個位置中,第1個不是權限,我們就只看後邊9個位置。

  如何把這個權限轉化成數字呢?rwxrw-r--

  owner group other

  符号 r w x r w - r - -

  二进制 1 1 1 1 1 0 1 0 0

  相加之和 7 6 4

  111 = 2^2 + 2^1 + 2^0 = 7

  110 = 2^2 + 2^1 =6

  100 = 2^2 = 4

  所以rwxrw-r--就變成了:764

  七、常用的權限數字

  常用更改文件權限的命令,xxx代表文件名

  600 只有owner有读和写的权限

  644 owner有读和写的权限,group只有读的权限

  700 只有ower有读和写以及执行的权限

  666 owner,group,other都有读和写的权限

  777 owner,group,other都有读和写以及执行的权限

  八、終于講到正題了

  講了這麽說,你應該明白777的意思就是,任何人可以幹任何事。那等于什麽權限都沒設啊!linux再安全也架不住自己人刻意制造漏洞吧。這完全等同于把鋼鐵俠屁股上的材料換成了窗戶紙。

  linux的安全原則是最小權限原則,能不給的權限就不要給。而很多懶惰或者新手的程序員往往爲了省事使用最大權限。

  有的人問,網站需要上傳圖片,需要w很正常,否則圖片放哪呢。那我想問,你家的房子,是不是可以隨便挪動?冰箱能挪動,承重牆能挪的動嗎?請注意,客廳,臥室,廁所,廚房的空間都是rw的,但是承重牆只能是r的,不能隨便w。

  同理,網站核心代碼是不可寫的,只能可讀。

  學會了權限的基本支持,怎麽運用呢?(只能說大概意思,具體應該怎麽部署,還是找專業都運維同學問吧,我好久沒碰web了。)

  假設我把核心代碼放在/var/www/,我把圖片放在/var/pic/。前者目錄rw,裏頭所有文件r。後者本身w,裏頭所有文件r

  webserver只能解析/var/www/裏的文件,不能執行/var/pic/裏的。這樣不至于讓人家把木馬程序放到/var/pic/裏執行。

  由于每個網站使用的語言都不一樣,無法做一個統一說明,只能舉幾個例子。假如你的網站使用php語言,植入的木馬基本也都是php語言寫的命令。

  可以分别试试这两个命令,因为php木马常用eval和create_function来做坏事(说/var/www/路径不存在的同学,面壁思过10贩N樱

  grep "eval(" /var/www/* -r

  grep "create_function(" /var/www/* -r

  請注意,並不是沒有用777權限,就萬無一失了,web的漏洞多如牛毛,無孔不入,本文章只是抛磚引玉。

  --百度站長學院

  來源:SEO搜尋引擎優化 - SEO自學網 轉載注明出處!

? 上一篇下一篇 ?   本文關鍵詞: 網站安全  

評論列表:

站長SEO學院
第一節:百度搜索引擎工作原理
第二節:建設對搜索引擎友好的站點
第三節:如何進行網站內容建設
第四節:整體優化、結構優化、網頁優化
第五節:移動搜索-明確移動搜索優化標准
百度SEO資料文檔
百度搜索引擎優化指南2.0
百度移動搜索優化指南2.0
網站分析白皮書(站長版)
移動站點該如何優化
建設對百度友好的站點
百度搜索引擎網頁質量白皮書
石榴算法-綠蘿算法-冰桶算法
新搜索時代下的優化策略
更多百度SEO資料文檔
站長推薦
DIV+CSS布局實例教程-Web標准
网站SEO優化常见问题汇总
SEO優化推广方案该如何写
SEO優化方案步骤
影響網站關鍵詞排名因素總結
影響谷歌搜索引擎排名的因素調查
手機移動端站點適配優化
最近發表