日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Nmap流量特征修改(NTA、IDS、IPS、流量审计)

發布時間:2025/3/15 编程问答 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Nmap流量特征修改(NTA、IDS、IPS、流量审计) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

目錄

0x01 前言

參考鏈接

0x02 環境

0x03 nmap探測的常用幾種方式

-sS (SYN掃描)

-sT (TCP掃描)

-sU(UDP掃描)

-sN;-sF;-sX (TCP Null,FIN,and Xmas掃描)

-sA(ACK 掃描)

-scanflags (自定義掃描)

-sI(Idlescan)

-sV (版本檢測)-O (系統檢測)

0x04 nmap的流量特征修改

Win值修改

關鍵詞修改

UDP探測時填充值修改

0x05 nmap編譯安裝

0x06 總結

可修改文件及修改處

6.1、修改namp默認win窗口值。

6.2、修改nmap-service-probes文件中關鍵詞

6.3、修改腳本中的值

6.4、修改使用-O參數發包填充內容


0x01 前言

nmap是滲透中嘗嘗用到的工具之一,在信息收集階段經常用到,現在主流的流量分析設備也將其流量加入了特征庫,

為了防止在探測階段IP就被封掉,對其的流量特征做一些簡單的修改有點用的。

由于沒有廠商設備檢測,故以下只是學習記錄一下思路。具體效果還待驗證。

參考鏈接

如何修改nmap, 重新編譯,bypass emergingthreats 的公開ids規則:

https://xz.aliyun.com/t/6002

nmap端口掃描技術:

https://nmap.org/man/zh/man-port-scanning-techniques.html

NmapbypassIDS:

https://github.com/al0ne/Nmap_Bypass_IDS

0x02 環境

VM虛擬機:

192.168.1.113 開放135,3389 防火墻禁止445入站

ubuntu:

編譯安裝nmap用,kali下編譯安裝存在點問題,坑太多了,以后有時間再去踩。

0x03 nmap探測的常用幾種方式

-sS (SYN掃描)

nmap默認端口掃描方式,執行半開掃描,不完成TCP握手流程。只向目標端口發送一個SYN報文,然后等待響應。

SYN/ACK表示端口在監聽 (開放),而 RST (復位)表示沒有監聽者。

如果多次重發后仍沒響應, 該端口就被標記為被過濾。

使用抓包工具可以完整的看到探測過程。

-sT (TCP掃描)

一般不推薦使用,因為會留下連接日志。

另外在調用一些高級掃描時(如HTTP),會調用這種連接方式。

使用抓包工具看其探測過程

-sU(UDP掃描)

DNS,SNMP,和DHCP是常常開放UDP的幾個服務,有些情況下會使用到。

由于UDP是無連接的,所以會面臨響應探測問題,探測時的端口是否開放還是被過濾的判斷,會讓Nmap超時然后再探測,以防探測幀或者響應丟失,導致探測時間增長。

關閉的端口常常是更大的問題。它們一般發回一個ICMP端口無法到達錯誤。

但是不像TCP發送的RST報文,許多主機在默認情況下限制ICMP端口不可到達消息。

如:Linux 2.4.20內核限制一秒鐘只發送一條目標不可到達消息。

抓包看一下,當只看到兩個UDP無內容包時,懵了一下。

查了一下發現除了某些特定端口會有響應返回,如137 用的NBNS,其他的全部都是沒有返回,原因是因為這臺機器禁PING了,就是ICMP的返回包過不來。

所以沒法判斷端口是否關閉。

修改防火墻設置。

允許文件和打印機共享后確實可以ping主機了,但是ICMP回包還是有問題。

后來索性把防火墻關掉。

就可以明顯看到其是通過返回包來進行判斷的。?

-sN;-sF;-sX (TCP Null,FIN,and Xmas掃描)

這個還是挺有意思的,首先這個不適用掃描windows、Cisco、bsdi、IBM的一些服務器,因為并不是完全遵守RFC 793這個協議。

這個協議會存在這種情況,當端口關閉時,任何不包含SYN,RST,或者ACK位的報文會導致 一個RST返回,而當端口開放時,應該沒有任何響應。

所以只要不包含SYN,RST,或者ACK, 任何其它三種(FIN,PSH,and URG)的組合都行。

而剛剛上面說的那些他們并不遵守這個,他們不管端口開放或關閉,都返回一個RST,導致Nmap判斷錯誤。

-sN 不設置任何標志位

-sF 只設置FIN標志位

-sX 設置FIN,PSH,和URG標志位

看一下探測過程,如果沒加參數,默認會先發送ICMP請求。

-sA(ACK 掃描)

用于探測防火墻狀態。ACK掃描探測報文只設置ACK標志位。

當掃描未被過濾的系統時,?open(開放的)和?closed(關閉的) 端口 都會返回RST報文。

Nmap把它們標記為?unfiltered(未被過濾的),無返回或者返回ICMP錯誤響應時標記為filtered。

防火墻關閉狀態下。返回unfiltered

防火墻開啟狀態下。返回filtered?

-scanflags (自定義掃描)

可以使用?URG,?ACK,?PSH,?RST,?SYN,and?FIN的任何組合,進行發包。詳細可以自己組合定制

-sI(Idlescan)

高級隱藏掃描。利用僵尸網絡執行掃描。詳細可看文章

(文章鏈接:https://nmap.org/book/idlescan.html)

-sV (版本檢測)-O (系統檢測)

可以看到在探測的時候會有標志和固定長度字符串問題。

IDS識別nmap掃描一般都是根據UDP data區域填充的'C'字符串,ICMP填充的是0(正常windows下是a-z,Linux下是0-9。

莫慌,接下就學習一下怎么去改這些個文件。

0x04 nmap的流量特征修改

Win值修改

通過觀察可以發現nmap在使用SYN掃描時Windows的窗口值值固定是1024。

(PS :window 關鍵字用于檢查特定的TCP窗口大小)

下面是正常連接3389時,發送的數據包??梢钥吹絯in值明顯不一樣。?

修改tcpip.cc文件中tcp->th_win的值,查詢TCP中win這個值的信息發現,

默認最大為65535。

所以應該在此范圍內都可以。

但是要考慮已公開的規則,如之前大佬寫的bypass emergingthreats這篇,這個就過濾了2048 1024 3072 4096。

后來因某些原因,把nmap編譯到了云服務器上,抓包的話就需要tcpdump了。?

tcpdump -i eth0 -t -s 0 -c 100 host IP

關鍵詞修改

根據規則,一個一個去修改文件即可。nmap,nm,nm@p,OR sqlspider等等,

主要的就是SIP文件和一些常用的腳本文件。

這些個就是從emergingthreats的規則中提取的。

UDP探測時填充值修改

osscan2.cc

static u8 patternbyte = 0x43; /* character 'C'?/

替換為?static u8 patternbyte = 0x46; /?character 'F' */

重新編譯后再去掃描,內容已經換了,長度應該也是可以調整。

u8 packet[328]; /* 20 IP hdr + 8 UDP hdr + 300 data */

這里還沒測試,感興趣可以自己去定義,看會不會有什么問題。

0x05 nmap編譯安裝

nmap編譯時可能會遇到如下錯誤,幾乎都是缺少特定的庫導致的,

所以編譯安裝時需要安裝以下庫。

編譯環境是基于Ubuntu的,其他環境庫的名字可能不同,遇到編譯報錯可百度找對應解決方法即可。

apt?install?flex?bison?libssl-dev ./configure?--without-zenmap make?&&?make?install

0x06 總結

可修改文件及修改處

6.1、修改namp默認win窗口值。

tcpip.cc

tcp->th_win = hosts(1-65535)

6.2、修改nmap-service-probes文件中關鍵詞

nmap,nm@nm,nm2@nm2,nm@p,nm,0PT10NS sip

這些值酌情替換。

6.3、修改腳本中的值

  • nselib/http.lua

USERAGENT = stdnse.getscript_args('http.useragent')

  • nselib/mssql.lua

搜索Nmap NSE然后替換

  • nselib/sip.lua

搜索Nmap NSE然后替換

  • scripts/http-sql-injection.nse

搜索sqlspider然后替換

  • scripts/ssl-heartbleed.nse

搜索Nmap ssl-heartbleed替換

  • nselib/rdp.lua

local cookie = "mstshash=nmap"

6.4、修改使用-O參數發包填充內容

osscan2.cc

static u8 patternbyte = 0x43; /* character 'C'?/

替換為?static u8 patternbyte = 0x46; /?character 'F' */

總結

以上是生活随笔為你收集整理的Nmap流量特征修改(NTA、IDS、IPS、流量审计)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。