Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Nmapの真実(続)

Nmapの真実の続き

Related Books

Free with a 30 day trial from Scribd

See all
  • Be the first to comment

Nmapの真実(続)

  1. 1. Nmapの真実(続)
  2. 2. 自己紹介 2 小河 哲之 Twitter:abend ISOG-WG1 Burp Suite Japan User Group
  3. 3. Nmap 3 ネットワークスキャナの1つ。 - ポートスキャン - ホストの探索 - OSやサービスの検出 - 脆弱性スキャン
  4. 4. 権限のお話 4
  5. 5. 権限による変化 5 一般ユーザと管理者とでは、挙動がかわりま す。 ① 一般ユーザ: $ nmap 192.168.0.1 ② 管理者ユーザ # nmap 192.168.0.1
  6. 6. 権限による変化 6 ① 一般ユーザの場合、Connect Scanになり ます。 ② 管理者ユーザの場合、SYN Scanになりま す。
  7. 7. 7 SYN ScanはRaw Socketを扱うため管理者権 限がないと実行できません。Connect Scanは 管理者権限がなくても実行できます。 権限による変化
  8. 8. 8 管理者は自動的にSYN Scanになってしまう。 それをConnect Scanでポートスキャンを行う方 法は2つあります。 権限による変化
  9. 9. 9 1つ目は「-sT」を明示的に指定する方法。 2つ目は「--unprivileged」を指定する方法。 権限による変化
  10. 10. 10 「-A」は、「-O」、「-sV」、「-sC」、「--traceroute」 をまとめたものだが、「 --unprivileged」を指定 した場合、 「-O」、 「--traceroute」は管理者権 限が必要なため実行されない。 権限による変化
  11. 11. 11 root@kali:~# nmap -O 192.168.217.131 --unprivileged TCP/IP fingerprinting (for OS scan) requires root privileges. QUITTING! だが、「-O」を指定した場合はエラーとなる。 「-A」の時は実行されないだけでエラーにな らない。 権限による変化
  12. 12. 12 オプションが同じでも実行権限によって結果 が変わってしまうので、その点で注意が必要 になる。 権限による変化
  13. 13. unfilteredのお話 13
  14. 14. ポートスキャン 14 ポートスキャンを行うと結果が出力される。 ポートの状況は6パターンある。 open , closed , filtered , unfiltered , open|filtered , closed|filtered
  15. 15. ポートスキャン 15 ポートスキャンを行うと結果が出力される。 ポートの状況は6パターンある。 open , closed , filtered , unfiltered , open|filtered , closed|filtered
  16. 16. unfiltered? 16 Nmapリファレンスガイドだと ポートにはアクセス可能だが、そのポートが 開いているか閉じているかをNmapでは判別 できないことを意味する。 https://nmap.org/man/jp/man-port-scanning- basics.html
  17. 17. unfiltered 17 アクセス可能ならopenになるのではないだろ うか。 どういう状況なのだろうか。
  18. 18. 18 ACK ScanはACKフラグのみがセットされたパ ケットを送信して、挙動からstatusを判断する。 ACKを投げる ? ACK Scan
  19. 19. ACK Scan 19 何も帰ってこない。 何も帰ってこないということは、filterされてい ると判断する。 filter!!
  20. 20. ACK Scan 20 RSTが帰ってくる RSTが帰ってくるということは、openか closed(filterされていない)という判断になり unfilteredとなる。 filterされ てない!!
  21. 21. ACK Scan 21 「アクセス可能 = filterされていないがopen かcloseか分からない」ということ。どういう使い 道なのかは分からないが。
  22. 22. ACK Scan 22 } else if (tcp->th_flags & TH_RST) { current_reason = ER_RESETPEER; if (USI->scantype == WINDOW_SCAN ) { newstate = (tcp->th_win) ? PORT_OPEN : PORT_CLOSED; } else if (USI->scantype == ACK_SCAN) { newstate = PORT_UNFILTERED; } else newstate = PORT_CLOSED; scan_engin_raw.ccの1818行から1824行目で ポートの状況を判定をしていると推測される。
  23. 23. Window Scanのお話 23
  24. 24. Window Scan 24 NmapのReference Guideより抜粋 Window scan is exactly the same as ACK scan except that it exploits an implementation detail of certain systems to differentiate open ports from closed ones https://nmap.org/book/man-port-scanning-techniques.html
  25. 25. Window Scan 25 Widow ScanはACK Scanと同じ。Window Scan だとopenかcloseの判定ができる。 なぜACK Scanと同じなのにポートの状況を 判定できる?
  26. 26. Window Scan 26 } else if (tcp->th_flags & TH_RST) { current_reason = ER_RESETPEER; if (USI->scantype == WINDOW_SCAN ) { newstate = (tcp->th_win) ? PORT_OPEN : PORT_CLOSED; } else if (USI->scantype == ACK_SCAN) { newstate = PORT_UNFILTERED; } else newstate = PORT_CLOSED; Window ScanもACK Scanと同様の判定だが、 RSTパケットのWindow sizeが0でなければ openと判定する。
  27. 27. openと判定 27 Starting Nmap 7.10 ( https://nmap.org ) at 2016-07-03 04:22 JST Nmap scan report for 192.168.1.219 Host is up (0.00070s latency). PORT STATE SERVICE 80/tcp open http
  28. 28. closeと判定 28 Starting Nmap 7.10 ( https://nmap.org ) at 2016-07-03 05:14 JST Nmap scan report for 192.168.1.219 Host is up (0.00031s latency). PORT STATE SERVICE 80/tcp closed http
  29. 29. Window Scan 29 VMでNATさせ、Window Scanをした場合に RSTパケットのWindow sizeが0ではなくなる。 Connect ScanではRSTパケットのWindow size が0だが。理由は不明。
  30. 30. まとめ 30 • 管理者権限で実行しましょう。 • スキャンタイプって色々あって奥深いね。 • NAT環境だと思わぬ結果になることがあ るから、気を付けようね。

×