2024年2月6日 星期二

NMAP 用於隱身掃瞄的手法

學習目標
  • 在 Kali Linux 上使用 NMAP 指令工具,進行被動掃瞄的方式。
  • Kali Linux 作業系統的安裝,請參考這一篇內容
  • 利用 Metasploitable 2 擔任被掃瞄的主機,架設方式請參考這一篇內容
  • 隱身掃瞄的方式:Xmas Tree scan、TCP SYN scan、FIN scan、NULL scan
  • 繞過防火牆的掃瞄方式:TCP ACK scan

重要步驟
  1. 啟動 Kali Linux 作業系統,並且以 Kali 帳號登入系統。
  2. 使用 Terminal,先進行系統更新的動作:
    $ sudo apt update
    $ sudo apt upgrade
    $ sudo apt dist-upgrade
    
  3. 聖誕樹(Xmas Tree)掃瞄法
    $ sudo nmap -sX -p1-3400 192.168.123.10
    

  4. 使用 FIN 掃瞄法,結合縮短計時時間的方式:
    $ sudo nmap -sF -T4 192.168.123.10 
    

  5. 使用 NULL 掃瞄法,結合縮短計時時間的方式:
    $ sudo nmap -sN -T4 192.168.123.10 
    

  6. 使用 TCP ACK 掃瞄法:
    $ sudo nmap -sA -p80 192.168.123.10 
    

  7. 使用隨機掃瞄法進行掃瞄,可以避免被某些防火牆、入侵偵測系統察覺:
    $ sudo nmap -v -sS --randomize-hosts -p- 192.168.123.10
    

  8. 使用誘餌掩蓋法進行掃瞄,將自身的來源 IP 混在一堆假造IP內,以欺騙人類的眼睛察覺:
    $ sudo nmap -v -sS -D RND:30 -p- 192.168.123.10
    

  9. 將掃瞄的封包碎片化,降低被偵測的機率:
    $ sudo nmap -v -f 192.168.123.10
    

    PS: 注意最後的掃瞄結果。另外可以指定 --mtu 64 ,進行封包大小的指定。
  10. 閒置掃瞄法:利用僵屍電腦上的特定 port ,對目標主機進行掃瞄
    $ sudo nmap -Pn -sI 10.0.2.2 192.168.123.10
    

    PS: 掃瞄空閒主機的方式: $ sudo nmap -p80 --open --script ipidseq -iR 20 隨機找出 20 部有 80 port 的空閒主機,或是使用 $ sudo nmap -p80 --open --script ipidseq /24 找出網段上有 80 port 空閒的主機。
  11. 修改來源 Port ,使用常見的 Port 號碼,避免被防火牆或是入侵系統所偵測:
    $ sudo nmap -v --source-port 80 192.168.123.10
    

  12. 指定封包大小,繞過防火牆或是 IDS/IPS 的偵測:
    $ sudo nmap -v --data-length 80 192.168.123.10
    

  13. 將 MAC Address 偽裝,避免被記錄
    $ sudo nmap -v -sT -PN --spoof-mac 12:34:56:ab:cd:ef 192.168.123.10
    

  14. 利用錯誤的檢驗值,繞過防火牆的偵測
    $ sudo nmap -v --badsum 192.168.123.10
    

參考文獻