在現今高度連網的環境下,無線網路和雲端系統的安全性至關重要。本文將探討如何利用各種工具和技術進行安全偵測,涵蓋無線網路偵測、雲端安全分析、網路資訊收集和掃描技術等導向。首先,我們會介紹 Airodump-ng 和 Kismet 等無線網路偵測工具,說明如何設定監聽模式、捕捉網路流量和分析無線網路的結構。接著,我們將探討 Gitleaks 和 CloudBrute 等雲端安全工具,示範如何檢測程式碼儲存函式庫中的敏感資訊洩露以及如何在多雲環境中發現潛在的安全風險。此外,本文還會介紹網路資訊收集的關鍵步驟,包括 DNS 網域名稱列舉、使用 Shodan 進行開源情報收集以及無線網路資訊收集。同時,我們也會分享網路資訊收集的最佳實務,例如強化 DNS 安全、整合 Shodan 和妥善管理雲端資產。最後,我們將探討掃描技術的實踐應用,例如使用 Nmap 進行埠掃描,並強調在進行任何安全測試時都必須遵守倫理規範和法律法規。
無線網路偵測技術
在現代資安領域中,無線網路的偵測技術是一個關鍵的部分。透過無線網路偵測,我們可以收集到大量的資訊,這些資訊可以幫助我們進行進一步的安全評估和漏洞挖掘。以下是一些常見的無線網路偵測工具及其使用方法。
利用Airodump-ng進行無線網路偵測
Airodump-ng 是 Aircrack-ng 套件中的一個強大工具,用於捕捉無線網路流量。它可以幫助我們收集無線網路的訊號,並分析其結構和弱點。
開啟監聽模式
首先,我們需要將無線網路卡設定為監聽模式(Monitor Mode)。這可以使用 iwconfig 命令來完成。
sudo iwconfig wlan0 mode monitor
設定成功後,使用 iwconfig 命令檢查,應該會看到 wlan0 介面名稱後面多了一個 mon 字樣,這表示介面已經進入監聽模式。
wlan0mon IEEE 802.11 Mode:Monitor Frequency:2.457 GHz Tx-Power=20 dBm
Retry short long limit:2 RTS thr:off Fragment thr:off Power Management:off
執行Airodump-ng
接下來,我們可以使用 airodump-ng 命令開始捕捉無線網路流量。以下是基本的使用方式:
sudo airodump-ng wlan0mon
這個命令會開始捕捉周圍所有可見的無線網路訊號,並顯示出每個網路的基本資訊,包括 BSSID、通道、加密方式等。
改變頻道範圍
Airodump-ng 預設會在 2.4 GHz 頻段進行捕捉。如果你需要在其他頻段或特定頻道上進行捕捉,可以使用以下選項:
sudo airodump-ng --ht20 --band abg wlan0mon
這裡 --ht20 指定 HT20 模式(802.11n),--band abg 指定頻段為 2.4GHz 和 5GHz。
捕捉特定BSSID
如果我們想要專注於特定的無線網路(BSSID),可以使用以下命令:
sudo airodump-ng -w cap1 --output-format pcap --bssid D0:21:F9:7D:40:C1 --channel 6 wlan0mon
這個命令會將捕捉到的資料寫入 cap1 檔案,格式為 pcap,並只顯示與 BSSID D0:21:F9:7D:40:C1 有關的流量。
Kismet:另一個強大的無線網路偵測工具
Kismet 是另一個功能強大的無線網路偵測工具。它不僅可以用來偵測 Wi-Fi 網路,還支援藍牙裝置和一些專用硬體擷取器。Kismet 在 Kali Linux 中預設已安裝。
啟動Kismet
啟動 Kismet 的方式非常簡單:
sudo kismet -c wlan0
這個命令會啟動 Kismet 的 Web 介面,並輸出一個 URL(通常是 http://localhost:2501),你可以透過瀏覽器存取這個 URL 來操作 Kismet。
Kismet 的主要功能
在 Kismet 的主控台中,你會看到所有被檢測到的裝置列表。你可以進一步分析每個裝置的詳細資訊,例如製造商、訊號強度等。
此圖示展示了Kismet主控台
graph TD;
A[Kismet] --> B[Wi-Fi Adapter];
B --> C[Device Detection];
B --> D[Sniffing];
B --> E[Wardriving];
C --> F[List of Detected Devices];
D --> G[Capture Network Traffic];
E --> H[Identify Access Points];
內容解密:
- Kismet:強大的無線網路偵測工具,支援多種裝置。
- Device Detection:檢測周圍的無線裝置。
- Sniffing:擷取無線網路流量。
- Wardriving:檢測和記錄周圍的 Wi-Fi 網路。
- List of Detected Devices:列出所有被檢測到的裝置。
- Capture Network Traffic:擷取並分析網路流量。
- Identify Access Points:識別和分析無線接入點。
無線網路偵測裝置
除了軟體工具外,還有許多硬體裝置可以用來進行無線網路偵測。例如 Wi-Fi Pineapple 是一款專業的無線網路攻擊工具,可以從 Hak5 購買或自行製作。
雲端環境中的偵測技術
隨著雲端服務的普及,雲端環境中的偵測技術也變得越來越重要。雲端環境中的偵測與傳統網路中的偵測有一些不同之處,但基本原則仍然相同:收集資訊並進行分析。
Gitleaks:專注於 GitHub 的敏感資料洩露
Gitleaks 是一個專門用來檢查 GitHub 儲存函式庫中的敏感資料洩露問題的工具。它可以幫助我們發現潛在的安全風險。
透過這些工具和技術,我們可以有效地進行無線網路和雲端環境中的偵測工作,從而提升整體安全性。
主題標題:技術偵察與工具使用
段落標題:Gitleaks 使用
在現代資訊安全中,企業經常使用 GitHub 等程式碼儲存函式庫來管理專案。然而,這些儲存函式庫中常會出現硬編碼的密碼、API 金鑰、Token 等敏感資訊。Gitleaks 是一款專門用來檢測這些硬編碼秘密的工具,特別適用於 Git 儲存函式庫。
次段落標題:Gitleaks 安裝與基本使用
在 Kali Linux 中,你可以透過以下指令來安裝 Gitleaks:
$ sudo apt install gitleaks
安裝完成後,建議先檢視 Gitleaks 的幫助頁面,瞭解其用法和可用選項:
$ gitleaks -h
Gitleaks 的幫助頁面會顯示如下內容:
Gitleaks scans code, past or present, for secrets
Usage:
gitleaks [command]
Available Commands:
completion Generate the autocompletion script for the specified shell
detect detect secrets in code
help Help about any command
protect protect secrets in code
version display gitleaks version
Flags:
-c, --config string config file path
--exit-code int exit code when leaks have been encountered (default 1)
-h, --help help for gitleaks
-l, --log-level string log level (debug, info, warn, error, fatal) (default "info")
--redact redact secrets from logs and stdout
-f, --report-format string output format (json, csv, sarif) (default "json")
-r, --report-path string report file
-s, --source string path to source (default: $PWD) (default ".")
-v, --verbose show verbose output from scan
這些選項和命令可以幫助你更靈活地使用 Gitleaks。
次段落標題:測試 Gitleaks
接下來,我們來測試 Gitleaks。以下是一個範例命令,它會對一個測試儲存函式庫進行檢測,並使用 -no-git 選項將儲存函式庫視為一般目錄,同時啟用詳細模式(-v):
$ gitleaks detect --no-git https://github.com/gitleakstest/gronit -v
當工具執行時,你會看到比對到的敏感資料被顯示出來。例如,可能會看到如下的輸出:
Figure 4.17 – Output from Gitleaks
這些資料可能包括 API 金鑰、密碼等敏感資訊。
次段落標題:應用場景
使用 Gitleaks 可以幫助你發現已提交的秘密,這些秘密可能在未來被用來取得目標資源的存取許可權。這對於維護資訊安全非常重要。
段落標題:CloudBrute 使用
CloudBrute 是一款多雲端的工具,可以在主要雲端提供者之間發現檔案和應用程式。它支援多種作業系統,並且在 Kali Linux 中可以透過以下指令安裝:
$ sudo apt install cloudbrute
次段落標題:CloudBrute 基本使用
CloudBrute 的用法需要提供多個引數。以下是一些主要的引數說明:
$ cloudbrute [-h|--help] -d|--domain "<value>" -k|--keyword "<value>"
-w|--wordlist "<value>" [-c|--cloud "<value>"]
[-t|--threads <integer>] [-T|--timeout <integer>] [-p|--proxy "<value>"]
[-a|--randomagent "<value>"] [-D|--debug]
[-q|--quite]
[-m|--mode "<value>"] [-o|--output "<value>"]
[-C|--configFolder "<value>"]
這些引數分別用來指定網域名稱、關鍵字、字典檔案路徑、雲端提供者、執行緒數量、請求超時時間、代理設定、模式等。
次段落標題:執行 CloudBrute
以下是一個範例命令,它會對 GitHub 網域名稱進行檢測,並使用特定的字典檔案進行搜尋:
$ cloudbrute -d github.com -k github -t 80 -T 10 -w /usr/share/cloudbrute/data/storage_small.txt -m storage
這個命令會顯示一個發現的儲存桶列表。例如:
Figure 4.18 – Output from CloudBrute
這些結果可以幫助你發現公開可存取的儲存桶。
段落標題:實踐應用與倫理考量
在進行技術偵察時,請務必記住倫理規範。偵察階段是資訊安全測試中最重要的一環,但絕對不能進行非法活動。以下是一些實踐建議:
- 深入瞭解工具:花時間瞭解 Gitleaks 和 CloudBrute 的詳細功能和用法。
- 合法操作:確保所有偵察活動都是合法且得到授權的。
- 持續學習:技術不斷進步,保持學習心態,掌握最新的安全工具和技術。
透過這些工具和方法,你可以更有效地進行技術偵察,發現潛在的安全隱患。
網路資訊收集與技術實作
網路資訊收集的基本步驟
在進行網路資訊收集時,以下是幾個關鍵步驟:
DNS 網域名稱列舉
- 使用
dnsrecon工具嘗試對zonetransfer.me網域名稱執行區域傳輸。 - 利用包含子網域名稱的檔案和
dnsenum工具,對zonetransfer.me網域名稱進行暴力破解攻擊。 - 如果擁有一個網域名稱,嘗試使用可用的 DNS 工具來列舉網域名稱的詳細資訊。
使用 Shodan 進行 OSINT(開源情報收集)
- 在 Shodan.io 上工作,發現已被 Shodan 索引的網路上存在的資料函式庫。例如,可以使用
product:MySQL作為搜尋篩選器。 - 是否能擴充套件篩選條件,尋找您所在國家的 MySQL 資料函式庫?
- 是否能找到任何允許遠端連線的 PostgreSQL 伺服器?提示:研究用於遠端連線的埠,並使用埠和 PostgreSQL 建立篩選條件。
- 是否能找到任何由 Shodan 索引的伺服器開放的檔案和目錄清單?提示:您的篩選條件涉及
http.title。
無線網路資訊收集
- 使用 Kismet,可以找出您所在區域內有多少無線網路存在?
- 在 Kismet 或 Airdump-ng 中,是否能看到您自己的裝置連線到您的無線網路?
網路資訊收集的最佳實踐
在進行網路資訊收集時,瞭解並遵循最佳實踐是保護系統免受攻擊的重要步驟。以下是一些關鍵措施:
- DNS 安全:公共 DNS 伺服器上列舉您的網域名稱是無法避免的。然而,保護區域傳輸至關重要。可以使用 DNSSEC 進一步保護 DNS,這需要對網域名稱查詢進行驗證。此外,將內部和外部 DNS 伺服器分離也能增強安全性。
- 整合 Shodan:許多人將 Shodan 視為一種進攻工具。然而,Shodan 可以用來發現組織內公開可存取的資產。將 Shodan 整合到安全加固流程中,確保正確保護導向公眾的資產。
- 雲端資產管理:雲端資產難以控制;然而,主要雲端提供商提供安全套件,可以幫助突顯安全組態錯誤。利用這些工具來保護雲端資產。在程式碼開發和提交秘密到公共儲存函式庫時,強制執行良好的安全控制。
掃描技術與實作
掃描階段在完成目標的資訊收集後開始。攻擊者開始掃描目標以找出系統和網路中的漏洞或弱點,這些漏洞或弱點可以被利用。此階段專注於透過不同技術來取得更多關於目標的詳細資訊,例如掃描埠、網路、Wi-Fi 和雲端環境。
技術需求
要跟隨本章節,您需要以下工具:
- Kali Linux 2022.1 或更高版本
- Nmap – 網路分析工具
- Metasploitable 2(一個容易被攻擊的虛擬機器)
- OpenVAS – 開放性漏洞掃描器
- inSSIDer
- Aircrack-ng
- Kismet
- cloud-enum
掃描技術
在倫理駭客中,掃描是方法的一部分。在倫理駭客的情報收集階段,您已經收集了目標資訊。為了獲得目標更深入的瞭解,您需要進行各種掃描活動。
網路掃描
網路掃描可以幫助識別處於線上狀態的主機、開放埠、執行服務等。現在,我們開始介紹一種常見且重要的掃描技術——埠掃描。
埠掃描
埠掃描涉及確定目標上哪些埠是開放和可存取的。這項活動類別似於敲門以檢視是否有人在家。當您進行埠掃描時,實質上是在檢查某個埠是否開放並正在監聽。
# 埠掃描範例
nmap -sT -p 1-65535 <target_ip>
內容解密:
上面這段程式碼示範如何使用 Nmap 工具進行 TCP 埠掃描(-sT 模式)對指定 IP 地址(<target_ip>)上的所有埠(1-65535)進行檢查。
Nmap 是一個強大且廣泛使用的網路探測和安全稽核工具。它能夠發現主機及其服務、作業系統版本等詳細資訊。
掃描最佳實踐
無論是進行被動還是主動資訊收集,採取合適的安全防護措施都是至關重要的一步。
效果與差異化觀點
- DNS 安全:列舉公共 DNS 伺服器上的網域名稱是不可避免的。保護區域傳輸至關重要。可以使用 DNSSEC 提供更高層次的安全性。
- Shodan 的整合:Shodan 不僅僅是一種攻擊工具,還能幫助發現組織內公開可存取的資產。建議將 Shodan 整合到安全加固流程中。
- 雲端資產管理:雖然雲端資產難以控制,但主要雲端提供商提供了安全套件來幫助突顯安全組態錯誤。
應對策略
以下策略可以用來應對常見威脅:
- DNS 安全性:公共 DNS 上列舉網域名稱不可避免。但保護區域傳輸至關重要。
- Shodan 的應用:Shodan 不僅僅是攻擊工具,還能幫助發現公開可存取資產。
- 雲端環境:主要雲端提供商提供安全套件來突顯組態錯誤。
透過這些策略和最佳實踐,我們可以更好地保護我們的系統和網路免受未經授權的攻擊。