接著講上節的內容,上節中提到了乙個時間優化的問題是使用引數-n,通過不解析位址來進行優化時間的,但是優化時間的方法還有很多,比如說我們可以通過時間優化(0-5),指定單位時間內的探針數,設定組的大小
時間優化(0-5)
時間優化的引數是(-t0~5),最快的掃瞄速度為-t5,最慢的掃瞄速度為-t0,實現的原理:通過設定各個埠的掃瞄週期,從而來控制整個掃瞄的時間,比如說t0各個埠的掃瞄週期大約為5分鐘,而t5各個埠的掃瞄週期為5ms,但是過快的掃瞄也是有缺點的,掃瞄的週期過快,會很容易被防火牆和ids發現並記錄,因為防火牆大多數會將埠週期過段識別為掃瞄從而遮蔽掉,如果不對其進行設定的話,預設值為t4
--min-hostgroup/--max-hostgroup size 設定組的大小
--min-parallelism/--max-parellelism time指定時間內的探針數
具體的使用方法就不做介紹了,有興趣的話,可以試一試研究一下變知道怎樣使用了
在上節中還講漏了乙個知識點獲取指定埠的引數(-p),這個引數的意義在於對於我們有時候只想監控某個特定的埠的狀態,這個引數是即為有用的,可以節約了不少的時間
例如:監控nmap.org的80埠的狀態
命令:nmap -p 80 nmap.org
接下來就進行這一節的主要內容,如果上節沒有了解清楚的同學,建議返回上節理解清楚再開始這一節
這一節我們就來講講怎樣規避被防火牆或ids發現的風險以及操作的步驟
上節中我們假設的是在乙個網路安全較為薄弱的情況下就可以正常進行的,但是正常的**或者個人都是對安全有一定的防範的,**中基本上都會存在安全狗、防火牆等規避風險的措施,個人電腦也會安裝各種安全軟體,所以對於做掃瞄工作的人來說,我們不知道通過掃瞄獲取相關的資訊,同時也要保護好自己的隱私,比如ip等資訊,防止被防火牆或者是網路日誌所記錄下來
在講這節之前我們來了解一下什麼事防火牆?
防火牆的原理圖:
防火牆是通過在客戶端與伺服器端之間搭建乙個監控(執行的原理有點像fiddler),通過對特定開放的埠進行遮蔽掉,從而達到網路安全的作用,防火牆在其功能上也會有一些其他的功能,這個要看防火牆的實際情況
規避的基本思路是:
1、通過偽造訪問的ip位址
2、通過對傳送資訊進行處理
3、將風險進行嫁接
4、其他的技術
偽造ip位址
偽造ip位址有很多種方法,可以通過下面的這幾種方法是我認為比較常見的希望大家能喜歡
一、誘餌掃瞄(-d)
誘餌掃瞄的工作原理是:通過偽造大量的ip與自己真實的ip一起訪問**,從而混淆管理員的判斷,其中問你們使用me來代表自己的真實位址
例子:虛構乙個ip為203.88.163.34與自己的真實位址去掃瞄nmap.org
命令:nmap -f -d 203.88.163.34,me nmap.org
執行的結果如下:
但是在使用偽造的ip的同時,我們要注意要對偽造的ip進行主機發現,來判斷主機是否存在,是否開啟,因為有些防火牆策略是有這樣規定的:如果訪問的ip主機是關閉或者是為空的話,就講所有的返回內容過濾掉。試想一下,如果主機關閉或者是不存在,那麼怎麼可能會傳送掃瞄的命令給目標主機呢?
要找到開啟的目標主機理論上是沒有什麼要求的,但是為了節約時間,我建議是直接使用某個**的ip位址,這樣有一下的幾個好處
1、ip位址容易獲得,一般的**是通過ping引數就可以直接獲取該**的ip位址,除了一些不讓進行ping操作的**除外
2、容易保證ip的正常開啟,因為誰家的**會經常關閉伺服器,伺服器一般是總是開啟的
二、源位址欺騙(-s)
源位址欺騙的原理是:通過將自己的ip偽裝成為其他的ip去掃瞄目標主機從而騙過目標主機的追蹤
假設要偽裝成為1.1.1.1:引數-s 1.1.1.1 使用1.1.1.1進行掃瞄,讓防火牆誤以為是來自1.1.1.1的掃瞄行為
在使用的時候要注意與-e進行使用,因為除了制定要偽裝成為的物件ip外,還要指定返回的ip位址
三、時間優化(-t)
通過時間優化也提高通過防火牆和ids的通過率
傳送資訊處理
指定使用分片(-f)
分片的工作原理是:將可疑的探測包進行分片處理(例如將tcp包拆分成多個ip包傳送過去),某些簡單的防火牆為了加快處理速度可能不會進行重組檢查,以此避開其檢查。
將風險責任進行嫁接
空閒掃瞄(-si):
這裡有一篇比較全面的文章 再次就不多做介紹
其他的相關技術:
有mac偽造技術等
防火牆/ids躲避和哄騙
-f; --mtu value 指定使用分片、指定資料報的mtu.
-d decoy1,decoy2,me 使用誘餌隱蔽掃瞄
-s ip-address 源位址欺騙
-e inte***ce 使用指定的介面
-g/ --source-port protnum 使用指定源埠 --proxies url1,[url2],... 使用http或者socks4的** --data-length num 填充隨機資料讓資料報長度達到num --ip-options options 使用指定的ip選項來傳送資料報 --ttl value 設定ip time-to-live域 --spoof-mac addr/prefix/vebdor mac位址偽裝 --badsum 使用錯誤的checksum來傳送資料報
埠掃瞄之Nmap(二)
open 開放的 意味著目標機器上的應用程式正在該埠監聽連線 報文 filtered 被過濾的 意味著防火牆,過濾器或者其他網路障礙阻止了該埠被訪問,nmap無法得知它的真實狀態。當nmap收到icmp報文主機不可達報文或者目標主機無應答,常常會將目標主機的狀態設定為filtered。closed ...
python使用nmap埠掃瞄
coding utf 8 usr bin env python import nmap import optparse def nmapscan tgthost,tgtport 建立nmap掃瞄器,初始化portscanner模組 class portscanner init self,nmap s...
kali 的埠掃瞄nmap
輸入 nmap 空格 st 空格 ip位址或網域名稱 掃瞄所有開放的udp埠 輸入 nmap 空格 su 空格 ip位址或網域名稱 掃瞄防火牆安全漏洞 輸入 nmap sn 空格 ip位址或網域名稱 掃瞄使用ip協議的埠,進行的是加速掃瞄,時間較短。輸入 nmap 空格 f 空格 網域名稱或ip位址...