滲透測試之信息收集


信息收集

信息收集的方式可以分為兩種:主動和被動。

  • 主動信息收集:通過直接訪問、掃描網站,這種流量將流經網站。
  • 被動信息收集:利用第三方的服務對目標進行訪問了解,比例:Google搜索、Shodan搜索等。

    Google Hacking

    基本搜索

  • 邏輯與:and
  • 邏輯或: or
  • 邏輯非: -
  • 完整匹配:"關鍵詞"
  • 通配符:* ?

    高級搜索

  • intext
    尋找正文中含有關鍵字的網頁,例如:

    intext:后台登錄

將只返回正文中包含 后台登錄 的網頁。

  • intilte
    尋找標題中含有關鍵字的網頁,例如:

    intitle:后台登錄

將只返回標題中包含 后台登錄 的網頁。

intitle:后台登錄 密碼

將返回標題中包含 后台登錄 而正文中包含 密碼 的網頁。

  • allintitle:
    用法和intitle類似,只不過可以指定多個詞,例如:

    alltitle:后台登錄 管理員

將返回標題中包含后台登錄和管理員的網頁。

  • inurl:
    將返回url中含有關鍵詞的網頁,例如:

    inurl:Login

將返回url中含有 Login 的網頁。

inurl:/admin/login.php

查找管理員登錄頁面

inurl:/phpmyadmin/index.php

查找后台數據庫管理頁面

  • allinurl:
    用法和inurl類似,只不過可以指定多個詞,例如:

    inurl:Login admin

將返回url中含有 Login 和 admin 的網頁

  • site:
    指定訪問的站點,例如:

    site:baidu.com inurl:Login

將只在baidu.com 中查找url中含有 Login的網頁。

  • filetype:
    指定訪問的文件類型,例如:

    site:baidu.com filetype:pdf

將只返回baidu.com站點上文件類型為pdf的網頁。

  • link:
    指定鏈接的網頁,例如:

    link:www.baidu.com

將返回所有包含指向 www.baidu.com 的網頁。

  • related:
    相似類型的網頁,例如:

    related:www.llhc.edu.cn

將返回與 www.llhc.edu.cn 相似的頁面,相似指的是網頁的布局相似。

更多內容參考內容來源中的鏈接

Shodan

Shodan工作原理

那么 Shodan 是怎么工作的呢?Shodan 通過掃描全網設備並抓取解析各個設備返回的 banner 信息,通過了解這些信息 Shodan 就能得知網絡中哪一種 Web 服務器是最受歡迎的,或是網絡中到底存在多少可匿名登錄的 FTP 服務器,或者哪個ip對應的主機是哪種設備。

使用搜索過濾

  • hostname:搜索指定的主機或域名,例如 hostname:"google"
  • port:搜索指定的端口或服務,例如 port:"21"
  • country:搜索指定的國家,例如 country:"CN"
  • city:搜索指定的城市,例如 city:"Hefei"
  • org:搜索指定的組織或公司,例如 org:"google"
  • isp:搜索指定的ISP供應商,例如 isp:"China Telecom"
  • product:搜索指定的操作系統/軟件/平台,例如 product:"Apache httpd"
  • version:搜索指定的軟件版本,例如 version:"1.6.2"
  • geo:搜索指定的地理位置,參數為經緯度,例如 geo:"31.8639, 117.2808"
  • before/after:搜索指定收錄時間前后的數據,格式為 dd-mm-yy,例如 before:"11-11-15"
  • net:搜索指定的IP地址或子網,例如 net:"210.45.240.0/24"

DNS域名信息的收集

DNS域名解析過程:

1.客戶機訪問域名,先查看自己主機的DNS緩存(有時間限制),如果主機緩存有,則直接訪問對應ip
2.如果主機 DNS 緩存沒有,則查看主機的 hosts 文件,如果有,則直接訪問對應ip
3.如果 hosts 文件沒有,則將該請求發送給主機指定的域名服務器。
4.域名服務器收到請求后,先查詢本地的緩存,如果有該紀錄項,則域名服務器就直接把查詢的結果返回。
5.如果本地的緩存中沒有該記錄,則域名服務器把請求發給根域名服務器,根域名服務器返回給域名服務器一個所查詢域(根的子域)的主域名服務器的地址。
6.本地服務器向上一步返回的主域名服務器發送請求,接受請求的服務器查詢自己的緩存,如果沒有該紀錄,則返回相關的下級域名服務器的地址。
7.一直重復上一步,直到找到訪問域名所對應的ip地址。然后DNS服務器把域名對應的ip地址發送給主機,同時DNS服務器本地保存起來。

腳本類型(php/jsp/asp/aspx)

1.可以根據網站URL來判斷
2.site:xxx filetype:php
3.可以根據Firefox的插件來判斷

服務器類型(Linux/Windows)

判斷是Linux還是Windows最簡單就是通過ping來探測,Windows的TTL值都是一般是128,Linux則是64。所以大於100的肯定是Windows,而幾十的肯定是Linux。
而判斷目標網站服務器的具體的版本的話,可以采用 nmap 進行掃描, -O 和 -A 參數都能掃描出來。

網站容器(Apache/Nginx/Tomcat/IIS)

我們就需要知道網站用的web服務器是什么類型的:Apache、Nginx、Tomcat 還是 IIS。知道了web服務器是哪種類型后,我們還要探測web服務器具體的版本。比如Ngnix版本<0.83會有解析漏洞 ,IIS6.0會有文件名解析漏洞、IIS7.0會有畸形解析漏洞等。不同的web服務器版本,存在着不同漏洞。

數據庫類型(Mysql/Oracle/Accees/Mqlserver)

常見搭配:

  • ASP 和 ASPX:ACCESS、SQL Server
  • PHP:MySQL、PostgreSQL
  • JSP:Oracle、MySQL

知識雜項:

  • mdb文件:微軟辦公系列Access的文件,mdb作為Access數據庫的一種文件儲存格式,通常會直接用Access打開,其實用Excel也支持打開mdb文件。
  • DNS(Domain Name Service): 域名解析服務,就是將域名和ip之間做相應的轉換,利用TCP和UDP的53號端口。
  • SPF(Sender Policy Framework):一種以IP地址認證電子郵件發件人身份的技術。 接收郵件方會首先檢查域名的SPF記錄,來確定發件人的IP地址是否被包含在SPF記錄里面,如果在,就認為是一封正確的郵件,否則會認為是一封偽造的郵件進行退回。
    DNS系統作用:
    • 正向解析:根據域名查找對應的ip地址
    • 反向解析:根據ip地址查找對應的域名
  • PHP
    PHP是一種跨平台的服務器端的嵌入式腳本語言。它大量地借用C、Java 和 Perl 語言的語法,並耦合PHP自己的特性,使WEB開發者能夠快速地寫出動態產生頁面。它支持目前絕大多數數據庫。還有一點,PHP是完全免費的,不用花錢,你可以從PHP官方站點自由下載。而且你可以不受限制地獲得源碼,甚至可以從中加進你自己需要的特色。PHP腳本語言的文件后綴名是 .php
  • JSP
    JSP是Sun公司推出的新一代網站開發語言,Sun公司借助自己在Java上的不凡造詣,將Java從Java應用程序和JavaApplet之外,又有新的碩果,就是JSP,JavaServerPage。JSP可以在Serverlet和JavaBean的支持下,完成功能強大的站點程序。JSP腳本語言的文件后綴名是 .jsp
  • ASP
    ASP全名ActiveServerPages,是MicroSoft公司開發的服務器端腳本環境,是一個WEB服務器端的開發環境,利用它可以產生和執行動態的、互動的、高性能的WEB服務應用程序。ASP采用腳本語言VBScript(Javascript)作為自己的開發語言。asp文件后綴名是 .asp
  • ASP.NET
    ASP.net又稱為ASP+,不僅僅是ASP的簡單升級,而是微軟公司推出的新一代腳本語言。他不是asp的簡單升級,因為他的編程方法和asp有很大的不同,他是在服務器端靠服務器編譯執行的程序代碼。ASP 使用腳本語言,每次請求的時候,服務器調用腳本解析引擎來解析執行其中的程序代碼,而ASP.NET 則可以使用多種語言編寫,而且是全編譯執行的,比ASP 快,而且,不僅僅是快的問題,有很多優點。ASP.NET基於.NET Framework的Web開發平台,不但吸收了ASP以前版本的最大優點並參照Java、VB語言的開發優勢加入了許多新的特色,同時也修正了以前的ASP版本的運行錯誤。 他還支持很多語言的編寫,比如java、c#、vb.net ,功能很強。 asp.net的文件后綴名是 .aspx
  • Access 全名是Microsoft Office Access,是由微軟發布的關聯式數據庫管理系統。小型數據庫,當數據庫達到100M左右的時候性能就會下降。數據庫后綴名: .mdb 一般是asp的網頁文件用access數據庫
  • SQL Server是由Microsoft開發和推廣的關系數據庫管理系統(DBMS),是一個比較大型的數據庫。端口號為1433。數據庫后綴名 .mdf
  • MySQL 是一個關系型數據庫管理系統,由瑞典MySQL AB 公司開發,目前屬於 Oracle 旗下產品。MySQL是最流行的關系型數據庫管理系統,在 WEB 應用方面MySQL是最好的應用軟件之一,MySQL數據庫大部分是php的頁面。默認端口是3306
  • Oracle又名Oracle RDBMS,或簡稱Oracle。是甲骨文公司的一款關系數據庫管理系統。常用於比較大的網站。默認端口是1521

內容來源:

滲透測試之信息收集
Google Hacking的用法
Shodan的使用
Linux中搭建DNS服務器
DNS信息探測、IP轉換經緯度
網站指紋識別工具Whatweb的使用
php、jsp、asp和aspx的區別


注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
粤ICP备14056181号  © 2014-2021 ITdaan.com