Tìm hiểu công cụ quét mạng Nmap

Đăng bởi: Admin | Lượt xem: 4114 | Chuyên mục: Công Nghệ

Nmap là công cụ bảo mật được phát triển bởi Floydor, đây là phần mềm mã nguồn mở miễn phí khai thác mạng và kiểm tra nhiều hệ thống và cũng như tài khoản người dung. Nmap rất có ích trong việc giám sát các host hoặc các dịch vụ cập nhật thời gian. Nmap sử dụng gói IP để xác định các host trên một mạng như hệ điều hành đang sử dụng, các gói filters/firewall đang sử dụng


I. Giới thiệu

Nmap là công cụ bảo mật được phát triển bởi Floydor, đây là phần mềm mã nguồn mở miễn phí khai thác mạng và kiểm tra nhiều hệ thống và cũng như tài khoản người dung. Nmap rất có ích trong việc giám sát các host hoặc các dịch vụ cập nhật thời gian. Nmap sử dụng gói IP để xác định các host trên một mạng như hệ điều hành đang sử dụng, các gói filters/firewall đang sử dụng

II. Nguyên tắc truyền thông TCP

1. Cấu tạo gói TCP

Cấu tạo gói tin TCP

Ta chỉ quan tâm tới cờ Flag trong gói tin TCP nhằm mục đích sử dụng Scan Port:

- Thông số SYN để yêu cầu kết nối giữa hai máy tính

- Thông số ACK để trả lời kết nối giữa hai máy có thể bắt đầu được thực hiện

- Thông số FIN để kết thúc quá trình kết nối giữa hai máy

- Thông số RST từ Server để nói cho Client biết rằng giao tiếp này bị cấm (không thể sử dụng được)

- Thông số PSH sử dụng để kết hợp với thông số URG

- Thông số URG sử dụng để thiết lập độ ưu tiên cho gói tin này

Thực tế các thông số này trong gói tin nó chỉ thể hiện là 1 hoặc 0 nếu 0 thì gói tin TCP không thiết lập thông số. Nếu là 1 thì thông số nào đó được thực hiện nó sẽ lần lượt trong 8 bit trong phần Flag

2. Khi Client muốn thực hiện kết nối TCP tới Server

Quá trình Client thực hiện kết nối TCP tới Server

• Bước 1: Client gửi đến Server một gói tin SYN để yêu cầu kết nối

• Bước 2: Server trả lời Client một gói tin SYN/ACK

• Bước 3: Khi Client nhận được gói tin SYN/ACK sẽ gửi lại Server một gói tin ACK và quá trình trao đổi thông tin giữa hai máy bắt đầu

3. Khi Client muốn kết thúc một phiên làm việc với Server

Client kết thúc phiên làm việc tới Server

• Bước 1: Client gửi đến Server một gói tin FIN ACK

• Bước 2 : Server gửi lại cho Client một gói tin ACK

• Bước 3 : Server lại gửi cho Client một gói tin FIN ACK

• Bước 4 : Client gửi lại cho Server gói ACK và quá trình ngắt kết nối giữa Server và Client được thực hiện

4. Nguyên tắc Scan Port trên một hệ thống

a. TCP Scan

Trên gói TCP/UDP có 16 bit dành cho Port Number điều đó có nghĩ có từ 1-165535 port. Không thể một hacker nào lại scan toàn bộ các port trên hệ thống, chũng chỉ scan những port hay sử dụng nhất thường chỉ sử dụng port 1 tới port 1024. Dựa vào nguyên tắc truyền thông tin TCP ta có thể biết được trạng thái các port trên hệ thống máy mục tiêu

SYN Scan : Khi client gửi gói tin SYN với một thông số port nhất định tới Server nếu Server gửi về gói SYN/ACK thì Client biết port đó trên Server được mở. Nếu Server gửi về cho Client gói RST/SYN thì biết port đó trên Server đóng

FIN Scan : Khi Client chưa có kết nối tới Server nhưng vẫn tạo ra gói FIN với số port nhất định gửi tới Server cần scan. Nếu Server gửi về gói tin ACK thì Client biết Server đó mở port. Nếu Server gửi về gói RST thì Client biết Server đó đóng port

NULL Scan : Client sẽ gửi tới Server những gói TCP với số port nhất định cần scan mà không chứa các thông số Flag như : FIN, URG, PSH, nếu Server gửi lại gói RST thì biết port đó trên Server bị đóng

XMAS Scan : Client sẽ gửi những gói tin TCP với số port nhất định cần scan chứa nhiều thông số Flag như : FIN, URG, PSH. Nếu Server trả về gói RST thì port đó trên Server bị đóng

TCP Connect : Phương thức này rất thực tế nó gửi đến Server những gói tin yêu cầu kết nối thực tế tới các port cụ thể trên Server. Nếu Server trả về gói SYN/ACK thì Client biết port đó mở, nếu Server gửi về gói RST/ACK thì Client biết port đó trên Server bị đóng

ACK Scan : Dạng Scan này nhằm mục đích tìm những Access Controll List trên Server cố gắng kết nối tới Server bằng gói tin ICMP nếu nhận được gói là Host Unreachable thì Client sẽ biết port đó trên Server đã bị lọc

Có vài dạng Scan cho các dịch vụ điển hình dễ bị tấn công như :

RPC Scan : Cố gắng kiểm tra xem hệ thống có mở port cho dịch vụ RPC không

Windows Scan : Tương tự như ACK Scan, nhưng nó có thể chỉ thực hiện trên một số port nhất định

FTP Scan : Có thể sử dụng để xem dịch vụ FTP có được sử dụng trên Server hay không

b. UDP Scan

Nếu như gói tin truyền bằng TCP để đảm bảo sự toàn vẹn của gói tin sẽ luôn được truyền tới đích. Gói tin truyền bằng UDP sẽ đáp ứng nhu cầu truyền tải dữ liệu nhanh với các gói tin nhỏ. Với quá trình thực hiện truyền tin bằng TCP kẻ tấn công dễ dàng Scan được hệ thống đang mở những port nào dựa trên các thông số Flag trên gói TCP

Cấu tạo gói UDP

Cấu tạo gọi UDP

Như ta thấy các gói UDP không chứa các thông số Flag, cho nên không thể sử dụng các phương thức Scan port của TCP sử dụng cho UDP được

Nếu một port bị đóng, khi Server nhận được gói ICMP từ client nó sẽ cố gắng gửi một gói ICMP với nội dung là uncreachable về Client. Khi thực hiện UDP Scan có thể nhận được các kết quả không có độ tin cậy cao

III. Các giai đoạn của nmap scan

Target enumeration : Nmap tìm kiếm các máy chủ được cung cấp bởi người sử dụng, có thể là một sự kết hợp của các tên máy chủ DNS, địa chỉ IP, các kí hiệu mạng CIDR và nhiều hơn nữa. Sử dụng (-iR) để yêu cầu nmap chọn máy mục tiêu. Nmap sử dụng –sL –n là lựa chọn thực hiện quét một danh sách các địa chỉ IP được lưu trong một file

Host discovery (ping scanning) : Quét mạng bằng việc bắt đầu khai thác các máy mục tiêu trên mạng có đang hoạt động hay không. Tiến trình này gọi là host discovery hoặc ping scanning. Nmap cung cấp nhiều kĩ thuật phát hiện máy chủ, có thể sử dụng yêu cầu ARP kết hợp với TCP, ICMP và các kiểu khác

Reverse – DNS resolution: Nmap xác định host để scan, tìm kiếm reverse – DNS name của toàn bộ host đang online bằng việc ping scan

Port scanning: Thăm dò là gửi và trả lời (hoặc không trả lời) đối với các thăm dò là sử dụng truy nhập cổng từ xa để xác định trạng thái của công việc thực hiện là open, closed hoặc filtered

Version detection: Nếu một vài cổng xác định là mở, nmap có thể xác định phần mềm máy chủ đang chạy trên hệ thống từ xa (-sV)

OS detection: Nếu yêu cầu với lựa chọn –O, nmap sẽ phát hiện hệ điều hành đang sử dụng

Traceroute: Nmap chứa một thành phần traceroute, --traceroute. Có thể tìm kiếm các route mạng tới nhiều host. Traceroute liên quan tới phân giải tên miền cho việc xác định host

Script scanning: Nmap Script Engine (NSE) sử dụng các kịch bản để có được nhiều thông tin hơn về hệ thống từ xa. Như việc khai thác điểm yếu, backdoor và nhiều malware. Lựa chọn –script hoặc –sC

Output: Nmap thu thập toàn bộ thông tin và đưa ra một file. Nmap có thể đưa ra một vài định dạng của file

IV. Các option trong nmap

1. Host discovery

List Scan (-sL): Đưa ra một danh sách các host mục tiêu cần quét

Ping Scan (-sP): Nmap chỉ thực hiện ping scan, đưa ra trả lời các host. Nó có thể sử dụng để đếm các máy trên mạng hoặc giám sát các máy. Thường gọi là ping sweep, và nhiều tin cậy hơn ping địa chỉ broadcast bởi vì nhiều host không reply tới broadcast. Lựa chọn –sP sẽ gửi ICMP echo và TCP ACK tới cổng mặc định 80. Một gói SYN được gửi và được sử dụng TCP connect system call tời cổng 80 của máy mục tiêu cần quét. Khi một user quét một target trên một mạng local, ARP yêu cầu (-PR) được sử dụng trừ khi lựa chọn –send-ip là đặc biệt

Disable Ping (-PN): Nmap sử dụng để xác định máy đang được hoạt động phục vụ cho việc quét. Nmap chỉ thực hiện hành vi thăm dò như quét cổng, xác định phiên bản, hệ điều hành đối với các host đang được up. Vô hiệu hóa máy chủ với lựa chọn –PN, nmap thử các chức năng quét các địa chỉ IP mục tiêu yêu cầu đặc biệt

2. Kĩ thuật phát hiện máy chủ

TCP SYN Ping (-PS <port list>): Tùy chọn –PS sẽ gửi gói TCP trống với thiết lập cờ SYN. Cổng mặc định là 80. Cũng có thể khai báo một danh sách các cổng ví dụ: -PS22-25,80,113,1050,35000

TCP ACK Ping (-PA <port list>): TCP ACK cũng tương tự như SYN Ping. Điểm khác là TCP ACK được thiết lập thay vì SYN Flag. Như gói ACK mục đích thừa nhận thiết lập kết nối TCP. Nếu không tồn tại một kết nối như vậy thì máy chủ từ xa sẽ gửi một gói RST

Lựa chọn –PA sử dụng cổng mặc định như thăm dò gói tin SYN 80 và cũng có thể đưa ra một danh sách các cổng trong một định dạng tương tự nhau

Cô gắng ping chống lại Microsoft. Gói tin bị firewall drops, dẫn đến nmap sai kết luận nên host down

UPD Ping (-PU <port list>): Một phát hiện khác với lựa chọn UDP ping là sẽ gửi gói tin UDP rỗng tới các port. Một danh sách định dạng tương tự với –PS và –PA. Nếu không có cổng nào đặc biệt thì cổng mặc định là 31 và 338

Một cổng đóng trên máy mục tiêu, thăm dò kiểu UDP có thể gợi ra một gói tin ICMP port unreachable. Nhiều kiểu khác của ICMP lỗi như host/network unreachable hoặc vượt quá TTL hoặc unreadable host. Nếu một cổng mở là đạt, hầu hết các dịch vụ đơn giản bỏ qua gói tin trống và fail để trả về bất kì trả lời nào

ICMP Ping (-PE, -PP, -PM): Nmap gửi gói tin ICMP (-8 echo request) tới các địa chỉ đích, kiểu mong đợi là 0 (echo reply) trả về giá trị host. Nhiều host và firewall bây giờ blog gói tin, không trả lời các yêu cầu khi nmap gửi gói tin tới host. ICMP chỉ quét hiếm khi đủ tin cậy để khai thác thông tin trên mạng. Nhưng đối với các quản trị viên tiếp cận thực tế và hiệu quả khi sử dụng –PE để cho phép hành vi echo request

IP Protocol Ping (-PO <protocol list>): Gửi gói tin IP với số giao thức đặc biệt trong IP header. Danh sách giao thức có định dạng tương tự như danh sách cổng bàn luận trước đó TCP và UDP. Nếu không có giao thức đặc biệt, mặc định là gửi nhiều gói tin IP cho ICMP, IGMP, và IP. Giao thức mặc định có thể được cấu hình ở compile-time bằng cách thay đổi DEFAULT_PROTO_PROBE_PORT_SPEC trong nmap

ARP Scan (-PR): Khi Nmap cố gắng gửi gói tin raw IP như ICMP echo request, hệ điều hành phải xác định địa chỉ phần cứng đích (ARP) tương ứng với địa chỉ IP đích. Yêu cầu này là gửi một loạt các yêu cầu ARP

V. Các lựa chọn trong Nmap

-v: Nmap thường chỉ đưa ra hoạt động đáp ứng tới host

--source-port <portnum>: Thiết lập một cổng nguồn không đổi cho việc ping scan (TCP và UDP). Một vài người quản trị đã vô tình đổi cổng 53 (DNS) hoặc cổng 20 (FTP – DATA). Tất nhiên mở cổng này đủ đề nmap có thể quét thăm dò thông tin của máy đích

-n, -R: Với –n lựa chọn này sẽ disable phân giải tên miền DNS, trong khi –R thì enable DNS cho toàn bộ host thậm chí cả máy đang down. Hành vi mặc định là để giới hạn tên miền DNS đối với các host đang hoạt động

--data-length <length>: Lựa chọn này là them chiều dai byte dữ liệu đối với mỗi gói tin, và làm việc với TCP, UDP và cả ICMP ping scan

--ttl <value>: Thiết lập thời gian sống của gói tin nếu vượt quá sẽ tự động out, là một  biện pháp hữu ích phòng ngừa an toàn để đảm bảo một máy quét không truyền vượt ra ngoài mạng nội bộ

-T (-T3, -T4, …): Tăng tốc độ quét cho Nmap

-iL <filename>, -iR <number> : Người sử dụng thường kết hợp với một danh sách các địa chỉ IP được nhập vào một file với lựa chọn –PN để tránh ping – scanning host đối với các host đang hoạt động. –iR là để chọn host ở chế độ ngẫu nhiên từ một khoảng địa chỉ IP

Output (-oA, -oN, -oG, …) : Kết quả Nmap sau khi sử quét sẽ được lưu dưới dạng như nomal, grepable, và XML

--randomize-hosts : Xáo trộn thứ tự quét máy chủ lưu trữ với tùy chọn này có thể làm cho quá trình quét ít khi bị chú ý, mặc dù nó cũng có thể làm cho sản lượng quét một chút khó khăn

--reason : Nmap bình thường đầu ra cho biết máy chủ đang up hay down nhưng không mô tả các host kiểm tra yêu cầu

--packet-trace : Khi muốn nhiều thông tin chi tiết hơn –reason. Lựa chọn này sẽ đưa ra thông tin các gói được gửi và nhận bởi Nmap, bao gồm các chi tiết như sequence numbers, giá trị TTL và TCP flags

-D <decoy1, decoy2, …): Decoy được hỗ trợ đầy đủ cho phép đặc quyền quét IPv4, đề ngụy trang những kẻ thực sự tấn công

-6: TCP kết nối dựa trên ping scan –PS hỗ trợ giao thức IPv6, bao gồm chế độ đa cổng như –PS22, 80, 113

-S <source IP address> , -e <sending device name>: Như với các chức năng khác của Nmap, địa chỉ nguồn và thiết bị gửi có thể là lựa chọn đặc biệt

VI. Các trạng thái công nhận với Nmap

Open port: Một ựng dụng tích cực chấp nhận kết nối gói tin TCP hoặc UDP trên cổng được mở, trong khi người quản trị lại cố gắng muốn đóng hoặc bảo vệ cổng bằng firewalls. Cổng mở thì không an toàn bởi chúng khi bị quét sẽ thể thiện các dịch vụ đang chạy khi sử dụng trên mạng

Open closed: Một cổng đóng có thể truy cập (Nó nhận và trả lời các thăm dò của Nmap), nhưng không có ứng dụng nào đang lắng nghe trên nó. Chúng có thể có ích khi thể hiện các host đang online hay sử dụng một địa chỉ IP (host discovery, hoặc ping scanning), và một phần phát hiện về hệ điều hành. Bởi cổng đóng là có thể truy cập. Người quản trị có thể muốn khóa các cổng với ứng dụng firewall xuất hiện trạng thái lọc

Port filtered: Nmap không thể xác định bất kì cổng nào đang mở bởi vì gói tin được lọc và ngăn cản trước khi tiến tới cổng. Filtering có thể từ một thiết bị tường lửa, route rules, hoặc phần mềm host-base firewall. Các cổng này làm thất bại các kẻ tấn công bởi vì chúng cung cấp quá ít thông tin. Đôi khi chúng trả lời với gói tin ICMP lỗi như kiểu 3 mã 13 nhưng filter đơn giản là drop các thăm dò không trả lời phổ biến

Port Unfiltered: Trạng thái unfiltered nghĩa là cổng có thể truy nhập, nhưng Nmap không thể xác định nó là cổng mở hay cổng đóng. Chỉ là ACK scan, được sử dụng để nmap firewall rulesets, classifies port vào trong trạng thái này. Quét cổng unfiltered vowid các kiểu scan khác như Window scan, SYN scan, hoặc FIN scan có thể giải quyết các cổng đang mở

Port open|filtered: Trạng thái này được sử dụng khi Nmap không xác định các cổng được closed hay filtered. Nó chỉ sử dụng cho việc xác định IPID Idle

VII. Kỹ thuật lựa chọn quét cổng

1. Phương thức quét cổng hỗ trợ bởi Nmap

TCP SYN Stealth (-sS): Đây là cách quét cổng phổ biến bởi vì nó là cách nhanh nhất để quét các cổng trên hầu hết các giao thức phổ biến (TCP). Nó quét âm thầm hơn là kiểu quét kết nối, và nó làm việc dựa trên toàn bộ chức năng stack TCP. (Không giống với các kiểu quét với mục đích đặc biệt như FIN scan)

TCP Connect (-sT): Scan connect sử dụng hệ thống gọi giống với tên để quét các máy, mặt khác sẽ trả lời bằng gói tin raw như hầu hết các phương thức khác. Thường sử dụng đối với người sử dụng Unix không có đặc quyền và dựa trên mục tiêu IPv6 bởi vì SYN scan không làm việc trong trường hợp này

UDP (-sU): Quét cổng UDP

TCP FIN, Xmas, và NULL (-sF, -sX, -sN): Kiểu quét mục đích đặc biệt vượt qua firewall để khai thác hệ thống đằng sau chúng.

TCP ACK (-sA): ACK scan được sử dụng phổ biến đối với các luật của firewall. Nó giúp hiểu luật firewall là statefull hoặc không. Nhược điểm là nó không phân biệt được là các cổng mở hay đóng

TCP Window (-sW): Window scan thì giống với ACK scan, nó có thể xác định các cổng so với các cổng đóng dựa trên các máy trung tâm

TCP Maimon (-sM): Ít người biết firewall – evading scan thì tương tự đối với kiểu quét FIN, nhưng bao gồm ACK flag. Điều này cho phép nhiều gói tin firewall lọc, với nhược điểm là nó làm việc dựa trên một số ít hệ thống hơn FIN scan

TCP Idle (-sI <zombie host>): Idle scan là kiểu quét toàn bộ, và đôi khi khai thác các địa chỉ có mối quan hệ đáng tin cậy. Nhược điểm là nó chậm và phức tạp

IP protocol (-sO): Protocol scan xác định các giao thức IP như (TCP, ICMP, …) được hỗ trợ bởi các máy mục tiêu. Đây không phải là một kĩ thuật quét cổng, thông qua các giao thức chứ không phải là số cổng TCP hay UDP. Vẫn sử dụng lựa chọn –p để chọn số giao thức được quét, báo cáo kết quả với một bảng định dạng các cổng và sử dụng quét cơ bản như phương thức quét cổng thực

TCP FTP bounce (-b <FTP bounce proxy>): Phản đối quét thủ thuật máy chủ FTP vào thực hiện quét cổng bằng proxy. Hầu hết FTP server bây giờ được vá để ngăn cản điều này. Nhưng nó là cách tốt để vượt qua tường lửa khi nó làm việc

2. Lựa chọn cổng để quét

-p 22: Quét cổng đơn trong trường hợp này là cổng 22

-p ssh: Tên cổng có thể tốt hơn là dạng số. Lưu ý một tên có thể thay thế cho nhiều cổng

-p 22,25,80: Nhiều cổng được cách nhau bởi dấu phẩy. Nếu một TCP scan như SYN scan (-sS) là đặc biệt, cổng TCP 22, 25 và 80 được quét. Tương ứng với các dịch vụ SSH, SMTP, và HTTP. Nếu là UDP scan thì chọn (-sU)

-p 80–85,443,8000–8005,8080–8085: Đó là một giải cổng được quét được cách nhau bởi dấu phẩy

-p-100,6000: Bạn có thể bỏ qua cổng bắt đầu của một giải cổng, được bắt đầu từ cổng 1, hoặc cổng cuối là 65535 đối với TCP và UDP, 225 đối với giao thức quét

-p-: Bỏ qua cổng bắt đầu và kết thúc để quét toàn bộ giải cổng (không bao gồm cổng Zero)

-pT: 21,23,110,U: 53,111,137,161: Một danh sách cổng TCP và UDP có thể được đưa ra với T: (cho TCP) hoặc U. Đây giống quét 3 cổng TCP (FTP, Telnet, và POP3) và 4 dịch vụ UDP (DNS, rpcbind, NetBOIS, và SNMP)

-p http*: Có thể sử dụng để phù hợp với tên tương tự. Ví dụ như http(80), http-mgmt(280), https(443) và http-proxy(8080)

VIII. Nmap script engine

Nmap script engine là một trong những chức năng mạnh và linh hoạt của nmap. Nó cho phép người sử dụng viết những script đơn giản để tự động mở rộng nhiệm vụ của nmap. Script sau đó được thực hiện song song với tốc độ và hiệu quả mà bạn mong đợi từ nmap

Script NSE linh hoạt với những nhiệm vụ sau:

Network discovery: Tìm kiếm toàn bộ dữ liệu dựa trên domain của máy mục tiêu, truy vấn ARIN, RIPE, hoặc APNIC đối với IP máy mục tiêu để xác định quyền sở hữu, thực hiện các tra cứu các cổng mở, các truy vấn SNMP và NFS/SMB/RPC đối với các dịch vụ có sẵn.

Phát hiện nhiều phiên bản phức tạp hơn: Hệ thống phát hiện phiên bản của Nmap có thể công nhận hàng trăm dịch vụ khác nhau khi thăm dò và thường xuyên phát hiện chữ ký dựa trên hệ thống, Nhưng nó không nhận ra mọi thứ.

Phát hiện điểm yếu(Vulnerability detection): Khi một điểm yếu mới được phát hiện, bạn thường muốn quét mạng của bạn nhanh để xác định điểm yếu của hệ thống trước khi nguy cơ xấu có thể xảy ra. Trong khi Nmap không phải là công cụ quét toàn diện, NSE là đủ mạnh để xử lý kiểm tra những điểm yếu đang đe dọa. Nhiều script phát hiện điểm yếu thực sự có sẵn.

Phát hiện Backdoor: Nhiều attacker và một vài worms tự động chuyển backdoor tới và một vài trong số chúng có thể phát hiện bằng Nmap dựa trên nhiều phiên bản phát hiện. Khai thác điểm yếu (Vulnerability exploitation): NSE có thể được sử dụng để khai thác điểm yếu hơn là để tìm chúng. Khả năng thêm kịch bản khai thác điểm yếu có thể có giá trị với một số người.

Chúng ta có thể sử dụng --script hoặc -sC

Câu lệnh: Nmap –sc -p <port list> target

NSE Scripts:

(server message block) protocol.

Smb-security-mode:

Smb-enum-shares: Được sử dụng để kiểm tra thông tin được chia sẻ trên máy target.

Smb-enum-users: Liệt thông tin về các user khi đăng nhập tài khoản máy target

Smb-enum-sessions: Kiểm tra thông tin người dùng

Smb-enum-processes: Liệt kê các tiến trình đang chạy trên một máy từ xa, đọc file HKEY_PERFORMAINCE_DATA registry ẩn, và phân tích các dữ liệu tìm thấy trong đó. Chỉ dùng cho win2000.

Smb-system-info: Thông tin chi tiêt về hệ điều hành chỉ dùng trên win2000.

Smb-check-vulns: Giúp người quản trị tìm các lỗi hệ điều hành MS08-067. Là lỗ hổng nghiêm trọng trong windows vào tháng 10 năm 2008. Phát hiện conficker worm khi khai thác điểm yếu.

Smb-brute: Nỗ lực đăng nhập vào một tài khoản SMB bằng việc đoán username và password. Mã và thuật toán được thiết kế để tận dụng lợi thế của giao thức SMB trong nhiều cách khác nhau để khám phá mà người dùng tồn tại và có hay không thể xác định mật khẩu. mục đích của smb-brute là để thực hiện kiểm tra nhanh đối với các password phổ biến, không khởi động một brutefore đầy đủ. Phần lớn sức mạnh của nó đến từ một sự hiểu biết sâu sắc của giao thức SMB.

Smb-pwdump: Đưa ra thông tin danh sách hashes từ hệ thống từ xa của người dùng.

Smb-os-discovery: Đưa ra thông tin về hệ điều hành, tên máy tính, domain, workgroup, thời gian hiện tại trên giao thức SMB.

Asn-query: Đưa ra thông tin số hiệu mạng và quốc gia. Sử dụng script này khi quét sẽ được lưu lại trên máy chủ mục tiêu bao gồm địa chỉ ip máy và số hiệu mạng của một máy chủ DNS (máy chủ DNS mặc định của bạn).

nmap --script asn-query [--script-args dns=<DNS server>] <target>

Auth-owners: Cố gắng tìm chủ sở hữu của một cổng TCP.

nmap -sV -sC <target>

auth-spoof: Kiểm tra đáp ứng máy chủ bằng việc trả lời trước khi gửi truy vấn.

nmap -sV --script=auth-spoof <target>

daytime: lấy ngày và thời gian

nmap -sV --script=daytime <target>

dns-random-srcport: Kiểm tra máy chủ dns. Giúp phat hiển lỗ hổng cổng nguồn máy chủ DNS để tấn công đầu độc bộ nhớ cache (CVE-2008-1447). Kịch bản này có khả năng ghi lại bởi một hoặc nhiều máy chủ dns. Ngoài ra địa chỉ ip của bạn sẽ được gửi đi cùng với các truy vấn porttest đến máy chủ DNS đang chạy trên mục tiêu.

nmap -sV --script=dns-random-srcport <target>

dns-recursion: Kiểm tra nếu máy chủ DNS cho phép truy vấn cho tên của bên thứ ba.

nmap -sV -sC <target>

dns-zone-transfer: Yêu cầu một zone transfer(AXFR) từ máy chủ DNS. Script sẽ gửi một truy vấn AXFR tới một máy chủ DNS.

nmap --script dns-zone-transfer.nse \

 --script-args dns-zone-transfer.domain=<domain>

Finger: Lấy một danh sách tên người dùng sử dụng dịch vụ finger.

nmap -sV -sC –script=finger <target>

ftp-bounce: Kiểm tra xem một máy chủ FTP cho phép quét cổng bằng cách sử dụng phương thức FTP bounce.

Html-title: Hiện title của một trang mặc định của một web server

http-auth: Lấy xác thực và các lĩnh vực của một dịch vụ web

http-open-proxy: Kiểm tra HTTP proxy mở. script cố gắng kết nối với google.com thông qua proxy và kiểm tra mã phản hồi HTTP hợp lệ. Mã số đáp ứng HTTP hợp lệ là 200, 301 và 302.

http-passwd: Kiểm tra nếu một web server bị lỗ hổng đối với một vài thư mục /etc/passwd hoặc \boot.ini.

http-trace: Gửi yêu cầu HTTP TRACE và hiện các trường header được chỉnh sửa .

iax2-version: Xác định dịch vụ UDP IAX2. Script sẽ gửi một Inter-Asterisk

eXchange yêu cầu và kiểm tra cho một đáp ứng thích hợp. Giao thức này sử dụng để cho phép các kết nối VoIP giữa các máy chủ cũng như giao tiếp clientserver.

Irc-info: Thông tin từ một IRC server.

Ms-sql-info: Xác định chính xác thông tin từ Microsoft SQL

Mysql-info: Kết nối máy chủ MySQL và in các thông tin như về giao thức và số version, thread ID, status, capabilities và password salt.

Nbstat: Xác định tên NetBIOS và địa chỉ MAC. Script hiển thị tên máy tính và loged-in user.

sudo nmap -sU --script nbstat.nse -p137 <host>

pop3-brute: Thử đăng nhập vào tài khoản POP3 bằng username guesing và password

sql-injection: Tìm kiếm các URL có chứa các lỗ hổng do một cuộc tấn công SQL injection. Tìm kiếm một máy chủ HTTP cho các URL có chứa các truy vấn, sau đó nó tiến hành kết hợp với các lệnh SQL crafted với URL nhạy cảm để có được các lỗi. Các lỗi được phân tích để xem nếu URL là dễ bị tấn công. Điều này sử dụng hình thức cơ bản nhất của SQL injection.

nmap -sV --script=sql-injection <target>

whois: Truy vấn dịch vụ WHOIS của Regional Internet Registries (RIR) và xác định các thông tin về địa chỉ IP.

Nmap –script=whois target

Xampp-default-auth: Kiểm tra nếu XAMP hoặc XAMPP FTP server sử dụng tên và password mặc định

vncoder logo

Theo dõi VnCoder trên Facebook, để cập nhật những bài viết, tin tức và khoá học mới nhất!