三、web安全-信息收集

1、信息搜集的重要性

(1)明確攻擊面

信息搜集能讓滲透測試人員清晰地勾勒出目標系統的邊界,包括其網絡拓撲結構、開放的服務端口、運行的軟件系統等。例如,通過信息搜集發現目標企業除了對外提供官網服務外,還有一個內部員工使用的辦公系統暴露在公網,這就大大擴展了攻擊面,為測試人員提供了更多的潛在攻擊點。

(2)發現潛在漏洞線索

搜集到的信息中可能隱藏著目標系統存在的漏洞線索。比如,通過查看目標網站使用的軟件版本信息,發現其運行的某個開源內容管理系統(CMS)版本存在已知的高危漏洞,這為后續利用該漏洞進行滲透提供了明確的方向。

(3)制定針對性策略

基于全面的信息搜集,滲透測試人員可以制定出更具針對性的測試策略。如果了解到目標系統對某些特定的網絡協議或服務依賴程度較高,那么在測試過程中就可以重點圍繞這些方面展開,提高滲透測試的效率和成功率。

2、信息搜集的主要內容

2.1 目標基本信息

2.1.1 域名信息搜集:

包括域名的注冊人、注冊時間、到期時間、DNS服務器等。通過查詢域名信息,可以了解目標企業的網絡資產分布情況,以及是否存在域名劫持等潛在風險。例如,發現目標企業的一個重要業務子域名指向了一個可疑的IP地址,可能暗示著該子域名已被攻擊者控制。

2.1.2 IP地址信息搜集:

確定目標系統的IP地址范圍,了解其所屬的網絡運營商、地理位置等。IP地址信息有助于分析目標網絡的拓撲結構,以及判斷其是否使用了云服務、CDN等技術。

2.2 網絡架構信息

  • 網絡拓撲信息搜集

嘗試繪制目標網絡的拓撲結構圖,包括路由器、交換機、防火墻等網絡設備的位置和連接關系。了解網絡拓撲可以幫助測試人員找到網絡中的關鍵節點和薄弱環節,例如,發現某個核心交換機存在配置漏洞,可能導致整個子網面臨安全風險。

  • 開放端口和服務信息搜集

使用端口掃描工具(如Nmap)掃描目標系統的開放端口,并識別運行在這些端口上的服務。不同的服務可能存在不同的安全漏洞,例如,開放的SSH服務如果使用弱密碼,就容易被暴力破解。

2.3 系統和軟件信息

  • 操作系統類型和版本:通過分析目標系統返回的Banner信息、使用指紋識別工具(如Nmap的操作系統檢測功能)等方法,確定目標系統運行的操作系統類型(如Windows、Linux)和版本。不同操作系統版本的安全漏洞和防護機制存在差異,了解這些信息有助于選擇合適的攻擊手段。
  • 應用程序信息:識別目標系統上運行的各種應用程序,包括Web服務器(如Apache、Nginx)、數據庫管理系統(如MySQL、Oracle)、中間件(如Tomcat、WebLogic)等。同時,獲取這些應用程序的版本信息,以便查找已知的安全漏洞。
2.3.1 2.4 人員和組織信息
  • 員工信息:通過社交媒體、招聘網站、企業官網等渠道搜集目標企業員工的相關信息,如姓名、職位、聯系方式等。員工信息可能被用于社會工程學攻擊,例如,通過偽裝成企業內部員工發送釣魚郵件,誘使其他員工點擊惡意鏈接或下載惡意文件。
  • 組織架構和業務流程:了解目標企業的組織架構和業務流程,有助于發現潛在的安全風險點。例如,發現某個部門的業務系統涉及大量敏感數據的處理,但安全防護措施相對薄弱,就可能成為攻擊的重點目標。

3、信息搜集的常用方法

3.1 被動信息搜集

2.3.1搜索引擎查詢:利用Google、百度等搜索引擎的高級搜索語法,如“site:目標域名”“intitle:關鍵詞”等,查找與目標系統相關的公開信息。例如,通過搜索“site:example.com filetype:pdf”可以找到目標網站上公開的PDF文檔,其中可能包含敏感信息。

谷歌語法

Site指定域名
InurlURL中存在關鍵字的網頁
Intext網頁正文中的關鍵字
Filetype指定文件類型
Intitle網頁標題中的關鍵字
Linklink:baidu.com 即表示返回所有和baidu.com做了鏈接的URL
Info查詢指定站點的一些基本信息
cache搜索Google里關于某些內容的緩存

site:可以限制你搜索范圍的域名。

inurl:用于搜索網頁上包含的URL,這個語法對尋找網頁上的搜索、幫助之類的很有用。

intext: 只搜索網頁部分中包含的文字(也就是忽略了標題、URL等的文字)

intitle:查找關鍵字的頁面,一般用于社工別人的webshell密碼

filetype:搜索文件的后綴或者擴展名

link:可以得到一個所有包含了某個指定URL的頁面列表。

常用語法:
查找后臺地址:site:域名 intitle:管理 | intitle:后臺 | 登陸 | 用戶名 | 密碼 | 驗證碼 | 系統 | 賬號
查找可注入點:site:域名 inurl:edit | lead | editor | Files
查找上傳漏洞:site:域名 inurl:file | lead | editor | Files
存在的數據庫:site:域名 inurl:asp?id= | web | edit
查看腳本類型:site:域名 filetype:asp/jsp/php
讓搜索引擎入庫:inurl:cm/data/templates/images/index/

2.3.2社交媒體和公開數據庫:關注目標企業及其員工在社交媒體平臺上的動態,從中獲取有價值的信息。此外,還可以查詢一些公開的數據庫,如Whois數據庫、企業信用信息公示系統等,獲取域名注冊信息、企業基本信息等。

**2.3.3網絡爬蟲:**使用網絡爬蟲工具(如Scrapy)自動抓取目標網站的內容,分析網站的結構和數據。網絡爬蟲可以幫助發現網站中隱藏的頁面、敏感信息泄露等問題。

3.2 主動信息搜集

3.2.1端口掃描

使用Nmap等端口掃描工具對目標系統的IP地址范圍進行掃描,檢測開放的端口和運行的服務。端口掃描可以分為TCP掃描、UDP掃描等多種類型,根據不同的需求選擇合適的掃描方式。

(1)nmap工具功能
  • 判斷服務器類型
  • 探測開發端口
  • 探測使用框架
  • 探測使用中間件
  • 探測主機漏洞
(2)nmap,探測全端口tcp掃描
  • 掃描單個ip:nmap 127.0.0.1

  • 掃描多個ip:nmap 192.168.1.1 192.168.1.2

  • 掃描范圍:nmap 192.168.1.1 - 192.168.1.10

  • 從文件中掃描:nmap -iL 1.txt

  • 掃描C段:nmap 192.168.1.1/24

  • 掃描除了192.168.1.100的所有地址:nmap 192.168.1.1/24 -exclude 192.168.1.100

  • 指定掃描ip端口:nmap -p 80,443 192.168.1.1

  • 掃描c段存活ip端口:nmap -sP 192.168.1.1/24

  • 掃描操作系統版本識別:nmap -O 192.168.1.1

  • 掃描開放端口對應的服務:nmap -sV 192.168.1.1

  • 掃描常見漏洞、應用服務掃描:nmap --script=vuln 192.168.1.1

  • 暴力破解:nmap --script=brute 192.168.1.1 不ping

  • 掃描常見漏洞:nmap --script=vuln 192.168.1.1

  • 繞過防火墻端口掃描:nmap -Pn 127.0.0.1

(3)參數參考
參數說明
-sTTCP connect()掃描,這種方式會在目標主機的日志中記錄大批連接請求和錯誤信息。
-sS半開掃描,很少有系統能把它記入系統日志。不過,需要Root權限。
-sF -sN秘密FIN數據包掃描、Xmas Tree、Null掃描模式
-sPping掃描,Nmap在掃描端口時,默認都會使用ping掃描,只有主機存活,Nmap才會繼續掃描。
-sUUDP掃描,但UDP掃描是不可靠的。
-SA這項高級的掃描方法通常用來穿過防火墻的規則集
-sV探測端口服務版本
-Pn掃描之前不需要用ping命令,有些防火墻禁止ping命令。可以使用此選項進行掃描
-v顯示掃描過程,推薦使用
-h幫助選項,是最清楚的幫助文檔
-p指定端口,如1 - 65535, 1433, 135, 22, 80等
-O應用遠程操作系統檢測,存在多個結果和-A可以一起用
-ON/-OX/-OG將報告寫入文件,分別是正常、XML、grepable三種格式
-T4針對TCP端口禁止動態掃描延遲超過10ms
-iL讀取主機列表,例如:-iL C:\ip.txt
3.2.2 漏洞掃描

利用專業的漏洞掃描工具(如Nessus、OpenVAS)對目標系統進行全面的漏洞檢測。這些工具可以根據已知的漏洞數據庫,自動檢測目標系統存在的安全漏洞,并生成詳細的報告。

3.2.3 指紋識別

通過向目標系統發送特定的數據包,分析其返回的響應信息,識別目標系統的操作系統、應用程序類型和版本等信息。例如,使用Nmap的指紋識別功能可以快速準確地識別目標系統的相關信息。

3.2.3.1 信息搜集-win與linux識別

通過分析目標系統返回的Banner信息、使用指紋識別工具(如Nmap的操作系統檢測功能)等方法,確定目標系統運行的操作系統類型(如Windows、Linux)和版本。不同操作系統版本的安全漏洞和防護機制存在差異,了解這些信息有助于選擇合適的攻擊手段。

(1)區分大小寫

linux區分大小寫,win不區分大小寫。

(2)響應包

通過發送請求的響應包的server參數內容判斷服務器類型。

(3)ping

PING命令來查看TTL值從而判斷操作系統類型。

  • TTL=128,這是WINNT/2K/XP。
  • TTL=64,這是LINUX。
  • TTL=256,這是UNIX。

(4)nmap工具

  • 判斷服務器類型
  • 探測開發端口
  • 探測使用框架
  • 探測使用中間件
  • 探測主機漏洞
3.2.3.2 數據庫管理系統

根據開放的數據庫端口號判斷數據庫類型。

(1)關系型數據庫端口

  • Oracle — 1521
  • MySQL — 3306
  • Sybase — 5000
  • DB2 — 5000
  • PostgreSQL — 5432

(2)NOSQL數據庫端口

  • MongoDB — 27017
  • Redis — 6379
3.2.3.3 中間件
  • 響應包查看server使用的中間件
  • 通過數據庫類型推測常用中間件
  • 使用goby識別中間件、框架等信息
3.2.3.4 web指紋

(1)為什么收集web指紋?

  • web指紋是網站使用的cms,基于識別出來的cms進行漏洞挖掘,識別網站使用的cms,基于識別出來的cms已知漏洞搜索。

(2)在線識別&離線識別

  • 在線識別:https://finger.tidesec.com/
  • 離線識別:https://github.com/TideSec/TDFinger
3.2.3.5 子域名查詢
  • fofa、谷歌語法、在線子域查詢、oneforall、子域名挖掘機
    • fofa:www.fofa.so
    • 在線子域名:https://phpinfo.me/domain/
    • 子域名挖掘機:https://github.com/epii/domainFinder
    • oneforall:https://github.com/shmilylty/OneForAll
3.2.3.6 cdn識別
  • https://www.cnblogs.com/qiuhai/p/9763739.html
3.2.3.7 目錄掃描
  • 常用工具:御劍、Jsk、dirmap
    • Jsk:https://github.com/k8gege/Jskscan-WebPathBrute
    • 安裝教程
      • pip install -r requirement.txt
      • python dismap.py

4、信息搜集的注意事項

(1)合法合規

在進行信息搜集時,必須嚴格遵守法律法規和道德規范。未經授權的信息搜集行為可能構成違法犯罪,因此在開展滲透測試之前,一定要獲得目標企業的書面授權。

(2)隱蔽性

盡量減少信息搜集活動對目標系統的影響,避免引起目標系統的警覺。可以采用一些隱蔽的掃描技術和策略,如慢速掃描、隨機掃描等,降低被目標系統安全防護設備檢測到的概率。

(3)記錄和整理

對搜集到的信息進行詳細的記錄和整理,建立信息數據庫。這有助于在后續的滲透測試過程中快速查找和利用相關信息,提高測試效率。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/83160.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/83160.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/83160.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

生活小記啊

最近生活上的事情還是蠻多的,想到哪寫到哪。 工作 三月的某個周六,正在加班寫技術方案,大晚上寫完了聽到調動通知,要去新的團隊了。 還是蠻不舍的,看著產品從無到有,一路走過來,傾注了不少感…

vue-08(使用slot進行靈活的組件渲染)

使用slot進行靈活的組件渲染 作用域slot是 Vue.js 中的一種強大機制,它允許父組件自定義子組件內容的呈現。與僅向下傳遞數據的常規 props 不同,作用域 slot 為父級提供了一個模板,然后子級可以填充數據。這提供了高度的靈活性和可重用性&am…

MySQL索引與性能優化入門:讓查詢提速的秘密武器【MySQL系列】

本文將深入講解 MySQL 索引的底層原理、常見類型、使用技巧,并結合 EXPLAIN 工具分析查詢執行計劃,配合慢查詢日志識別瓶頸,逐步建立起系統的 MySQL 查詢優化知識體系。適合有一定基礎、希望在數據量增長或面試中脫穎而出的開發者閱讀。 一、…

C 語言開發中常見的開發環境

目錄 1.Dev-C 2.Visual Studio Code 3.虛擬機 Linux 環境 4.嵌入式 MCU 專用開發環境 1.Dev-C 使用集成的 C/C 開發環境(適合基礎學習),下載鏈接Dev-C下載 - 官方正版 - 極客應用 2.Visual Studio Code 結合 C/C 擴展 GCC/MinGW 編譯器&#xff0c…

STM32G4 電機外設篇(二) VOFA + ADC + OPAMP

目錄 一、STM32G4 電機外設篇(二) VOFA ADC OPAMP1 VOFA1.1 VOFA上位機顯示波形 2 ADC2.1 用ADC規則組對板載電壓和電位器進行采樣 3 OPAMP(運放)3.1 結合STM32內部運放和ADC來完成對三相電流的采樣3.2 運放電路分析 附學習參考…

再見Notepad++,你好Notepad--

Notepad-- 是一款國產開源的輕量級、跨平臺文本編輯器,支持 Window、Linux、macOS 以及國產 UOS、麒麟等操作系統。 除了具有常用編輯器的功能之外,Notepad-- 還內置了專業級的代碼對比功能,支持文件、文件夾、二進制文件的比對,支…

跳動的愛心

跳動的心形圖案&#xff0c;通過字符打印和延時效果模擬跳動&#xff0c;心形在兩種大小間交替跳動。 通過數學公式生成心形曲線 #include <stdio.h> #include <windows.h> // Windows 系統頭文件&#xff08;用于延時和清屏&#xff09; void printHeart(int …

2.2HarmonyOS NEXT高性能開發技術:編譯優化、內存管理與并發編程實踐

HarmonyOS NEXT高性能開發技術&#xff1a;編譯優化、內存管理與并發編程實踐 在HarmonyOS NEXT全場景設備開發中&#xff0c;高性能是跨端應用體驗的核心保障。本章節聚焦ArkCompiler編譯優化、內存管理工具及多線程并發編程三大技術模塊&#xff0c;結合實戰案例解析底層實現…

C# 類和繼承(使用基類的引用)

使用基類的引用 派生類的實例由基類的實例和派生類新增的成員組成。派生類的引用指向整個類對象&#xff0c;包括 基類部分。 如果有一個派生類對象的引用&#xff0c;就可以獲取該對象基類部分的引用&#xff08;使用類型轉換運算符把 該引用轉換為基類類型&#xff09;。類…

如何在騰訊云 OpenCloudOS 上安裝 Docker 和 Docker Compose

從你提供的 /etc/os-release 文件內容來看&#xff0c;你的服務器運行的是 OpenCloudOS 9.2。這是一個基于 CentOS 和 RHEL 的開源操作系統&#xff0c;因此它屬于 CentOS/RHEL 系列。 關鍵信息總結 操作系統名稱&#xff1a;OpenCloudOS版本&#xff1a;9.2ID&#xff1a;op…

趨勢直線指標

趨勢直線副圖和主圖指標&#xff0c;旨在通過技術分析工具幫助交易者識別市場趨勢和潛在的買賣點。 副圖指標&#xff1a;基于KDJ指標的交易策略 1. RSV值計算&#xff1a; - RSV&#xff08;未成熟隨機值&#xff09;反映了當前收盤價在過去一段時間內的相對位置。通過計算當前…

FEMFAT許可分析的數據可視化方法

隨著企業對FEMFAT軟件使用的增加&#xff0c;如何有效地管理和分析許可數據成為了關鍵。數據可視化作為一種強大的工具&#xff0c;能夠幫助企業直觀地理解FEMFAT許可的使用情況&#xff0c;從而做出更明智的決策。本文將介紹FEMFAT許可分析的數據可視化方法&#xff0c;并探討…

AMBER軟件介紹

AMBER軟件介紹 AMBER&#xff08;Assisted Model Building with Energy Refinement&#xff09;是一套廣泛應用于分子動力學&#xff08;MD&#xff09;模擬和生物分子結構分析的軟件工具集&#xff0c;尤其在蛋白質、核酸、多糖等生物大分子的模擬中表現突出。以下是關于AMBE…

GoogLeNet網絡模型

GoogLeNet網絡模型 誕生背景 在2014年的ImageNet圖像識別挑戰賽中&#xff0c;一個GoogLeNet的網絡架構大放異彩&#xff0c;與VGG不同的是&#xff0c;VGG用的是3*3的卷積&#xff0c;而GoogLeNet從1*1到7*7的卷積核都用&#xff0c;也就是使用不同大小的卷積核組合。 網絡…

Free2AI:企業智能化轉型的加速器

隨著數字化與智能化的深度交融&#xff0c;企業的競爭舞臺已悄然轉變為數據處理能力和智能服務水平的競技場。Free2AI以其三大核心功能——智能數據采集、多格式文檔解析、智能FAQ構建&#xff0c;為企業鋪設了一條從數據洞察到智能服務的全鏈路升級之路&#xff0c;成為推動企…

Vue 核心技術與實戰day07

1. vuex概述 2. 構建 vuex [多組件數據共享] 環境 <template><div id"app"><h1>根組件- {{ title }}- {{ count }}</h1><input :value"count" input"handleInput" type"text"><Son1></Son1>…

【原神 × 插入排序】刷圣遺物也講算法:圣遺物評分系統背后的排序邏輯你真的懂嗎?

?? 改編自:王爭《數據結構與算法之美》 ?? 游戲演繹:米哈游《原神》 ?? 核心關鍵詞:插入排序、排序算法、評分系統、屬性評價、強化圣遺物、冒泡排序對比 ?? 引言:原神刷本=刷排序? 玩《原神》的玩家每天日常是啥?體力用來刷圣遺物、精通頭、暴擊頭、攻充沙………

quasar electron mode如何打包無邊框桌面應用程序

預覽 開源項目Tokei Kun 一款簡潔的周年紀念app&#xff0c;現已發布APK&#xff08;安卓&#xff09;和 EXE&#xff08;Windows&#xff09; 項目倉庫地址&#xff1a;Github Repo 應用下載鏈接&#xff1a;Github Releases Preparation for Electron quasar dev -m elect…

微信小程序真機調試時如何實現與本地開發環境服務器交互

最近在開發微信小程序項目,真機調試時需要在手機上運行小程序,為了實現本地開發服務器與手機小程序的交互,需要以下步驟 1.將手機連到和本地一樣的局域網 2.Visual Studio中將IIS Express服務器的localhost端口地址修改為本機的IP自定義的端口: 1&#xff09;找到web api項目…

Scratch節日 | 拯救屈原 | 端午節

端午節快樂&#xff01; 這款特別為端午節打造的Scratch游戲 《拯救屈原》&#xff0c;將帶你走進古代中國&#xff0c;感受歷史與文化的魅力&#xff01; &#x1f3ee; 游戲介紹 扮演勇敢的探險者&#xff0c;穿越時空回到古代&#xff0c;解鎖謎題&#xff0c;完成任務&…