境下Fscan內(nèi)網(wǎng)掃描工具實(shí)戰(zhàn)指南:從安裝配置到高級(jí)應(yīng)用)
1. 從一次應(yīng)急響應(yīng)說(shuō)起為什么我們需要Fscan去年處理一個(gè)內(nèi)部安全事件客戶反饋說(shuō)內(nèi)網(wǎng)有幾臺(tái)服務(wù)器響應(yīng)異常懷疑有橫向移動(dòng)的跡象。當(dāng)時(shí)手上沒(méi)有現(xiàn)成的內(nèi)網(wǎng)掃描工具臨時(shí)用Python寫(xiě)腳本去探測(cè)端口和服務(wù)效率低不說(shuō)還漏掉了幾個(gè)關(guān)鍵的服務(wù)版本信息差點(diǎn)誤判。事后復(fù)盤(pán)團(tuán)隊(duì)里一位老哥提了一句“這種場(chǎng)景用Fscan不就完事了” 這才讓我真正開(kāi)始重視起這個(gè)工具。Fscan一個(gè)用Go語(yǔ)言寫(xiě)成的內(nèi)網(wǎng)綜合掃描工具在安全圈子里名氣不小。它最大的特點(diǎn)就是“快”和“全”??焓且?yàn)镚o語(yǔ)言天生的高并發(fā)優(yōu)勢(shì)能在極短時(shí)間內(nèi)完成大網(wǎng)段的端口掃描。全是因?yàn)樗闪硕丝趻呙?、服?wù)識(shí)別、弱口令爆破、漏洞檢測(cè)等多種功能于一身一個(gè)工具就能覆蓋內(nèi)網(wǎng)信息收集的大部分需求。對(duì)于安全工程師、滲透測(cè)試人員甚至是運(yùn)維人員來(lái)說(shuō)它就像一把瑞士軍刀在需要快速摸清內(nèi)網(wǎng)資產(chǎn)、發(fā)現(xiàn)安全隱患時(shí)能提供極大的便利。這篇文章我就結(jié)合自己多次在Windows環(huán)境下部署和使用Fscan的實(shí)際經(jīng)驗(yàn)從頭到尾帶你走一遍。從為什么選擇它到如何繞過(guò)安裝中的各種“坑”再到核心功能的實(shí)戰(zhàn)詳解和高級(jí)技巧最后分享一些我踩過(guò)的雷和總結(jié)出的高效用法。無(wú)論你是剛?cè)腴T(mén)的安全愛(ài)好者還是需要快速提升內(nèi)網(wǎng)評(píng)估效率的從業(yè)者相信都能從中找到可以直接“抄作業(yè)”的干貨。2. Windows環(huán)境下Fscan的安裝與配置避坑指南在Windows上安裝Fscan聽(tīng)起來(lái)就是下載一個(gè)exe文件然后雙擊運(yùn)行那么簡(jiǎn)單。但實(shí)際操作中如果你完全按照網(wǎng)上一些過(guò)時(shí)的教程來(lái)大概率會(huì)卡在第一步。下面我詳細(xì)拆解整個(gè)過(guò)程并重點(diǎn)說(shuō)明那些容易被忽略的細(xì)節(jié)。2.1 獲取正確的可執(zhí)行文件Fscan是一個(gè)開(kāi)源項(xiàng)目其官方發(fā)布地址在GitHub。這里有一個(gè)關(guān)鍵點(diǎn)不要直接去下載源碼編譯除非你明確需要修改代碼。對(duì)于絕大多數(shù)使用者直接下載作者編譯好的Release版本是最佳選擇。訪問(wèn)發(fā)布頁(yè)打開(kāi)瀏覽器訪問(wèn)Fscan的GitHub Releases頁(yè)面。你可以通過(guò)搜索引擎找到正確的項(xiàng)目地址。選擇版本通常選擇最新的穩(wěn)定版Stable Release。向下滾動(dòng)到“Assets”部分你會(huì)看到一系列文件。下載對(duì)應(yīng)版本對(duì)于Windows系統(tǒng)你需要下載文件名中包含windows_amd64或_windows字樣的壓縮包例如fscan_1.8.2_windows_amd64.zip。amd64代表了64位系統(tǒng)這也是目前主流Windows系統(tǒng)的架構(gòu)。注意網(wǎng)絡(luò)上流傳著一些被二次打包或修改過(guò)的Fscan版本存在植入后門(mén)的風(fēng)險(xiǎn)。務(wù)必從官方或可信的渠道獲取下載后可以校驗(yàn)文件的SHA256哈希值是否與發(fā)布頁(yè)公布的一致。2.2 解壓與“丟失MSVCRT”的經(jīng)典錯(cuò)誤下載的ZIP包解壓后你通常會(huì)得到一個(gè)單獨(dú)的fscan.exe文件。很多教程到這里就說(shuō)“可以直接運(yùn)行了”。但當(dāng)你興沖沖地雙擊或在CMD里輸入fscan.exe時(shí)可能會(huì)彈出一個(gè)錯(cuò)誤對(duì)話框“無(wú)法啟動(dòng)此程序因?yàn)橛?jì)算機(jī)中丟失 VCRUNTIME140.dll” 或 “MSVCRT.dll not found”。這個(gè)錯(cuò)誤的根源在于Fscan是用Go編譯的但Go程序在Windows上靜態(tài)鏈接C庫(kù)方面存在一些歷史問(wèn)題部分版本編譯出的exe可能依賴(lài)于微軟的Visual C Redistributable運(yùn)行時(shí)庫(kù)。解決方案不是去網(wǎng)上單獨(dú)下載那個(gè)dll文件而是安裝運(yùn)行庫(kù)最一勞永逸的方法是安裝Microsoft Visual C Redistributable for Visual Studio。你可以從微軟官方下載。通常安裝最新版的VC_redist.x64.exe對(duì)應(yīng)64位系統(tǒng)即可解決絕大多數(shù)此類(lèi)問(wèn)題。安裝完成后重新打開(kāi)命令行窗口再運(yùn)行Fscan這個(gè)錯(cuò)誤就應(yīng)該消失了。2.3 環(huán)境變量配置可選但推薦為了能在任何目錄下方便地調(diào)用Fscan建議將其所在目錄添加到系統(tǒng)的PATH環(huán)境變量中。將解壓得到的fscan.exe放在一個(gè)你喜歡的固定位置例如D:\Tools\Fscan\。右鍵點(diǎn)擊“此電腦” - “屬性” - “高級(jí)系統(tǒng)設(shè)置” - “環(huán)境變量”。在“系統(tǒng)變量”部分找到并選中Path點(diǎn)擊“編輯”。點(diǎn)擊“新建”將你的Fscan目錄路徑例如D:\Tools\Fscan添加進(jìn)去。一路點(diǎn)擊“確定”保存。配置完成后打開(kāi)一個(gè)新的命令提示符CMD或PowerShell直接輸入fscan并按回車(chē)。如果看到Fscan的幫助信息輸出說(shuō)明安裝和配置成功。這一步的好處是無(wú)論你在哪個(gè)目錄進(jìn)行滲透測(cè)試或安全檢查都可以直接調(diào)用fscan命令無(wú)需再輸入冗長(zhǎng)的絕對(duì)路徑。3. 核心功能實(shí)戰(zhàn)詳解從基礎(chǔ)掃描到漏洞探測(cè)安裝配置妥當(dāng)我們終于可以開(kāi)始使用Fscan了。它的功能雖多但核心使用邏輯是清晰的。我們通過(guò)幾個(gè)由淺入深的場(chǎng)景來(lái)逐一拆解。3.1 基礎(chǔ)存活探測(cè)與端口掃描這是最常用的功能目的是快速發(fā)現(xiàn)內(nèi)網(wǎng)中存活的主機(jī)及其開(kāi)放的端口。命令示例與解析fscan -h 192.168.1.1/24-h 這是指定目標(biāo)的主參數(shù)。后面的192.168.1.1/24是CIDR格式的網(wǎng)段表示掃描192.168.1.1到192.168.1.254這個(gè)范圍。執(zhí)行過(guò)程 Fscan會(huì)首先對(duì)這個(gè)網(wǎng)段進(jìn)行ICMP Ping探測(cè)如果未被防火墻禁止快速找出存活主機(jī)。然后對(duì)存活的IP并發(fā)進(jìn)行常用端口的TCP連接掃描。輸出內(nèi)容 你會(huì)看到類(lèi)似192.168.1.105 open port [22]這樣的結(jié)果告訴你哪個(gè)IP的哪個(gè)端口是開(kāi)放的。進(jìn)階用法指定端口范圍fscan -h 192.168.1.100-200 -p 1-1000。-p參數(shù)用于指定端口這里掃描IP范圍100到200端口范圍1到1000。掃描單個(gè)IPfscan -h 10.0.0.5從文件讀取目標(biāo)fscan -hf ip.txt。-hf參數(shù)指定一個(gè)文件文件內(nèi)容每行一個(gè)IP或網(wǎng)段。這在目標(biāo)較多時(shí)非常方便。實(shí)戰(zhàn)技巧 在內(nèi)網(wǎng)掃描時(shí)ICMP可能被禁用。Fscan的默認(rèn)掃描策略是“先Ping再掃端口”。如果Ping不通它會(huì)默認(rèn)跳過(guò)嗎這里有個(gè)細(xì)節(jié)Fscan的默認(rèn)行為是如果Ping不通它仍然會(huì)嘗試掃描你指定的端口。但你可以通過(guò)-np參數(shù)來(lái)禁止Ping探測(cè)直接進(jìn)行端口掃描這在某些環(huán)境下可能更高效或更隱蔽。3.2 服務(wù)識(shí)別與弱口令爆破Fscan不僅僅是個(gè)端口掃描器它能在發(fā)現(xiàn)開(kāi)放端口后自動(dòng)嘗試識(shí)別其上運(yùn)行的服務(wù)如SSH, RDP, MySQL, Redis等并針對(duì)支持的服務(wù)進(jìn)行弱口令爆破。命令示例fscan -h 192.168.1.0/24 -pwdf pwd.txt -userf user.txt-pwdf和-userf 分別指定密碼字典文件和用戶名字典文件。當(dāng)Fscan識(shí)別出某個(gè)服務(wù)如MySQL的3306端口時(shí)會(huì)自動(dòng)加載這些字典進(jìn)行爆破嘗試。爆破邏輯與字典準(zhǔn)備服務(wù)識(shí)別 Fscan連接端口后會(huì)發(fā)送特定的探測(cè)報(bào)文根據(jù)返回的Banner信息判斷服務(wù)類(lèi)型準(zhǔn)確率很高。觸發(fā)爆破 一旦識(shí)別出是支持爆破的服務(wù)如SSH、RDP、SMB、MySQL、MSSQL、FTP、Redis等就會(huì)啟動(dòng)爆破模塊。字典質(zhì)量是關(guān)鍵user.txt和pwd.txt的內(nèi)容直接決定爆破效率。一個(gè)高效的字典應(yīng)該包含目標(biāo)環(huán)境常見(jiàn)的用戶名如admin, root, administrator, test和弱密碼如123456, admin123, 空密碼以及公司名、產(chǎn)品名等組合。實(shí)戰(zhàn)心得 爆破會(huì)產(chǎn)生大量網(wǎng)絡(luò)連接和登錄嘗試容易被安全設(shè)備告警。在授權(quán)測(cè)試中這是一個(gè)有效的發(fā)現(xiàn)手段但在非授權(quán)環(huán)境中這是高風(fēng)險(xiǎn)行為。另外Fscan的爆破模塊是內(nèi)置的常見(jiàn)服務(wù)協(xié)議對(duì)于Web登錄口如OA、CMS后臺(tái)的爆破它不是專(zhuān)門(mén)工具需要配合其他工具如Burp Suite使用。3.3 漏洞檢測(cè)模塊的使用這是Fscan的另一個(gè)亮點(diǎn)它集成了一些常見(jiàn)漏洞的探測(cè)POC例如Weblogic反序列化、ThinkPHP RCE、Redis未授權(quán)訪問(wèn)、Shiro反序列化等。命令示例fscan -h 192.168.1.0/24 -vul-vul 這個(gè)參數(shù)會(huì)啟用漏洞掃描模塊。Fscan在掃描過(guò)程中如果發(fā)現(xiàn)對(duì)應(yīng)服務(wù)如探測(cè)到Weblogic的7001端口會(huì)自動(dòng)運(yùn)行內(nèi)置的漏洞檢測(cè)腳本。漏洞檢測(cè)原理與局限原理 每個(gè)漏洞POC本質(zhì)上是一段編寫(xiě)好的檢測(cè)代碼它會(huì)向目標(biāo)發(fā)送精心構(gòu)造的請(qǐng)求包然后根據(jù)返回包的內(nèi)容、狀態(tài)碼、特征字符串等來(lái)判斷漏洞是否存在。優(yōu)勢(shì) 自動(dòng)化、快速可以在資產(chǎn)普查階段一次性發(fā)現(xiàn)多種常見(jiàn)高危漏洞提高效率。局限覆蓋度 它只能檢測(cè)其內(nèi)置POC的漏洞不是全面的漏洞掃描器如Nessus, AWVS。準(zhǔn)確性 漏洞檢測(cè)可能存在誤報(bào)和漏報(bào)。一個(gè)POC說(shuō)存在漏洞仍需手動(dòng)驗(yàn)證。風(fēng)險(xiǎn)性 有些漏洞檢測(cè)POC可能帶有攻擊性可能對(duì)目標(biāo)服務(wù)造成影響如導(dǎo)致服務(wù)短暫不可用。在正式生產(chǎn)環(huán)境掃描前務(wù)必在測(cè)試環(huán)境驗(yàn)證并明確獲得授權(quán)。使用建議 將-vul參數(shù)視為一個(gè)“快速風(fēng)險(xiǎn)篩查”工具。它的結(jié)果是一個(gè)重要的線索但絕不是最終結(jié)論。對(duì)于它報(bào)告的風(fēng)險(xiǎn)點(diǎn)安全工程師需要手動(dòng)進(jìn)行深入驗(yàn)證和評(píng)估。4. 高級(jí)參數(shù)與實(shí)戰(zhàn)場(chǎng)景組合拳掌握了基礎(chǔ)功能后通過(guò)組合不同的參數(shù)Fscan能適應(yīng)更復(fù)雜的實(shí)戰(zhàn)場(chǎng)景。下面這些參數(shù)是我在項(xiàng)目中經(jīng)常用到的。4.1 控制掃描速度與隱蔽性掃描行為會(huì)留下日志過(guò)快的掃描可能觸發(fā)防護(hù)設(shè)備。Fscan提供了控制開(kāi)關(guān)。-t 指定并發(fā)線程數(shù)。默認(rèn)值可能較高如1000在敏感網(wǎng)絡(luò)中可以調(diào)低如-t 100以降低流量峰值和被發(fā)現(xiàn)的風(fēng)險(xiǎn)。-timeout 設(shè)置連接超時(shí)時(shí)間秒。對(duì)于網(wǎng)絡(luò)延遲大或防火墻策略嚴(yán)格的網(wǎng)絡(luò)可以適當(dāng)調(diào)高如-timeout 5避免因超時(shí)漏報(bào)。-nopoc 如果不希望進(jìn)行漏洞掃描只做資產(chǎn)發(fā)現(xiàn)和弱口令檢測(cè)可以加上此參數(shù)。-nobr 禁用弱口令爆破模塊。當(dāng)你只想安靜地做一次資產(chǎn)清點(diǎn)不想觸發(fā)任何登錄告警時(shí)這個(gè)參數(shù)很管用。場(chǎng)景示例——安靜的資產(chǎn)普查fscan -h 10.10.10.0/24 -t 50 -timeout 3 -nobr -nopoc這個(gè)命令以較低的并發(fā)和超時(shí)設(shè)置只進(jìn)行端口掃描和服務(wù)識(shí)別不爆破不掃漏洞相對(duì)更隱蔽。4.2 結(jié)果輸出與后續(xù)處理默認(rèn)情況下Fscan的結(jié)果會(huì)輸出到控制臺(tái)。但對(duì)于大型掃描任務(wù)我們需要將結(jié)果保存下來(lái)進(jìn)行分析。-o 指定結(jié)果輸出文件。例如-o result.txt所有掃描結(jié)果存活I(lǐng)P、開(kāi)放端口、爆破成功憑證、漏洞信息都會(huì)寫(xiě)入這個(gè)文件。結(jié)果格式 輸出文件是文本格式但結(jié)構(gòu)清晰。通常包含[]開(kāi)頭的成功發(fā)現(xiàn)[-]或[*]開(kāi)頭的進(jìn)度或信息提示。你可以用文本編輯器或腳本如Python、PowerShell對(duì)結(jié)果進(jìn)行過(guò)濾、整理。例如用findstr “\[\]” result.txt可以快速過(guò)濾出所有成功的發(fā)現(xiàn)。用findstr “mysql” result.txt可以找出所有和MySQL相關(guān)的信息。實(shí)戰(zhàn)技巧——結(jié)果篩選與利用 掃描完成后我習(xí)慣用一條命令快速提取所有成功的SSH爆破結(jié)果findstr “ssh.*success” result.txt然后可以將這些IP和密碼整理成一個(gè)列表用于后續(xù)的橫向移動(dòng)測(cè)試。同樣提取出所有開(kāi)放445端口SMB的IP可以專(zhuān)門(mén)用于MS17-010永恒之藍(lán)等漏洞的針對(duì)性檢測(cè)。4.3 針對(duì)特定服務(wù)的深度掃描有時(shí)我們只關(guān)心某幾類(lèi)資產(chǎn)比如數(shù)據(jù)庫(kù)服務(wù)器或Web服務(wù)器。端口篩選 使用-p參數(shù)精確指定端口。例如只掃描Web和數(shù)據(jù)庫(kù)常見(jiàn)端口fscan -h 192.168.2.0/24 -p 80,443,8080,8000,3306,1433,5432,6379,27017模塊化思維 Fscan雖然全能但在深度測(cè)試中我們常將其作為“偵察機(jī)”。用它快速定位目標(biāo)哪些IP開(kāi)了Web哪些IP有MySQL然后再用專(zhuān)業(yè)工具進(jìn)行深度測(cè)試。對(duì)于Web服務(wù)用瀏覽器訪問(wèn)或使用AWVS、Xray進(jìn)行漏洞掃描。對(duì)于數(shù)據(jù)庫(kù)用Navicat、DBeaver連接或使用sqlmap進(jìn)行注入測(cè)試。對(duì)于成功爆破的SSH/RDP直接連接進(jìn)行后續(xù)操作。5. 常見(jiàn)問(wèn)題排查與我的踩坑記錄即使按照步驟操作在實(shí)際使用中還是會(huì)遇到各種問(wèn)題。這里分享幾個(gè)我親身踩過(guò)的坑和解決方案。5.1 掃描無(wú)結(jié)果或結(jié)果異常少現(xiàn)象 輸入命令后程序很快結(jié)束輸出結(jié)果寥寥無(wú)幾甚至只有開(kāi)始和結(jié)束提示。排查思路檢查網(wǎng)絡(luò)連通性 首先用ping命令測(cè)試一下到目標(biāo)網(wǎng)段的網(wǎng)關(guān)或已知存活I(lǐng)P是否通。如果不通可能是當(dāng)前主機(jī)不在目標(biāo)網(wǎng)絡(luò)或者有網(wǎng)絡(luò)策略限制。檢查防火墻 Windows Defender防火墻或第三方安全軟件可能會(huì)阻止Fscan對(duì)外發(fā)起大量連接。嘗試暫時(shí)關(guān)閉防火墻進(jìn)行測(cè)試測(cè)試后請(qǐng)記得開(kāi)啟。更穩(wěn)妥的方法是將Fscan的程序文件添加到防火墻的白名單中。使用-debug模式 在命令后加上-debug參數(shù)Fscan會(huì)輸出更詳細(xì)的運(yùn)行日志包括它正在掃描哪個(gè)IP、哪個(gè)端口連接失敗的原因是什么。這是最強(qiáng)大的調(diào)試手段。fscan -h 192.168.1.1 -debug嘗試掃描本機(jī)或已知存活主機(jī) 用fscan -h 127.0.0.1或fscan -h [你的本機(jī)IP]來(lái)驗(yàn)證工具本身是否工作正常。5.2 弱口令爆破成功率極低現(xiàn)象 明明看到掃描到了很多MySQL、RDP服務(wù)但爆破模塊幾乎沒(méi)有成功記錄。原因分析與解決字典問(wèn)題最常見(jiàn) 你的user.txt和pwd.txt字典內(nèi)容不匹配目標(biāo)環(huán)境。內(nèi)網(wǎng)系統(tǒng)的用戶名常常不是簡(jiǎn)單的admin/root可能是員工姓名拼音、工號(hào)或者系統(tǒng)自定義的用戶名。密碼也可能符合公司的統(tǒng)一密碼策略。嘗試使用更貼近目標(biāo)環(huán)境的字典或者在爆破前先進(jìn)行簡(jiǎn)單的信息收集如通過(guò)LDAP查詢用戶名列表。賬戶鎖定策略 目標(biāo)系統(tǒng)可能設(shè)置了賬戶鎖定閾值例如連續(xù)錯(cuò)誤5次鎖定15分鐘。Fscan的爆破是并發(fā)的很容易瞬間觸發(fā)鎖定導(dǎo)致后續(xù)即使使用正確密碼也無(wú)法登錄。對(duì)于這種環(huán)境需要使用-t參數(shù)大幅降低并發(fā)線程數(shù)并增加-timeout和嘗試間隔如果工具支持來(lái)模擬低速爆破。協(xié)議或端口識(shí)別錯(cuò)誤 雖然不常見(jiàn)但Fscan的服務(wù)識(shí)別可能出錯(cuò)。例如一個(gè)非標(biāo)準(zhǔn)端口運(yùn)行著Web服務(wù)但Fscan可能沒(méi)識(shí)別出來(lái)也就不會(huì)用HTTP爆破模塊去嘗試。此時(shí)需要手動(dòng)驗(yàn)證。5.3 程序運(yùn)行崩潰或無(wú)響應(yīng)現(xiàn)象 掃描過(guò)程中程序突然退出或卡住不動(dòng)??赡茉騼?nèi)存不足 掃描非常大的網(wǎng)段如/16且使用高線程并發(fā)時(shí)可能會(huì)占用較多內(nèi)存??梢試L試減小掃描范圍或降低線程數(shù)-t。網(wǎng)絡(luò)波動(dòng)或目標(biāo)拒絕 掃描到某個(gè)特定IP或端口時(shí)對(duì)方的響應(yīng)可能導(dǎo)致程序處理異常。使用-debug模式運(yùn)行看崩潰前最后掃描的目標(biāo)是什么然后單獨(dú)對(duì)這個(gè)目標(biāo)進(jìn)行掃描看是否能復(fù)現(xiàn)問(wèn)題。殺毒軟件干擾 一些激進(jìn)的安全軟件會(huì)將Fscan的行為判定為惡意攻擊直接終止進(jìn)程。將Fscan所在目錄添加到殺毒軟件的排除列表中是必要的操作。版本Bug 嘗試退回到之前一個(gè)穩(wěn)定的Release版本看問(wèn)題是否解決??梢栽贕itHub的Issues頁(yè)面搜索是否有其他人遇到類(lèi)似問(wèn)題。6. 效率提升編寫(xiě)批處理與自動(dòng)化掃描腳本手動(dòng)輸入命令只適合臨時(shí)、小范圍的掃描。對(duì)于定期巡檢或大型內(nèi)網(wǎng)評(píng)估我們需要自動(dòng)化。6.1 基礎(chǔ)批處理腳本在Windows上最簡(jiǎn)單的自動(dòng)化就是編寫(xiě)一個(gè).bat批處理文件。示例scan_campus.batecho off echo 開(kāi)始掃描辦公區(qū)網(wǎng)絡(luò)... fscan -h 10.10.1.0/24 -t 200 -o result_office_%date:~0,4%%date:~5,2%%date:~8,2%.txt echo 開(kāi)始掃描研發(fā)區(qū)網(wǎng)絡(luò)... fscan -h 10.10.2.0/24 -t 200 -o result_rd_%date:~0,4%%date:~5,2%%date:~8,2%.txt echo 開(kāi)始掃描服務(wù)器區(qū)網(wǎng)絡(luò)... fscan -h 10.10.3.0/24 -t 200 -nobr -o result_server_%date:~0,4%%date:~5,2%%date:~8,2%.txt echo 所有掃描任務(wù)完成。 pause這個(gè)腳本會(huì)依次掃描三個(gè)網(wǎng)段并使用當(dāng)前日期為結(jié)果文件命名方便歸檔。-nobr參數(shù)用于服務(wù)器區(qū)避免不必要的爆破告警。6.2 結(jié)合PowerShell進(jìn)行結(jié)果分析掃描完成后我們可以用PowerShell快速分析結(jié)果。例如找出所有爆破成功的RDP記錄# 讀取掃描結(jié)果文件 $content Get-Content -Path .\result_office_20231027.txt # 過(guò)濾出包含“rdp”和“success”的行 $successRdp $content | Select-String -Pattern “rdp.*success” # 輸出結(jié)果 if ($successRdp) { Write-Host “發(fā)現(xiàn)成功的RDP爆破記錄” -ForegroundColor Red $successRdp } else { Write-Host “未發(fā)現(xiàn)成功的RDP爆破記錄?!?-ForegroundColor Green }更進(jìn)一步可以將這些成功記錄自動(dòng)整理成表格或者導(dǎo)出為CSV文件用于生成報(bào)告。6.3 定時(shí)任務(wù)與自動(dòng)化巡檢對(duì)于需要定期如每周一次進(jìn)行的內(nèi)部安全巡檢可以利用Windows的“任務(wù)計(jì)劃程序”來(lái)定時(shí)執(zhí)行你的掃描腳本。創(chuàng)建一個(gè)包含完整Fscan命令的批處理文件weekly_scan.bat。打開(kāi)“任務(wù)計(jì)劃程序”創(chuàng)建基本任務(wù)。設(shè)置觸發(fā)器為“每周”選擇具體時(shí)間和日期。設(shè)置操作為“啟動(dòng)程序”選擇你的weekly_scan.bat文件。在“條件”和“設(shè)置”選項(xiàng)卡中可以配置如“只有在以下網(wǎng)絡(luò)連接可用時(shí)才啟動(dòng)”等選項(xiàng)確保任務(wù)只在公司內(nèi)網(wǎng)執(zhí)行。這樣每周的固定時(shí)間系統(tǒng)就會(huì)自動(dòng)執(zhí)行一次內(nèi)網(wǎng)資產(chǎn)與風(fēng)險(xiǎn)掃描并將結(jié)果保存在指定位置。你只需要定期查看結(jié)果文件即可極大地解放了人力。7. 法律邊界與合規(guī)使用指南技術(shù)本身無(wú)罪但如何使用技術(shù)決定了行為的性質(zhì)。Fscan作為一個(gè)強(qiáng)大的內(nèi)網(wǎng)掃描工具在使用時(shí)必須嚴(yán)格遵循法律和道德規(guī)范。核心原則授權(quán)授權(quán)授權(quán)絕對(duì)禁止未經(jīng)授權(quán)掃描 任何對(duì)不屬于你自己或未獲得明確書(shū)面授權(quán)的網(wǎng)絡(luò)、系統(tǒng)、設(shè)備進(jìn)行掃描、探測(cè)、爆破的行為都可能違反《網(wǎng)絡(luò)安全法》、《刑法》等相關(guān)法律法規(guī)構(gòu)成“非法侵入計(jì)算機(jī)信息系統(tǒng)罪”或“非法獲取計(jì)算機(jī)信息系統(tǒng)數(shù)據(jù)罪”等。明確授權(quán)范圍 即使獲得了授權(quán)也必須嚴(yán)格在授權(quán)范圍內(nèi)進(jìn)行測(cè)試。授權(quán)書(shū)應(yīng)明確標(biāo)注測(cè)試目標(biāo)IP范圍、測(cè)試時(shí)間窗口、可使用的技術(shù)手段是否允許爆破、漏洞利用等。超出范圍的任何操作都是非法的。內(nèi)部使用規(guī)范僅用于安全評(píng)估 在公司內(nèi)部Fscan應(yīng)僅由安全團(tuán)隊(duì)或授權(quán)運(yùn)維人員用于合法的安全風(fēng)險(xiǎn)評(píng)估、漏洞排查、資產(chǎn)梳理等目的。避免影響業(yè)務(wù) 掃描時(shí)特別是使用-t高并發(fā)線程、-vul漏洞探測(cè)或弱口令爆破時(shí)可能對(duì)目標(biāo)服務(wù)器造成性能壓力甚至服務(wù)中斷。務(wù)必在業(yè)務(wù)低峰期如深夜進(jìn)行或提前與業(yè)務(wù)部門(mén)溝通。保護(hù)掃描結(jié)果 掃描結(jié)果包含公司內(nèi)部的資產(chǎn)信息、潛在漏洞、甚至弱口令屬于敏感數(shù)據(jù)。必須妥善保管禁止泄露。報(bào)告完成后應(yīng)及時(shí)從測(cè)試機(jī)器上刪除原始的、包含敏感信息的掃描結(jié)果文件。個(gè)人學(xué)習(xí)與測(cè)試 如果你想學(xué)習(xí)Fscan的使用必須在自己的實(shí)驗(yàn)環(huán)境中進(jìn)行??梢源罱ㄌ摂M機(jī)環(huán)境如使用VMware或VirtualBox構(gòu)建一個(gè)包含Windows、Linux及各種服務(wù)的隔離網(wǎng)絡(luò)在這個(gè)完全由你控制的“沙箱”里進(jìn)行任意測(cè)試。記住工具是手臂的延伸而法律和道德是行為的邊界。一個(gè)合格的安全從業(yè)者首先是合規(guī)的守護(hù)者。8. 橫向?qū)Ρ扰c工具生態(tài)定位最后我們來(lái)聊聊Fscan在工具鏈中的位置。它不是一個(gè)“銀彈”而是特定場(chǎng)景下的“利器”。Fscan vs. NmapNmap 是端口掃描領(lǐng)域的“王者”協(xié)議支持極其廣泛腳本引擎NSE功能強(qiáng)大探測(cè)精度高結(jié)果輸出格式豐富。但它的弱口令爆破、漏洞檢測(cè)功能相對(duì)分散或需要依賴(lài)外部腳本且在大規(guī)模掃描時(shí)純Nmap腳本的并發(fā)效率可能不如Go編寫(xiě)的Fscan。Fscan 優(yōu)勢(shì)在于“開(kāi)箱即用”和“速度”。它把內(nèi)網(wǎng)滲透中高頻使用的功能端口掃描、服務(wù)識(shí)別、常見(jiàn)協(xié)議爆破、主流漏洞POC打包在一起一條命令就能啟動(dòng)全面的偵察。對(duì)于需要快速摸清內(nèi)網(wǎng)狀況、尋找薄弱點(diǎn)的場(chǎng)景Fscan的效率更高。如何選擇追求全面、精準(zhǔn)、可定制化掃描 選擇Nmap深入學(xué)習(xí)它的各種參數(shù)和NSE腳本。追求快速內(nèi)網(wǎng)資產(chǎn)發(fā)現(xiàn)、弱口令與常見(jiàn)漏洞篩查 Fscan是更優(yōu)選擇。最佳實(shí)踐 在實(shí)際項(xiàng)目中我常將兩者結(jié)合。先用Fscan進(jìn)行快速初篩定位出可疑的IP和服務(wù)。然后針對(duì)這些重點(diǎn)目標(biāo)使用Nmap進(jìn)行更精細(xì)化的版本探測(cè)和深度漏洞掃描使用專(zhuān)門(mén)的NSE腳本。兩者互補(bǔ)能覆蓋從廣域偵察到重點(diǎn)突破的全過(guò)程。Fscan就像一把鋒利的戰(zhàn)術(shù)匕首在近身格斗內(nèi)網(wǎng)滲透時(shí)能快速解決戰(zhàn)斗。而Nmap更像一個(gè)多功能軍刀功能更多但在某些特定場(chǎng)景下拔出匕首的速度更快。理解每件工具的特性并在正確的場(chǎng)景使用它才是提升工作效率和安全能力的關(guān)鍵。