網站安全維護對公司網站滲透測試剖析
天氣逐漸變涼,但滲透測試的熱情溫度感覺不到涼,因為有我們的存在公開分享滲透實戰經驗過程,才會讓這個秋冬變得不再冷,近期有反映在各個環境下的目錄解析漏洞的檢測方法,那麼本節由我們Sine安全的高階滲透架構師來詳細的講解平常用到的web環境檢測點和網站漏洞防護辦法。
3.14.1. IIS
3.14.1.1. IIS 6.0
- 字尾解析 /xx.asp;.jpg
- 目錄解析 /xx.asp/xx.jpg (xx.asp目錄下任意解析)
- 預設解析 xx.asa xx.cer xx.cdx
- PROPFIND 棧溢位漏洞
- PUT漏洞 WebDAV任意檔案上傳
3.14.1.2. IIS 7.0-7.5 / Nginx <= 0.8.37
在Fast-CGI開啟狀態下,在檔案路徑後加上 /xx.php ,則 xx.jpg/xx.php 會被解析為php檔案
3.14.1.3. 其他
在支援NTFS 8.3檔案格式時,可利用短檔名猜解目錄檔案
3.14.2. Nginx
3.14.2.1. Fast-CGI關閉
在Fast-CGI關閉的情況下, Nginx 仍然存在解析漏洞:在檔案路徑(xx.jpg)後面加上 %00.php , 即 xx.jpg%00.php 會被當做 php 檔案來解析
3.14.2.2. Fast-CGI開啟
在Fast-CGI開啟狀態下,在檔案路徑後加上 /xx.php ,則 xx.jpg/xx.php 會被解析為php檔案
3.14.2.3. CVE-2013-4547
"a.jpg\x20\x00.php"
3.14.3. Apache
3.14.3.1. 字尾解析
test.php.x1.x2.x3 ( x1,x2,x3 為沒有在 mime.types 檔案中定義的檔案型別)。Apache 將從右往左開始判斷字尾, 若x3為非可識別字尾,則判斷x2,直到找到可識別字尾為止,然後對可識別字尾進行解析
3.14.3.2. .htaccess
當AllowOverride被啟用時,上傳啟用解析規則的.htaccess
3.14.3.3. CVE-2017-15715
%0A繞過上傳黑名單
3.14.4. lighttpd
xx.jpg/xx.php
3.14.5. Windows
Windows不允許空格和點以及一些特殊字元作為結尾,建立這樣的檔案會自動取出,所以可以使用 xx.php[空格] , xx.php., xx.php/, xx.php::$DATA 可以上傳指令碼檔案
3.15. Web Cache欺騙攻擊
3.15.1. 簡介
網站通常都會透過如CDN、負載均衡器、或者反向代理來實現Web快取功能。透過快取頻繁訪問的檔案,降低伺服器響應延遲。
例如,網站 htttp://域名 配置了反向代理。對於那些包含使用者個人資訊的頁面,如 http://域名/home.php ,由於每個使用者返回的內容有所不同,因此這類頁面通常是動態生成,並不會在快取伺服器中進行快取。通常快取的主要是可公開訪問的靜態檔案,如css檔案、js檔案、txt檔案、圖片等等。此外,很多最佳實踐類的文章也建議,對於那些能公開訪問的靜態檔案進行快取,並且忽略HTTP快取頭。
Web cache攻擊類似於RPO相對路徑重寫攻擊,都依賴於瀏覽器與伺服器對URL的解析方式。當訪問不存在的URL時,如 http://域名/home.php/non-existent.css ,瀏覽器傳送get請求,依賴於使用的技術與配置,伺服器返回了頁面 http://域名/home.php 的內容,同時URL地址仍然是 http://域名/home.php/non-existent.css,http頭的內容也與直接訪問 http://域名/home.php 相同,cacheing header、content-type(此處為text/html)也相同。
3.15.2. 漏洞成因
當代理伺服器設定為快取靜態檔案並忽略這類檔案的caching header時,訪問
http://域名/home.php/no-existent.css 時,會發生什麼呢?整個響應流程如下:
- 瀏覽器請求 http://域名/home.php/no-existent.css ;
- 伺服器返回 http://域名/home.php 的內容(通常來說不會快取該頁面);
- 響應經過代理伺服器;
- 代理識別該檔案有css字尾;
- 在快取目錄下,代理伺服器建立目錄 home.php ,將返回的內容作為 non-existent.css 儲存。
3.15.3. 漏洞利用
攻擊者欺騙使用者訪問 http://域名/home.php/logo.png? ,導致含有使用者個人資訊的頁面被快取,從而能被公開訪問到。更嚴重的情況下,如果返回的內容包含session標識、安全問題的答案,或者csrf token。這樣攻擊者能接著獲得這些資訊,因為通常而言大部分網站靜態資源都是公開可訪問的。
3.15.4. 漏洞存在的條件
漏洞要存在,至少需要滿足下面兩個條件:
- web cache功能根據擴充套件進行儲存,並忽略caching header;
- 當訪問如 http://域名/home.php/non-existent.css 不存在的頁面,會返回 home.php 的內容。
3.15.5. 漏洞防禦
防禦措施主要包括3點:
- 設定快取機制,僅僅快取http caching header允許的檔案,這能從根本上杜絕該問題;
- 如果快取元件提供選項,設定為根據content-type進行快取;
- 訪問 http://域名/home.php/non-existent.css 這類不存在頁面,不返回 home.php 的內容,而返回404或者302。
- 對圖片上傳目錄進行指令碼許可權限制,對上傳擴充套件這裡做過濾判斷。
- 如果快取元件提供選項,設定為根據content-type進行快取;
- 對get url的地址進行waf的安全過濾,如果對這些安全防護部署以及滲透測試不熟悉的話,建議可以像專業的網站安全公司來處理解決,國內做的比較好的推薦Sinesafe,啟明星辰,綠盟,等等專業的。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31542418/viewspace-2660791/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 滲透測試公司 對PHP網站安全後門檢測PHP網站
- 網站安全公司 滲透測試運營之路網站
- 網站安全滲透測試公司心得總結網站
- 滲透測試公司談網站安全評估方法網站
- 網站滲透測試安全檢測漏洞網站
- 網站滲透測試安全檢測方案網站
- 網站滲透測試服務之人工安全防護網站
- 網站安全公司 滲透測試中的漏洞資訊蒐集網站
- 網站安全測試之APP滲透測試漏洞網站APP
- beescms網站滲透測試網站
- 網站安全公司 滲透測試基礎知識點大全網站
- 網站滲透測試公司的成長之路網站
- 網站安全評估滲透測試手法分析網站
- 滲透測試 網站安全測試行業問題分析網站行業
- 從滲透測試到漏洞掃描 看我們如何對網站做安全防護網站
- 滲透測試網站安全基礎點講解網站
- 滲透測試網站sql注入攻擊與防護網站SQL
- 滲透測試對檔案包含漏洞網站檢測網站
- 網站安全滲透測試檢測認證登入分析網站
- 滲透測試網站安全漏洞檢測大體方法網站
- 多個角度分析滲透測試網站安全效能網站
- 網站安全滲透測試該如何增加就業概率網站就業
- 企業網站安全滲透測試服務範圍網站
- 滲透測試公司實戰拿下客戶網站過程網站
- 如何學習網站漏洞滲透測試學習網站
- 看雪網站滲透測試服務網站
- 網站安全維護公司解決防護方案網站
- 網站漏洞檢測 滲透測試檢測手法網站
- 什麼是滲透測試?網站有必要進行滲透測試嗎?網站
- 網路安全滲透測試
- 網站安全滲透測試服務之discuz漏洞挖掘與利用網站
- 網站滲透思路網站
- 網站滲透測試漏洞分析程式碼架構網站架構
- 網站滲透測試學習有苦也有甜網站
- 網站滲透測試原理及詳細過程網站
- 什麼是網站系統安全的滲透檢測?網站
- 網站滲透測試從動感感知系統建立網站
- 專欄講解滲透測試網站資訊獲取網站