<menu id="guoca"></menu>
<nav id="guoca"></nav><xmp id="guoca">
  • <xmp id="guoca">
  • <nav id="guoca"><code id="guoca"></code></nav>
  • <nav id="guoca"><code id="guoca"></code></nav>

    我的滲透測試方法論

    VSole2022-12-21 09:47:42

    0x01 滲透測試概述

    滲透測試:比較官方的解釋可以查看百度百科,我的理解為滲透測試就是通過一些手段找到網站、APP、網絡服務、軟件、服務器等網絡設備和應用的漏洞,告知管理員有哪些漏洞,應該怎么填補以防止入侵

    下圖,為我在學習課程之前了解到的滲透測試流程:

    而本次課程中,將滲透測試的流程就更加簡化了,總共分為了三個步驟 ——

    1. 信息收集階段:通過已知信息去收集滲透測試目標所有暴露在邊界上的系統和信息,從而掌握目標外圍所有可能訪問到的資產信息
    2. 漏洞發現階段:對收集到的資產進行劃分,然后針對不同的目標執行不同的測試方案
    3. 報告編寫階段:將之前的所有成果進行匯總,將測試的方法、流程、結果以及漏洞修復建議體現在報告中

    其中可以使用腳本自動化完成的步驟為信息收集和漏洞發現,接下來我就來具體介紹一下課程中關于這兩個部分的內容

    0x02 信息收集階段

    資產范圍 → 子域名數據 → 域名對應的IP數據

    通常情況下,我們拿到的資產范圍都是一些域名列表,類似于下圖

    所以,我們第一步需要做的工作通常是收集主域名下的子域名與其對應的IP

    子域名收集工具使用amass收集國內第三方平臺數據的子域名收集工具oneforall收集國內第三方平臺數據的子域名收集工具dnsgen根據提供的域名數據生成新的子域名字典的工具ksubdomain子域名枚舉工具

    具體步驟如下:

    1. 在獲取到目標資產范圍后,先進行第三方平臺的子域名信息收集,使用到的工具有oneforall(國內)和amass(國外)
    2. 使用子域名枚舉工具ksubdomain的enum模塊,利用子域名字典對目標進行子域名枚舉,獲取相應數據
    3. 將前兩步收集到的信息去重后傳入域名字典生成工具dnsgen生成新的域名字典
    4. 使用子域名枚舉工具ksubdomain的verify模塊,利用新生成的域名字典進行域名枚舉,獲取相應數據,值得注意的是,verify模塊產生的數據不會對泛解析域名進行處理,這里還需要增加一個處理泛解析域名的操作
    5. 將所有的得到的數據匯總去重,即可得到一份子域名 + IP的目標數據
    子域名與IP的映射關系 → 獲取http://domain:port格式的URL數據

    僅僅知道站點域名是不足以確定一個WEB站點的,所以我們還需要獲取其WEB服務對應的端口號,最終拿到對應的URL數據

    端口掃描工具使用naabu集成工具,傳入域名列表可以直接獲取數據,但是速度很慢nmap端口掃描工具,速度一般,能夠很方便的獲取端口指紋信息masscan端口掃描工具,速度很快,但是無法獲取端口指紋信息fingerprintx端口指紋識別工具

    想要通過域名IP數據獲取URL數據方式有三種,可以根據個人需求選擇對應的方式進行操作:

    方式一:直接使用naabu工具進行收集,輸入域名列表,輸出http://domain:port格式的URL數據,但是速度很慢

    方式二:使用Nmap工具的-sV參數對IP列表進行掃描,能夠直接獲取IP開放的端口和對應的服務信息,通過對服務信息的分類能夠獲取到開放WEB服務的端口,最后再將端口與域名數據拼接,即可獲取http://domain:port格式的URL數據。這種方式不復雜,但是速度也不算快,建議針對單個站點使用

    方式三:使用MasscanIP列表進行掃描,獲取其開放的端口,然后使用fingerprintx工具進行端口指紋識別,獲取其中的開放WEB服務的端口,最后再將端口與域名數據拼接,即可獲取http://domain:port格式的URL數據。這種方式經過測試,速度是方式二的兩到三倍

    URL數據 → 站點驗活 → 站點去重 → 站點指紋識別 + WAF檢測 → 目標站點列表

    在獲取到URL數據之后,我們可以對每個URL進行進一步的驗證,排除掉所有失活的站點,再基于站點哈希值進行去重,最后排除掉存在WAF站點,即可獲取最終的目標站點列表,然后可以根據需求進行站點指紋識別,為NDay漏洞的利用做準備

    站點信息收集工具使用httpx收集站點返回信息的工具,能夠自動進行站點驗活,站點去重可以根據站點hash值進行TideFinger站點指紋識別工具Wafw00f站點WAF檢測工具,能夠識別WAF種類

    站點信息收集的具體步驟如下 :

    1. 使用httpx工具收集所有URL對應站點的哈希值,工具會默認排除失活站點,然后根據哈希值進行去重
    2. 使用wafw00f工具對所有存活的站點進行WAF驗證,排除掉存在WAF的站點并收集WAF指紋數據入庫(若沒有WAF指紋識別的需求,僅僅只是進行排除,也可以自己編寫WAF判定的腳本),獲取經過篩選的站點作為目標站點數據保存下來
    3. 如果有需求,可以通過TideFinger工具收集目標站點的站點指紋信息進行入庫/存入文件
    目標站點列表 → 站點列表

    在獲取到站點列表之后,需要尋找注入點,即網站的接口(GET、POST傳參的參數)

    站點接口收集工具使用gospider爬蟲工具,自動獲取站點公開接口uro站點接口去重工具x8針對單個站點的接口枚舉工具,配合字典使用

    尋找網站接口的方式有二:

    方式一:通過接口字典枚舉的方式尋找,用到的工具是x8,需要指定對應的參數字典,這個方式效率不高,在站點數量較少的時候可以嘗試用

    方式二:使用網站爬蟲的方式尋找公開的接口信息,用到的工具是gospider,這款爬蟲工具為動態爬蟲,利用無頭瀏覽器,可以動態加載網頁中的 JavaScript 腳本,相比靜態爬蟲可以獲取 POST 請求中的參數,以及可以利用 API 進行數據交互

    在收集完網站接口數據之后,可以利用uro工具對數據進行去重,避免重復操作

    總結

    至此,信息收集步驟已經全部完成,我們再來回顧一下 ——

    1. 收集目標站點資產范圍,通常為域名范圍
    2. 子域名收集
    3. WEB端口收集,匯總為URL數據
    4. URL去重、驗活以及排除存在WAF的站點
    5. 站點指紋識別,信息入庫
    6. 站點接口數據收集

    0x03 自動化測試

    在之前的信息收集步驟中,我們獲取了目標站點的URL數據和接口數據,接下來,就可以利用這些數據進行自動化測試了

    在開始前,我們需要了解一下常見的漏洞掃描以及模糊測試工具

    漏洞掃描工具使用AWVSBS架構的漏掃工具,適合掃描單個站點AppScanCS架構的漏掃工具,可以自定義規則,適合掃描單個站點Xray漏掃腳本,適合掃描多個站點,支持靜態被動掃描Crawlergo瀏覽器內核爬蟲,可用于Xray聯動使用SNETCrackerWindows下的弱口令枚舉工具HydraLinux下的弱口令枚舉工具,kali自帶ffufFuzzing工具

    其中弱口令枚舉工具是對一些非WEB端口可能存在弱口令的應用進行測試;而漏掃工具和Fuzzing工具則是針對WEB服務進行測試

    AVWSAppScan通常是使用針對單個站點進行漏掃的工具,簡單易用但是擴展性較差

    而這里重點介紹xray工具的使用思路——

    1. 被動掃描:在進行手工測試的時候,可以開啟xray的被動掃描模式,讓它幫助你做一些常見WEB漏洞的探測,而人工的重心可以放在邏輯漏洞的發現上
    2. 主動探測:利用xray的主動探測功能對站點接口收集階段的接口數據進行探測
    3. 聯動Crawlergo進行探測:先用Crawlergo對站點的URL數據進行爬取,再將流量轉發給xray對得到的數據進行探測

    這三款工具都能自動生成漏洞掃描報告,報告編寫可以將其作為參考資料

    0x04 總結

    最后的最后,放一張圖來總結一下這次滲透實訓的整體思路,以上就是我這次參加實訓的所有收獲。

    滲透測試端口轉發
    本作品采用《CC 協議》,轉載必須注明作者和本文鏈接
    提權需要的東西有點兒多,筆記里出現的工具不建議在百度上下載。如果支持aspx,可以上傳aspx,通過aspx大馬,直接調用默認cmd掃描掃出了其他人的大馬可以嘗試用?
    前言 有的時候希望把本地內網系統映射到公網方便跨局域網訪問,Sunny-Ngrok提供國內免費的內網映射服務器,可以滿足我們這個需求。
    起因,由于前幾天拿了一個菠菜站的webshell,但是只有iis權限,執行無法創建用戶等操作,更無法對整個服務器進行控制了,于是此時便需要提權了,對于一個剛剛入門的小白來說,此刻真正意識到了提權的重要性,于是便開始學習提取相關知識,以拿下該菠菜的站點。提權前的準備工作1,通常來說,不同的腳本所處的權限是不一樣的。
    該篇章目的是重新牢固地基,加強每日訓練操作的筆記,在記錄地基筆記中會有很多跳躍性思維的操作和方式方法,望大家能共同加油學到東西。
    Windows如果RDP連接上去,可以使用圖形化工具(如御劍)。如果是webshell,可以使用fscan、nmap。重命名Dir,方便后續操作。將客戶端配置刪除?服務端監聽地址?服務端儀表板的端口。log_level記錄的日志級別。執行命令等待frpc連接./frps?#是該條規則在服務端開放的端口號,待會兒用proxyfier連的端口
    概述滲透測試的目標可以是單個主機,也可以是整個內網。在實戰中,比如最近如火如荼的HW行動,更多的是對一個目標的內網進行滲透,爭取獲得所有有價值的資產。完整的內網滲透涉及的步驟如下圖所示。快速橫向移動到到內網中的核心資產,獲取核心敏感數據和權限,完成一次疼痛的打擊。Step 1 信息收集完成邊界突破的第一步是目標對象資產的信息收集。這些其實是為了找到脆弱資產進行攻擊,畢竟“柿子挑軟的捏”。
    滲透測試的目標可以是單個主機,也可以是整個內網。在實戰中,比如最近如火如荼的HW行動,更多的是對一個目標的內網進行滲透,爭取獲得所有有價值的資產。完整的內網滲透涉及的步驟如下圖所示。快速橫向移動到到內網中的核心資產,獲取核心敏感數據和權限,完成一次疼痛的打擊。Step 1 信息收集完成邊界突破的第一步是目標對象資產的信息收集。這些其實是為了找到脆弱資產進行攻擊,畢竟“柿子挑軟的捏”。
    VSole
    網絡安全專家
      亚洲 欧美 自拍 唯美 另类