- Python滲透測試教程
- Python滲透測試 - 首頁
- 簡介
- 評估方法
- 網路通訊入門
- 套接字及其方法
- Python網路掃描器
- 網路資料包嗅探
- ARP欺騙
- 無線網路滲透測試
- 應用層
- 客戶端驗證
- DoS & DDoS攻擊
- SQL注入Web攻擊
- XSS Web攻擊
- 有用資源
- 快速指南
- 有用資源
- 討論
Python滲透測試 - 簡介
滲透測試(Pen test 或 Penetration Testing)可以定義為透過模擬針對計算機系統的網路攻擊來評估IT基礎設施安全性的嘗試,以利用漏洞。
漏洞掃描和滲透測試有什麼區別?漏洞掃描只是識別已知的漏洞,而滲透測試,如前所述,是試圖利用漏洞。滲透測試有助於確定系統中是否存在未經授權的訪問或任何其他惡意活動。
我們可以使用手動或自動化技術對伺服器、Web應用程式、無線網路、移動裝置以及任何其他潛在的暴露點進行滲透測試。由於滲透測試,如果我們利用任何型別的漏洞,則必須將其轉發給IT和網路系統管理員,以得出戰略性結論。
滲透(Pen)測試的意義
在本節中,我們將學習滲透測試的意義。請考慮以下幾點以瞭解其意義:
組織的安全
滲透測試的意義可以從它為組織提供詳細的安全評估,從而確保組織安全這一點來理解。
保護組織的機密性
藉助滲透測試,我們可以在遭受任何損害之前發現潛在的威脅並保護該組織的機密性。
安全策略的實施
滲透測試可以確保我們瞭解組織中安全策略的實施情況。
管理網路效率
藉助滲透測試,可以管理網路效率。它可以審查防火牆、路由器等裝置的安全性。
確保組織的安全
假設如果我們想要在網路設計中實施任何更改或更新軟體、硬體等,那麼滲透測試可以確保組織免受任何型別的漏洞的侵害。
誰是一個優秀的滲透測試人員?
滲透測試人員是軟體專業人員,他們透過識別漏洞來幫助組織加強其抵禦網路攻擊的防禦能力。滲透測試人員可以使用手動技術或自動化工具進行測試。
現在讓我們考慮一下優秀滲透測試人員的以下重要特徵:
網路和應用程式開發知識
優秀的滲透測試人員必須具備應用程式開發、資料庫管理和網路知識,因為他們將需要處理配置設定以及編碼。
傑出的思考者
滲透測試人員必須是一位傑出的思考者,並且在特定任務中毫不猶豫地應用不同的工具和方法以獲得最佳輸出。
程式知識
優秀的滲透測試人員必須具備知識來確定每個滲透測試的範圍,例如其目標、限制和程式的合理性。
技術更新
滲透測試人員必須隨時掌握其技術技能,因為技術隨時可能發生變化。
熟練的報告撰寫能力
成功實施滲透測試後,滲透測試人員必須在最終報告中提及所有發現和潛在風險。因此,他/她必須具備良好的報告撰寫能力。
對網路安全的熱情
一個充滿激情的人可以在生活中取得成功。同樣,如果一個人對網路安全充滿熱情,那麼他/她就可以成為一名優秀的滲透測試人員。
滲透測試範圍
我們現在將瞭解滲透測試的範圍。以下兩種測試可以定義滲透測試的範圍:
無損檢測(NDT)
無損檢測不會使系統面臨任何風險。NDT用於在缺陷變得危險之前找到缺陷,而不會損害系統、物體等。在進行滲透測試時,NDT執行以下操作:
遠端系統掃描
此測試掃描並識別遠端系統是否存在可能的漏洞。
驗證
在發現漏洞後,它還會驗證所有發現的內容。
正確利用遠端系統
在NDT中,滲透測試人員將正確利用遠端系統。這有助於避免中斷。
注意 - 另一方面,在進行滲透測試時,NDT不會執行拒絕服務(DoS)攻擊。
破壞性測試
破壞性測試可能會使系統面臨風險。它比無損檢測更昂貴,並且需要更多技能。在進行滲透測試時,破壞性測試執行以下操作:
拒絕服務(DoS)攻擊 - 破壞性測試執行DoS攻擊。
緩衝區溢位攻擊 - 它還會執行緩衝區溢位攻擊,這可能導致系統崩潰。
練習滲透測試需要安裝什麼?
滲透測試技術和工具只能在您擁有或已獲得許可在其上執行這些工具的環境中執行。我們決不能在未經授權的環境中練習這些技術,因為未經許可的滲透測試是非法的。
我們可以透過安裝虛擬化套件來練習滲透測試 - 無論是VMware Player(www.vmware.com/products/player)還是Oracle VirtualBox -
www.oracle.com/technetwork/server-storage/virtualbox/downloads/index.html
我們還可以從當前版本的以下版本建立虛擬機器(VM):
Kali Linux(www.kali.org/downloads/)
Samurai Web 測試框架(http://samurai.inguardians.com/)
Metasploitable(www.offensivesecurity.com/metasploit-unleashed/Requirements)