當前位置:首頁 » 網頁前端 » 新手入門web安全測試
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

新手入門web安全測試

發布時間: 2022-07-06 07:13:24

⑴ web安全要學什麼

Web安全的范圍實在太大,哪些先學,哪些後學,如果沒有系統的路線會降低大家效率,對於剛入門的同學們來說簡直就是「噩夢」。所以,這篇類似學習路線的文章,希望可以幫助剛入門的萌新們少走彎路。(文末附學習資料及工具領取)

首先我們來看看企業對Web安全工程師的崗位招聘需求是什麼?

1職位描述

  • 對公司各類系統進行安全加固;

  • 對公司網站、業務系統進行安全評估測試(黑盒、白盒測試)

  • 對公司安全事件進行響應、清理後門、根據日誌分析攻擊途徑

  • 安全技術研究,包括安全防範技術、黑客技術等;

  • 跟蹤最新漏洞信息,進行業務產品的安全檢查。

  • 2崗位要求

  • 熟悉Web滲透測試方法和攻防技術,包括sql注入、XSS跨站、CSRF偽造請求、命令執行等OWSP TOP10 安全漏洞與防禦;

  • 熟悉Linux、Windows不同平台的滲透測試,對網路安全、系統安全、應用安全有深入理解和自己的認識;

  • 熟悉國內外安全工具,包括Kali、Linux、Metasploit、Nessus、Namp、AWVS、Burp等;

  • 對Web安全整體有深刻理解,有一定漏洞分析和挖掘能力;

  • 根據崗位技能需求,再來制定我們的學習路徑,如下:

    一、Web安全學習路徑


    01 HTTP基礎

    只有搞明白Web是什麼,我們才能對Web安全進行深入研究,所以你必須了解HTTP,了解了HTTP,你就會明白安全術語的「輸入輸出」。黑客通過輸入提交「特殊數據」,特殊數據在數據流的每個層處理,如果某個層沒處理好,在輸出的時候,就會出現相應層的安全問題。關於HTTP,你必須要弄明白以下知識:

    HTTP/HTTPS特點、工作流程

    HTTP協議(請求篇、響應篇)

    了解HTML、Javascript

    Get/Post區別

    Cookie/Session是什麼?

    02 了解如下專業術語的意思

    Webshell
    菜刀
    0day
    SQL注入
    上傳漏洞
    XSS
    CSRF
    一句話木馬

    ......

    03 專業黑客工具使用

    熟悉如何滲透測試安全工具,掌握這些工具能大大提高你在工作的中的效率。

    Vmware安裝

    Windows/kali虛擬機安裝

    Phpstudy、LAMP環境搭建漏洞靶場

    Java、Python環境安裝

    子域名工具 Sublist3r

    Sqlmap
    Burpsuite
    Nmap
    W3af
    Nessus
    Appscan
    AWVS

    04 XSS

    要研究 XSS 首先了解同源策略 ,Javascript 也要好好學習一下 ,以及HTML實體 HTML實體的10 或16進制還有Javascript 的8進制和16進制編碼,最終掌握以下幾種類型的XSS:

    反射型 XSS:可用於釣魚、引流、配合其他漏洞,如 CSRF 等。

    存儲型 XSS:攻擊范圍廣,流量傳播大,可配合其他漏洞。

    DOM 型 XSS:配合,長度大小不受限制 。

    05 SQL注入

    所謂SQL注入,就是通過把SQL命令插入到Web表單提交或輸入域名或頁面請求的查詢字元串,最終達到欺騙伺服器執行惡意的SQL命令。你需要了解以下知識:

    SQL 注入漏洞原理
    SQL 注入漏洞對於數據安全的影響
    SQL 注入漏洞的方法
    常見資料庫的 SQL 查詢語法
    MSSQL,MYSQL,ORACLE 資料庫的注入方法
    SQL 注入漏洞的類型:數字型注入 、字元型注入、搜索注入 、盲注(sleep注入) 、Sqlmap使用、寬位元組注入

    SQL 注入漏洞修復和防範方法
    一些 SQL 注入漏洞檢測工具的使用方法

    06 文件上傳漏洞

    了解下開源編輯器上傳都有哪些漏洞,如何繞過系統檢測上傳一句話木馬、WAF如何查殺Webshell,你必須要掌握的一些技能點:

    1.客戶端檢測繞過(JS 檢測)

    2.伺服器檢測繞過(目錄路徑檢測)

    3.黑名單檢測

    4.危險解析繞過攻擊

    5..htaccess 文件

    6.解析調用/漏洞繞過

    7.白名單檢測

    8.解析調用/漏洞繞過

    9.服務端檢測繞過-文件內容檢測

    10.Apache 解析漏洞

    11.IIS 解析漏洞

    12.Nginx 解析漏洞

    07 文件包含漏洞

    去學習下
    include() include_once() require() require_once() fopen() readfile()
    這些php函數是如何產生文件包含漏洞, 本地包含與遠程包含的區別,以及利用文件包含時的一些技巧如:截斷 /偽url/超長字元截斷等 。

    08 命令執行漏洞

    PHP代碼中常見的代碼執行函數有:
    eval(), assert(), preg_replace(), call_user_func(), call_user_func_array(),create_function(), array_map()等。
    了解這些函數的作用然後些搞清楚如何造成的代碼執行漏洞。

    09 CSRF 跨站點請求

    為什麼會造成CSRF,GET型與POST型CSRF 的區別, 如何防禦使用 Token防止CSRF?

    010 邏輯漏洞

    了解以下幾類邏輯漏洞原理、危害及學會利用這幾類漏洞:

    信息轟炸、支付邏輯漏洞、任意密碼修改、越權訪問、條件競爭、任意注冊、任意登錄、順序執行缺陷、URL跳轉漏洞.

    011 XEE(XML外部實體注入)

    當允許XML引入外部實體時,通過構造惡意內容,可以導致文件讀取、命令執行、內網探測等危害。

    012 SSRF

    了解SSRF的原理,以及SSRF的危害。
    SSRF能做什麼?當我們在進行Web滲透的時候是無法訪問目標的內部網路的,那麼這個時候就用到了SSRF漏洞,利用外網存在SSRF的Web站點可以獲取如下信息。
    1.可以對外網、伺服器所在內網、本地進行埠掃描,獲取一些服務的banner信息;
    2.攻擊運行在內網或本地的應用程序(比如溢出);
    3.對內網Web應用進行指紋識別,通過訪問默認文件實現;
    4.攻擊內外網的Web應用,主要是使用get參數就可以實現的攻擊(比如struts2,sqli等);
    5.利用file協議讀取本地文件等。

    如果上述漏洞原理掌握的都差不多那麼你就算入門Web安全了。

    如果看了上面你還不知道具體如何學習?可參考合天網安實驗室Web安全工程師崗位培養路徑學習:網頁鏈接

⑵ 如何進行WEB安全性測試

安全性測試
產品滿足需求提及的安全能力
n 應用程序級別的安全性,包括對數據或業務功能的訪問,應
用程序級別的安全性可確保:在預期的安全性情況下,主角
只能訪問特定的功能或用例,或者只能訪問有限的數據。例
如,可能會允許所有人輸入數據,創建新賬戶,但只有管理
員才能刪除這些數據或賬戶。如果具有數據級別的安全性,
測試就可確保「用戶類型一」 能夠看到所有客戶消息(包括
財務數據),而「用戶二」只能看見同一客戶的統計數據。
n 系統級別的安全性,包括對系統的登錄或遠程訪問。
系統級別的安全性可確保只有具備系統訪問許可權的用戶才能
訪問應用程序,而且只能通過相應的網關來訪問。
安全性測試應用
防SQL漏洞掃描
– Appscan
n防XSS、防釣魚
– RatProxy、Taint、Netsparker
nget、post -> 防止關鍵信息顯式提交
– get:顯式提交
– post:隱式提交
ncookie、session
– Cookie欺騙

⑶ web安全測試主要測試哪些內容

一個完整的Web安全體系測試可以從部署與基礎結構,輸入驗證,身份驗證,授權,配置管理配置管理配置管理配置管理,敏感數據,會話管理,加密,參數操作,異常管理,審核和日誌記錄等幾個方面入手

⑷ 學web安全前都需要掌握什麼

1、基礎網路協議/網站架構

互聯網的本質也就是一系列的網路協議,不管是C/S架構還是B/S架構都是基於網路通信,滲透人員需要了解到通信流程以及數據包走向等,才能使用相應手段跟工具去做滲透。

Web網站常見的協議以及請求方式,這些在做滲透的時候必不可少的。甚至也是可以利用協議來做滲透測試。所有的知識都是息息相關的,必不可少。

2、基礎的編程能力

一名Web滲透測試人員必須具有有一定的基礎編程能力的,每天都跟代碼打交道,如果不會寫代碼或者看不懂代碼,十分吃虧。

例如需要自己寫一款適合此刻情景漏洞的工具,如果不會寫會極大降低效率。再者就是關於後續進階的代碼審計問題,如果不會寫代碼,代碼也看不懂那麼就不知道怎麼從源代碼去審計漏洞,去發現原因。

3、滲透測試工具

滲透測試工具網上開源的很多,作為滲透測試人員會使用滲透測試工具這是必不可少的。一些優秀的工具要學會利用,還有就是要學會自己寫工具。例如在做滲透測試中,好比說大量的數據FUZZ,如果說人工操作將大大浪費時間跟效率。

如若網上的工具不符合此漏洞的情景,這時候就需要自己手動寫工具去調試。當然網上優秀的工具已不少,優先使用會極大提高我們的效率。

4、了解網站的搭建構成

試著去了解一個網站的形成架構,語言,中間件容器等。如果不知道一個網站是如何搭建起來的,那麼做滲透的時候根本就沒有對應的滲透測試方案。例如一個網站採用了某種中間件,或者什麼資料庫,再或者是採用網上開源的CMS。

如果對於這些不了解,那麼就只能在網頁上徘徊遊走,甚至無從下手。了解一個網站的搭建與構成,對於前期做踩點與信息收集有著很大的幫助。

5、漏洞原理(重要)

滲透測試人員肯定是要對漏洞原理去深入研究探究,這樣會從中發現更多有「趣」的東西。所有有「趣」的東西是可能你在原有的基礎漏洞上配合其他漏洞,從而達到組合漏洞,這樣效果有可能會更佳,不過不去了解漏洞原理,漏洞產生,不去從代碼層出發。

那就不知道漏洞起因,到後期的滲透利用以及修復方案,就會顯得吃力,這時候有可能你就需要去查資料,從某種形式的降低了速度與效率,所以,知識與積累必不可少。

6、報告撰寫能力

每次做完滲透測試之後,都是需要一個滲透測試報告,對於漏洞挖掘的梳理,網路結構印象加深,這是後期與客戶溝通還有與開發對接提修復建議能起到很大的幫助,這些細小的細節決定著你服務的質量與責任感,因此需要不斷的積累與提升。

⑸ 初學者如何學習軟體測試

學軟體測試沒有太多硬性要求,最好是有中專以上學歷。

首先,要看你學得怎麼樣,學的知識和技能扎實了,那麼必定會有更多的機會。

其次,找工作的話,建議還是到北上廣深等者省會城市,軟體企業比較多,經濟發展好薪資待遇也高。我有全套軟體測試視頻課可以發給你自學。

課程內容主要有:

搭建Windows測試環境,JAVA編程,軟體測試基礎,資料庫技術,用戶界面技術,高效設計測試用例,階段項目實訓,搭建 Linux 測試環境,白盒測試,WEB技術,高效使用自動測試工具,軟體質量保證,流行測試基礎,企業級項目實訓用例等!

學完可以從事:

功能測試工程師,性能測試工程師,安全測試工程師,白盒測試工程師,自動化測試工程師,介面測試工程師,測試開發工程師等。

互聯網行業目前還是最熱門的行業之一,學習IT技能之後足夠優秀是有機會進入騰訊、阿里、網易等互聯網大廠高薪就業的,發展前景非常好,普通人也可以學習。

想要系統學習,你可以考察對比一下開設有相關專業的熱門學校,好的學校擁有根據當下企業需求自主研發課程的能力,能夠在校期間取得大專或本科學歷,中博軟體學院、南京課工場、南京北大青鳥等開設相關專業的學校都是不錯的,建議實地考察對比一下。

祝你學有所成,望採納。

⑹ web應用安全應該怎麼測試呢

用MicroFocus的Fortify來測試呀,它可以檢測出你的web裡面有沒有存在的漏洞,挺實用的。

⑺ 如何進行WEB安全性測試

一般來說,一個WEB應用包括WEB伺服器運行的操作系統、WEB伺服器、WEB應用邏輯、資料庫幾個部分,其中任何一個部分出現安全漏洞,都會導致整個系統的安全性問題。
對操作系統來說,最關鍵的操作系統的漏洞,Windows上的RPC漏洞、緩沖區溢出漏洞、安全機制漏洞等等;
對WEB伺服器來說,WEB伺服器從早期僅提供對靜態HTML和圖片進行訪問發展到現在對動態請求的支持,早已是非常龐大的系統。
對應用邏輯來說,根據其實現的語言不同、機制不同、由於編碼、框架本身的漏洞或是業務設計時的不完善,都可能導致安全上的問題。
對WEB的安全性測試是一個很大的題目,首先取決於要達到怎樣的安全程度。不要期望網站可以達到100%的安全,須知,即使是美國國防部,也不能保證自己的網站100%安全。對於一般的用於實現業務的網站,達到這樣的期望是比較合理的:
1、能夠對密碼試探工具進行防範;
2、能夠防範對cookie攻擊等常用攻擊手段;
3、敏感數據保證不用明文傳輸;
4、能防範通過文件名猜測和查看HTML文件內容獲取重要信息;
5、能保證在網站收到工具後在給定時間內恢復,重要數據丟失不超過1個小時;

⑻ 如何系統學習web安全,web滲透測試

首先得清楚web安全/web滲透是什麼:模擬黑客攻擊,利用黑客技術,挖掘漏洞,提出修復建議。

涉及到的技術有:資料庫/網路技術/編程技術/操作系統/滲透技術/攻防技術/逆向技術/SRC漏洞平台/ctf經驗。。

崗位能力要求:

1、熟練使用awvs、nessus、metasploit、burpsuite等安全測試工具,並對其原理有一定了解

2、熟悉OWASP中常見的web安全漏洞、業務邏輯漏洞及其原理

3、熟悉滲透測試技術的整體流程,具備獨立開展滲透工作的能力;

4、熟悉linux系統操作,了解常見web中間件、資料庫、伺服器相關漏洞

5、至少掌握一種編程語言,能夠開發用於輔助日常工作的腳本

6、具備一定的php或java代碼審計能力,能夠對公開漏洞進行分析

7、具備良好的邏輯思維、溝通技巧及團隊協作能力

8、已取得信息安全等級測評師證書的優先。(NISP)

想要系統的學習web滲透,可以參考企業對人才的要求進行學習。

⑼ 新手想要學web滲透,網路安全,要如何開始

首先想想是不是真心想學,這條路註定孤獨寂寞,不斷碰壁。
想好後,就要每天堅持。
我的一些建議:每天多任務進行,比如早上兩小時看英語學習,之後看語言,(C語言之後python之後php),下午看些網路上的滲透資料,晚上實踐,等到資料看完。可以開始看看滲透博客,然後下午晚上自由分配

⑽ 零基礎如何學習 Web 安全

1.學習網站構建初級教程_W3C以及HTTP協議基礎-runoob上了解Web前後端以及HTTP協議的一些基礎介紹,花半天時間對相關技術有個概念性的了解就夠了。

2. Windows下下載phpStudy或者WAMP,在本地搭建Web伺服器環境,然後自己搜索兩篇文章學習下基本的操作方法。這個本地Web伺服器也就相當於學習過程中的一個實驗環境了。

3.學習瀏覽器的開發者工具(通常快捷鍵F12調出),搜索一些教學文章,掌握Chrome或者Firefox瀏覽器開發者工具中的Network、Elements功能的常見用法,可以查看HTTP數據包以及定位頁面元素。

那學習Web安全呢,同時還要掌握一些工具:瀏覽器開發者工具與瀏覽器插件(如HackBar、ProxySwitcher)、抓包工具如Burpsuite、漏洞掃描和驗證工具如御劍、sqlmap、AWVS,工具可以在Freebuf上自行搜索下載,教程可以參考Web安全-i春秋系列教程中對應這幾款工具的章節學習。

好的工具可以幫助我們提高測試效率,擴展測試思路。除了工具的使用,通過搭建本地實戰環境練習手工技巧,也是很好的進階之路,這里建議可以搭建DVWA漏洞測試環境,然後參考DVWA系列教程_Freebuf進行學習。

學習的同時也可以在在教育行業SRC等漏洞平台上挖掘漏洞,贏得認可,也是一種動力,但挖掘漏洞的時候一定要注意規范和界限,可以參考自律方能自由,《網路安全法》實施後的白帽子行為參考,挖掘漏洞的同時也要注意保護自己。