học làm hacker

30 495 0
học làm hacker

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

học làm hacker tài liệu, giáo án, bài giảng , luận văn, luận án, đồ án, bài tập lớn về tất cả các lĩnh vực kinh tế, kinh...

**** Foot Printing **** Thân chào tất cả các bạn , nhằm đáp ứng nhu cầu học hỏi trong hacking và security, fantomas311 đã biên soạn một bộ bài viết "Basic hacking" và các bài viết liên quan đến hacking hệ thống để giới thiệu đến các bạn . Xin khuyến cáo với những ai muốn học hack một cách fast food là các bạn không nên đọc bài viết này ! Vì tôi không post những bài dạy hack cho các bạn , mà tôi chỉ post bài theo phương châm "hack như thế nào" . Hãy đọc , suy nghĩ và làm bằng đôi tay và khối óc của mình !! Trước khi các hacker thực sự bắt tay vào việc, họ phải tiến hành 3 bước cơ bản là in dấu ấn (foot printing) , Quét (scanning) và điểm danh(enumeration). Bài viết này đề cập đến kỹ thuật in dấu ấn và những vấn đề liên quan. **In dấu ấn là gì ??** In dấu ấn là việc dùng các công cụ và kỹ thuật để lấy thông tin cơ bản đầu tiên về một tổ chức hoặc một chuyên khu web muốn tấn công ( trong bài viết này tạm gọi là victim). Việc in dấu ấn có hệ thống một tổ chức sẽ cho phép hacker thấy rõ tình hình an ninh ( độ bảo mật) của tổ chức đó. **Tại sao cần in dấu ấn ??** Foot Printing giúp có thể định danh tất cả các mẩu tin và nắm những thông tin cơ bản (đôi khi khá quan trọng) về victim ** Kỹ thuật in dấu ấn ** Có rất nhiều kỹ thuật in dấu ấn khác nhau, bài viết này sẽ mô tả các bước giúp bạn hoàn thành một đợt phân tích dấu ấn kỹ lưỡng. *Bước 1: định phạm vi hoạt động: Bước này nói cho đơn giản là bạn phải xác định rõ cái mà bạn muốn hack là gì ( một công ty , một server hay chỉ là một web cá nhân ) - Đối với người mới bắt đầu, bạn nên đọc kỹ và ghi lại những thông tin mà trang web cung cấp cho bạn ( những thông tin về nó , như số ĐT , mail của webmaster , địa chỉ ). Có nhiều khi những thông tin này lại là "chiếc chìa khoá vàng" cho bạn :) Những mục đáng quan tâm bao gồm : + Các vị trí + Các công ty hoặc thực thể liên quan + Các kết nối hoặc tin tức có được + Các ngôn ngữ bảo mật nêu rõ các cơ chế bảo mật đã thiết đặt ( cấu hình fire wall chẳng hạn ) + Các số điện thoại , tên liên lạc và Email Ngoài ra, bạn cũng có thể xem lại mã nguồn HTML để tìm những sơ hở trong lập trình , bên cạnh đó , những chú thích nằm trong các thẻ HTML như < ! và ~ cũng là một " tài nguyên" đáng khai thác !! ( thí dụ như :D ) Sau khi nghiên cứu trang web , bạn tìm thêm những thông tin cung cấp các manh mối bổ sung về tình trạng của tổ chức và tình hình an ninh của nó ( trên báo chí , các bản tin trên NET chẳng hạn) . Những động cơ tìm kiếm là chìa khoá cho bạn . Sau đây là một vài động cơ tìm kiếm : http://google.com :) http://sec.gov http://cyberarmy.com Http://deja.com http://networksolution.com http://dogpile.com http://astalavista.com http://ipswich.com http://arin.net/whois/ http://ferretsoft.com Okie, hãy tiến hành bước đấu tiên trong kỹ thuật Hack !! B) *Bước 2 : điểm danh mạng Trong bước này , việc đầu tiên là định danh các domain và mạng có liên quan đến victim . Muốn làm điều này , hãy truy xuất dữ liệu của network solution ( www.networksolution.com ) và American Registry for Internet Number ( www.arin.net ) Một số kiểu truy vấn : +Organizational : Tất cả các thông tin có liên quan đến một tổ chức cụ thể +Domain: domain +Network: mạng hoặc IP +Point of contact: 1 cá nhân cụ thể ( admin ) *Bước 3 : Truy vấn DNS Sau khi định danh các domain của tổ chức đích (victim), bạn có thể bắt đầu truy vấn DNS . Nếu DNS được cấu hình bấp bênh, ta có thể moi được thông tin tiết lộ về tổ chức . Một trong những cách cấu hình sai nghiêm trọng nhất mà một điều hành viên có thể mắc phải là cho phép người dùng internet không tin cậy thực hiện chuyển giao miền DNS ( zone transfer). Sự cố này có thể cho thấy tên hệ chủ, các IP ẩn nói chung là các thông tin muốn che dấu ! Việc cung cấp địa chỉ IP bên trong cho 1 người dùng không tin cậy trên internet cũng giống như cung cấp bản đồ ngôi nhà mình cho kẻ trộm vậy !! Đến đây, có lẽ bạn có một câu hỏi " Zone transfer - how ??" . Xin thưa là đây là một vấn đề khác, có lẽ tôi sẽ đề cập trong một bài viết khác của mình để tránh loãng bài viết :). Kết thúc bước 3 tại đây ! *Bước 4: trinh sát mạng Sau khi đã có bản đồ trong tay, thì đây là giai đoạn "xâm nhập thực tế" để xác định lộ trình truy cập tiềm năng mạng ( tạm hiểu như là việc do thám để xác định các con đường trước khi tiến hành đánh cướp á mà ! ) Để thực hiện công việc này , xin giới hiệu các bạn chương trình trace route ( ftp://ftp.ec.lbl/traceroute.tar.z ) có trong hầu hết phiên bản của Unix & WinNT . Trong WinNT , nó có tên là tracert. Trace route là một công cụ chẩn đoán do Van Jacobson viết để cho phép xem tuyến đường mà một gói tin IP sẽ theo từ server này sang server khác Nếu bạn không rành các lệnh trong Unix , có thể dùng VIsual Route ( http://www.visualroute.com ) để thực hiện tiến trình trinh sát(tracerouting) này . Giao diện của visual route trông rất bắt mắt & dễ sử dụng. Nhưng không có tác dụng tốt với các mạng có quy mô lớn . Ngoài ra , bạn còn có thể thực hiện một kỹ thuật phức tạp hơn gọi là "tiến trình quét giao thức firewall" (sẽ đề cập ở Basic hacking II - Scanning của fantomas311 ) Vậy là công đoạn đầu tiên của việc hack vào một hệ thống đã xong . Bây giờ, sau khi đã thực hiện hoàn tất các bước trên, bạn ( tôi chỉ nói những người đã làm đúng các bước trên) có thể tự hỏi : "vậy có tác dụng gì ??" Làm gì tiếp theo??" "những thông tin thu được có tác dụng gì?" " Có nhất thiết phải thực hiện bước này không ?? " :) Nhiều câu hỏi quá ! Nhưng xin để các bạn tự trả lời vậy ! Tôi chỉ trả lời 1 câu thôi ! Bước tiếp theo của quá trình hack - theo lý thuyết - là Scanning . Quá trình Scanning sẽ được đề cập trong bài viết tiếp theo của fantomas311 : " Basic Hacking part II - Scanning" :) Hy vọng bài viết này làm bạn hài lòng Sơ Lược Trace Route Trong bài viết trên tôi đã đề cập đến traceroute. Vậy Traceroute là gì ?? Mời các bạn xem bài viết sau: Traceroute là gì? Traceroute là một chương trình cho phép bạn xác định được đường đi của các gói packets từ máy bạn đến hệ thống đích trên mạng Internet. Một ví dụ về Traceroute! Traceroute có thể làm được gì? Bạn hãy xem ví dụ sau sẽ rõ! C:\windows>tracert 203.94.12.54 Tracing route to 203.94.12.54 over a maximum of 30 hops 1 abc.netzero.com (232.61.41.251) 2 ms 1 ms 1 ms 2 xyz.Netzero.com (232.61.41.0) 5 ms 5 ms 5 ms 3 232.61.41.10 (232.61.41.251) 9 ms 11 ms 13 ms 4 we21.spectranet.com (196.01.83.12) 535 ms 549 ms 513 ms 5 isp.net.ny (196.23.0.0) 562 ms 596 ms 600 ms 6 196.23.0.25 (196.23.0.25) 1195 ms1204 ms 7 backbone.isp.ny (198.87.12.11) 1208 ms1216 ms1233 ms 8 asianet.com (202.12.32.10) 1210 ms1239 ms1211 ms 9 south.asinet.com (202.10.10.10) 1069 ms1087 ms1122 ms 10 backbone.vsnl.net.in (203.98.46.01) 1064 ms1109 ms1061 ms 11 newdelhi-01.backbone.vsnl.net.in (203.102.46.01) 1185 ms1146 ms1203 ms 12 newdelhi-00.backbone.vsnl.net.in (203.102.46.02) ms1159 ms1073 ms 13 mtnl.net.in (203.194.56.00) 1052 ms 642 ms 658 ms Tôi cần biết đường đi từ máy tôi đến một host trên mạng Internet có địa chỉ ip là 203.94.12.54. Tôi cần phải tracert đến nó! Như bạn thấy ở trên, các gói packets từ máy tôi muốn đến được 203.94.12.54 phải đi qua 13 hops(mắt xích) trên mạng. Đây là đưòng đi của các gói packets: Netzero(ISP đã gởi dữ liệu đi) -> Spectranet (một nhà công cấp mạng xương sống - Backbone Provider) -> New York ISP -> New York Backbone -> Asia -> South Asia -> India Backbone -> New Delhi Backbone -> một router khác trong New Delhi Backbone -> New Delhi ISP Như vậy, host có địa chỉ ip 203.94.12.54 nằm ở New Delhi, India, South Asia! Bạn cũng có thể telnet đến 203.94.12.54 trên cổng 13(datetime) để xác định giờ GMT qua đó bạn có thể biết được vị trí của host này(yêu cầu là host 203.94.12.54 phải chạy daemon datetime và được định cấu hình đúng về thời gian)! Traceroute hoạt động như thế nào? Trước hết, bạn cần biết về ICMP, TTL và cách làm việc của các routers(bộ định tuyến)! Những kiến thức cơ bản ICMP - Internet Control Message Protocol. ICMP được dùng để thông báo các lỗi xảy ra trong quá trình truyền đi của các gói dữ liệu trên mạng. ICMP thuộc tầng vận huyển - Transpoort Layer! Tầng ứng dụng HTTP FTP Telnet Finger SSH DNS POP3/IMAP SMTP Gopher BGP Time/NTP Whois TACACS+ SSL DNS SNMP RIP RADIUS Archie Traceroute tftp Ping Tầng vận chuyển TCP UDP ICMP OSPF Tầng Internet IP ARP Tầng vật lí Ethernet/802.3 Token Ring (802.5) SNAP/802.2 X.25 FDDI ISDN Frame Relay SMDS ATM Wireless (WAP, CDPD, 802.11) Fibre Channel DDS/DS0/T-carrier/E-carrier SONET/SDH DWDM PPP HDLC SLIP/CSLIP xDSL Cable Modem (DOCSIS) Tất cả các ICMP messages đều được chuyển đi cùng với các IP datagrams. Mỗi ICMP message được gói trong IP datagram sẽ có dạng như sau: + + + | IP Header(20 bytes) | ICMP message (32 bytes) | + + + Sau đây là cấu trúc của một IMCP message: (tham khảo RFC792 để biết thêm!) 0 7 8 15 16 31 + + + + | Type (0 or 8) | Code (0) | 16-bit Checksum | + + + + | Indentifier | sequence number | + + + + | | | Optional Data (nội dung tùy thuộc vào Type và Code) | | | + + trường type có 15 giá trị khác nhau, tùy thuộc vào từng loại ICMP error message cụ thể. Ví dụ type=3 để chỉ định cho thông báo lỗi "Không đến được đích" - "Destination unreachable" error message! trường code = sub-error dùng để xác định chính xác lỗi đã xảy ra. Ví dụ, type=3 và code=0 nghĩa là "Network Unreachable"(không đến được mạng); nếu type=3, code=1 nghĩa là "Host Unreachable"(không đến được host) TTL - Time to Live. TTL là một trường 8 bit trong IP header(bạn hãy xem lại cấu trúc của IP header!). TTL là thời gian gói dữ liệu tồn tại trên mạng trước khi nó bị bỏ qua. Người gởi dữ liệu đi sẽ xác định một giá trị TTL trước, thường là từ 32 -> 64. Giá trị này sẽ được giảm đi một khi một khi được chuyển qua một bộ định tuyến trên mạng. Khi giá trị này bằng 0, datagram này sẽ bị bỏ qua và giao thức ICMP sẽ báo lỗi về cho người gởi. Điều này sẽ tránh cho datagram này đi vào một vòng lặp vô tận qua các bộ định tuyến. Mỗi bộ định tuyến khi nhận được IP datagram sẽ giảm giá trị TTL của datagram này đi một. Hầu hết các bộ định tuyến đều không giữ lại datagram này trong thời gian quá 1 giây trước khi chuyển datagram này đi. Nên giá trị TTL có thể coi bằng hop(counter) = số bộ định tuyến mà datagram này vừa vượt qua. Khi bộ định tuyến nhận được một datagram có trường TTL bằng 0 hoặc 1, nó sẽ không chuyển datagram này đi tiếp. Thay vào đó, nó sẽ bỏ qua datagram này và gởi một ICMP message "Time Exceeded"(quá thời gian) trở lại cho người đã gởi datagram này! Vì ICMP message mà bộ định tuyến gởi trở lại cho người gởi có địa chỉ nguồn - source address là địa chỉ ip của bộ định tuyến này nên người gởi có thể biết được địa chỉ ip của router này! Cách làm việc của traceroute! Traceroute gởi một IP datagram có TTL=1 đến hệ thống đích. Router đầu tiên nhận được datagram này sẽ giảm giá trị TTL đi một -> TTL=0 và router này sẽ bỏ qua datagram này(không gởi nó đi tiếp!) và gởi một ICMP error message với địa chỉ ip nguồn là địa chỉ của nó đến máy bạn. Như vậy router có thể xác định địa chỉ ip của router thứ nhất! Sau đó, traceroute sẽ gởi một datagram mới đi với giá trị TTL=2(1+1=2) đến hệ thống đích. Router đầu tiên sẽ giảm giá trị của TTL đi một -> TTL=1(2-1=1) và chuyển datagram này sang router thứ 2. Router thứ 2 nhận được datagram có TTL=1 sẽ giảm TTL=0. Rounter 2 nhận thấy TTL=0 nên nó sẽ không chuyển datagram này đi tiếp. Router 2 sẽ gởi trở lại máy bạn một ICMP error message với địa chỉ ip nguồn là địa chỉ ip của nó(router 2). Như vậy trình traceroute trên máy bạn sẽ biết được router thứ 2 mà datagram đã đi qua. Traceroute sẽ tiếp tục gởi một datagram khác có TTL=3(2+1=3) đi và lặp lại quá trình trên cho đến khi datagram đến được hệ thống đích! Nếu bây giờ IP datagram đã đến được đích, TTL=1. Host đích sẽ bỏ qua datagram này và nó cũng sẽ không gởi "Time Exceeded" ICMP error message. Như vậy thì bạn sẽ không thể nào biết được là mình đã đến đích chưa?! Traceroute dùng một cơ chế khác như sau: Traceroute gởi UDP datagrams đến host đích trên các cổng UDP có số hiệu lớn(>30000). Sở dĩ nó chọn các cổng có giá trị lớn vì thường không có ứng dụng nào đang lắng nghe ở các cổng này. Khi host đích nhận được UDP datagram này, nó sẽ gởi trả lại một ICMP error message "Port Unreachable"(không đến được cổng) cho traceroute. Bây giờ thì traceroute có thể phân biệt được sự khác nhau giữa ICMP error message "Time Exceeded" với "Port Unreachable" để biết được đã đến được đích hay chưa?! Ghi chú: ICMP error message "Time Exceeded" có type=1 và code=0; ICMP eror message "Port Unreachable" có type=3 và code=3 Tổng kết: traceroute gởi UDP datagrams đến host đích với giá trị TTL=1 và được tăng sau mỗi lần để xác định các routers mà datagrams đã đi qua. Mỗi router sẽ gởi trở về một ICMP message "Time Exceeded". Riêng hệ thống đích sẽ gởi trở lại cho traceroute một ICMP message "Port Unreachable". Traceroute dựa vào sự khác biệt này để xác định xem đã đến được đích chưa?! Ví dụ cuối cùng! host2 # traceroute xyz.com traceroute to xyz.com (202.xx.12.34), 30 hops max, 40 byte packets 1 isp.net (202.xy.34.12) 20ms 10ms 10ms 2 xyz.com (202.xx.12.34) 130ms 130ms 130ms Dòng đầu tiên cho biết hostname và địa chỉ IP của hệ thống đích. Dòng này còn cho chúng ta biết thêm giá trị TTL<=30 và kích thước của datagram là 40 bytes(20-bytes IP Header + 8-bytes UDP Header + 12-bytes user data). Dòng thứ 2 cho biết router đầu tiên nhận được datagram là 202.xy.34.12, giá trị của TTL khi gởi đến router này là 1. Router này sẽ gởi trở lại cho chương trình traceroute một ICMP message error "Time Exceeded". Traceroute sẽ gởi tiếp một datagram đến hệ thống đích. Dòng thứ 3, xyz.com(202.xx.12.34) nhận được datagram có TTL=1(router thứ nhất đã giảm một trước đó - TTL=2-1=1). Tuy nhiên, xyz.com không phải là một router, nó sẽ gởi trở lại cho traceroute một ICMP error message "Port Unreachable". Khi nhận được ICMP message này, traceroute sẽ biết được đã đến được hệ thống đích xyz.com và kết thúc nhiệm vụ tại đây. Trong trường hợp router không trả lời sau 5 giây, traceroute sẽ in ra một dấu sao "*"(không biết) và tiếp tục gởi datagram khác đến host đích! ***** Scanning ***** === Author : Fantomas311 === Nếu Foot Printing là thu thập tất cả thông tin có liên quan đến tổ chức đích thì Scan là một bước xác định xem trong mớ bòng bong kia thì cái nào là "xài được" bằng các đợt quét ping, quét cổng và các công cụ phát hiện tự động Nếu kỹ thuật zone transfer cho ta 1 địa chỉ IP thì scan sẽ giúp ta xác định xem nó ở port nào và nó có phải là một IP thực hay không. Có một số server hiển thị cả các IP của mạng tư ( thí dụ như 10.10.10.0 ). Một địa chỉ IP như thế không thể định tuyến ( xem http://www.ietf.org/rfc/rfc1918.txt để biết thêm chi tiết) ++ Quét Ping mạng : Ngòai quét ping truyền thống bằng cách mở cửa sổ DOS và tyoe lệnh Ping như chúng ta đều biết, còn một số kiểu quét ping khác như : + Fping: dùng trong Unix ( http://ftp.tamu.edu/pub/Unix/src ) fping là một trình tiện ích gửi đi các yêu cầu mass ping theo kiểu song song vì thế fping quét được nhiều địa chỉ IP hơn so với ping + Nmap ( http://insecure.org/nmap ) : Có lẽ không cần nói nhiều về trình tiện ích này , có khá nhiều hướng dẫn đầy đủ cách sử dụng và chức năng của nmap trên mạng. Nmap cung cấp khả năng quét ping với tùy chọn -sP + Pinger : dùng cho Windows, sản phẩm miễn phí của Rhino9 ( http://207.98.195.250/software/ ) là một trong các trình tiện ích nhanh nhất sẳn có + Ping Sweep : Sản phẩm của Solarwinds, chạy khá nhanh, nhưng công cụ này có thể làm bão hòa một mạng có tuyến nối kết chậm ( Cái này xài ở VN ko ổn nên ko giới thiệu chi tiết ) + WS Ping Proback ( http://www.ipswich.com ) và các công cụ netscan ( http://www.nwpsw.com ) đủ để quét một mạng nhỏ, tiện dụng và giao diện đơn giản , tuy nhien khá chậm so với pinger và ping sweep . Người mới bắt đầu nên sử dụng lọai này ! Về cơ bản thì ping là quá trình gửi và nhận các gói tin ICMP (Internet Control Messaging Protocol ) . Vậy nếu ICMP bị phong tỏa bởi quản trị mạng của chuyên khu đích thì sao ? Trường hợp điển hình là khi type lệnh ping một domain mà không nhận được hồi âm nào , lúc đó ICMP tại bộ định tuyến biên bị phong tỏa hoặc có một fire wall đã được thiết lập . Trong trường hợp này ta có hai lựa chọn : + Bỏ qua quét ping mà thực hiện quét cổng (port Scan) : Sẽ đề cập ở phần sau của bài viết này . + Thực hiện ping TCP: - Dùng Nmap với tùy chọn -PT . Tùy chọn này sẽ gửi các gói tin TCP SYN đến mạng đích và đợi đáp ứng, các hệ chủ "còn sống" sẽ đáp ứng bằng một gói tin TCP SYN/ACK. Phương pháp này khá hiệu quả để xác định xem hệ chủ có còn sống hay không cho dù chuyên khu đã phong tỏa ICMP .Bạn nên lặp lại kiểu quét này vài lần trên các cổng chung như SMTP (25) , POP (110) , IMAD ( 143 ) , hoặc các cổng có thể là duy nhất đối với các chuyên khu nhất định - HPing ( http://www.kyuzz.org/antirez/ ) là một trình tiện ích ping TCP khác có công năng bổ sung TCP qua mặt cả Nmap . Hping cho phép người dùng điều khiển các tùy chọn cụ thể về gói tin TCP có thể cho phép nó đi qua một số thiết bị kiểm sóat truy cập nhất định. Nhờ ấn định cổng đích với tùy chọn -P , bạn có thể phá vỡ vài thiết bị kiểm sóat truy cập tương tự như kỹ thuật trace route đã nêu ở Part I có thể dùng Hping để thực hiện các đợt quét ICMP và có thể phân mảnh [ fragment ] các gói tin có tiềm năng phớt lờ một số thiết bị kiểm soát truy cập .Hping sẽ được đề cập chi tiết hơn ở phần sau Tóm lại , bước này cho phép xác định một cách chính xác các hệ thống còn sống hay không thông qua ICMP hoặc thông qua cổng quét chọn lọc . Làm như vậy, ta đã giảm bớt đáng kể tiến trình ấn định đích, tiết kiệm thời gian trắc nghiệm và thu hẹp trọng tâm của các hoạt động . ++ Truy vấn ICMP : Bạn có thể thu thập tất cả các kiểu thông tin quý giá về một hệ thống bằng cách đơn giản gửi một gói tin ICMP cho nó , các công cụ có thể down load tại http://securityfocus.com ++ Quét cổng (port scan): đến lúc này , ta đã định danh các hệ thống còn sống bằng cách dùng các đợt quét ping ICMP hoặc TCP và đã thu thập được một ít thông tin ICMP . Giờ đây ta đã sẵn sàng tiến trình quét cổng từng hệ thống. Quét cổng là tiến trình nối với các cổng TCP và UDP trên hệ đích để xác định các dịch vụ đang chạy hoặc đang ở trạng thái LISTENNING . Ta phải định danh các cổng đang lắng chờ nếu như muốn xác định kiểu hệ điều hành và các ứng dụng đang dùng. Các dịch vụ hoạt động đang lắng chờ (listenning) có thể cho phép một người dùng trái phép giành được quyến truy cập các hệ thống bị cấu hình sai. Sau đây,ta coi như các hệ thống mà ta đã định danh ở bước trên là còn sống ( alive ) , mục tiêu của việc quét cổng là : + Định danh các dịch vụ TCP và UDP đang chạy trên hệ đích + Định danh kiểu hệ điều hành của hệ đích + Định danh các ứng dụng cụ thể hoặc các phiên bản của một dịch vụ cụ thể ** Các kiểu quét : trước khi giới thiệu các công cụ quét cổng chủ yếu, ta phải xét qua các kỹ thuật quét cổng sẵn dùng : * Quét nối TCP : kiểu quét này nối với cổng đích và hòan thành một đợt bắt tay ba chiều đầy đủ ( SYN , SYN/ACK , ACK ) hệ đích có thể dễ dàng phát hiện nó . Tiến trình bắt tay ba chiều TCP gồm : = Gửi gói tin SYN đến hệ phục vụ = Nhận gói tin SYN/ACK từ hệ phục vụ = Gửi gói tin ACK đến hệ phục vụ * Quét TCP SYN : kỹ thuật này là việc thực hiện một tuyến nối TCP đầy đủ, nghĩa là : gửi gói tin SYN đến cổng đích , ta có thể suy ra nó nằm trong trạng thái listenning. Nếu nhận được một RST/ACK nó thường cho thấy cổng đang không lắng chờ: một RST/ACK sẽ được gửi bởi hệ thống thực hiện quét cổng để một tuyến nồi đầy đủ không bao giờ được thiết lập.Kỹ thuật này có ưu điểm là mang tính lén lút hơn một tuyến nối TCP đầy đủ * Quét TCP FIN : kỹ thuật này gửi một gói tin FIN cho cổng đích. Dựa trên RFC 793 ( http://www.ietf.org/rfc/rfc0793.txt ) hệ đích sẽ gửi trả một RTS cho tất cả các cổng đã đóng.Kỹ thuật này thường chỉ làm việc trên các ngăn xếp TCP/IP gốc Unix * Quét TCP Xmas Tree : Kỹ thuật này gửi một gói tin FIN , URG và PUSH cho cổng đích dựa trên RFC 793, hệ đích sẽ gửi trả một RST của tất cả các cổng đã đóng. * Quét TCP Null : giống TCP Xmas Tree * Quét UDP : Kỹ thuật này gửi một gói tin UDP cho cổng đích. Nếu cổng đích đáp ứng bằng một thông điệp "ICMP port unreachable ", cổng đã đóng. Ngược lại, nếu không nhận được thông điệp trên, ta có thể suy ra cổng mở ! Độ chính xác của kỹ thuật này tùy thuộc nhiều vào yếu tố có liên quan đến việc sử dụng các tài nguyên mạng và hệ thống. Khi thực hiện các đợt quét cổng UDP, có thể sẽ cho kết quả khác nhau . Một số thực thi IP sẽ gửi trả tất cả các RTS của tất cả các cổng đã quét dẫu chúng có đang lắng chờ hay không * Định danh các dịch vụ TCP và UDP đang chạy : trình tiện ích của một công cụ quét cổng tốt nhất là một thành phần quan trọng của tiến trình in dấu ấn. Tuy có nhiều bộ quét cổng sẵn dùng cho cả Unix và NT , nhưng tôi sẽ đề cập đến một số bộ quét cổng thông dụng và nhanh : - Strobe :strobe là một trong những bộ quét TCP nhanh và đáng tin cậy sẵn dùng , được viết bởi Julian Arrange ( ftp.win.or.jp/pup/network/misc/strobe-105.ta.gz ) Một số tính năng chính của Strobe bao gồm khả năng tối ưu hóa các tài nguyên mạng, hệ thống và quét hệ đích một cách có hiệu quả . Ngòai tính hiệu quả , phiên bản 1.04 của strobe về sau sẽ nắm giữ các banner kết hợp của từng cổng mà chúng nối với . Điều này có thể giúp định danh hệ điều hành lẫn dịch vụ đang chạy . Tính năng nắm giữ banner sẽ được nói nhiều hơn ở Part III Tuy nhiên Strobe cũng có một số nhược điểm là không cung cấp khả năng quét UDP và hệ đích có thể dễ dàng phát hiện - Up_Scan : Nếu Strobe cung cấp khả năng quét TCP thì Up_Scan là một trong những bộ quét UDP tin cậy nhất ( http://wwdsilx.wwdsi.com ) Nhược điểm : dễ bị phát hiện - Netcat : trình tiện ích này có thể thực hiện rất nhiều công việc , cũng như nmap, nóp là công cụ không thể thiếu trong hacking cũng như security. Để quét TCP và UDP , ta sử dụng các tùy chọn -v và -vv , -z, -wz, -u - PortPro và PortScan: trong WinNT thì portPro và PortScan là hai trình tiện ích quét cổng nhanh nhất.PortPro cùa StOrM ( http://securityfocus.com )và portScan là sản phẩm của Rhad. PortScan cung cấp một miền các cổng để quét trong khi portpro đơn giản gia số các cổng của nó, nhưng cả hai đều không cung cấp các miền địa chỉ IP .Portpro là một trong những công cụ quét cổng nhanh nhất sẵn dùng , tuy nhiên càc tùy chọn của nó còn hạn chế ! - Ngòai ra, công cụ quét cổng mạnh nhất vẫn là nmap ( đã giới thiệu ở phần trước ) ** Các công cụ phát hiện tự động: + Cheops ( http://www.marko.net/cheops/ ) cung cấp khả năng quét ping, trace route , khả năng quét cổng và tính năng phát hiện hệ điều hành + Tkined là một phần của bộ Scotty có tại http://wwwhome.cs.wtwente.nl/~choenw/Scotty/ là một bộ sọan thào mạng được viết trong TCL tích hợp các công cụ quản lý mạng khác nhau ,cho phép bạn phát hiện các mạng IP [...]... CUA MOT HACKER Bài học này được chia làm 2 phần chính, với mục đích là giới thiệu cho các bạn hiểu một số cách thức mà hacker sử dụng để thâm nhập vào hệ thống và một số phương pháp có thể áp dụng để tự bảo vệ bạn Bài học này cũng không có ý định hướng bạn đến một cái nhìn xấu về hành vi của hacker mà mục đích là giúp bạn hiểu rõ hơn về vấn đề an toàn bảo mật Cụ thể như sau: 1- Các hacker đã làm như... nhằm tạo bài học sáng sủa dễ hiểu, nếu có ý kiến thắc mắc, các bạn hãy post lên sau mọi người sẽ cùng trao đổi giải quyết I PHÍA HACKERS 1- Mục đích và động cơ của hackers: - Đạt mục đích gì đó liên quan đến tiền bạc, như thay đổi thông tin về tài khoản trong ngân hàng, chuyển tiền, trộm credit card - Giải trí khi rảnh rỗi, thử tay nghề, chứng tỏ khả năng , kiểm tra mức độ bảo mật - Làm yếu đi hoặc... hay submit quá ), tuyến nối phiên làm việc rỗng hay đăng nhập nặc danh và nó vẫn là chỗ đứng có tiềm năng tàn phá nhất trên mạng mà hacker tìm kiếm Tôi nhớ có một bài viết lưu truyền khá rộng rãi trên mạng với tiêu đề rất "ghê" là " hướng dẫn deface một trang web" trong đó hướng dẫn cách dò tìm chỗ yếu anonymous user và khai thác nó ! Để thực hiện một tuyến nối phiên làm việc rỗng, ta dùng cú pháp: C:\>... ********* NOVELL ********* Tuy nói WinNT là bạn của các "phiên làm việc rỗng" nhưng netware của Novell cũng gặp sự cố tương tự : +++ Network Neighborhood :Dùng Network Neighborhood để tìm hiểu về các hệ phục vụ và các "cây" sẵn dùng trên đường truyền Bước này không đe dọa trực tiếp thông tin, nó chỉ như một bước khởi động đơn giản mà thôi, làm được gì thì hay cái nấy !! +++ Các tuyến nối Novell Client32... xâm nhập của hacker Điểm danh liên quan đến các tuyến nối tích cực với các hệ thống và các truy vấn có định hướng Phần lớn thông tin thu thập được qua kỹ thuật điểm danh thoạt nhìn có vẻ như vô hại.Tuy nhiên, những thông tin rò rĩ từ lỗ thủng theo sau nó có thể gây tai hại Nói chung, sau khi điểm danh một tên người dùng hoặc một phần dùng chung hợp lệ, vấn đề còn lại là thời gian trước khi hacker đoán... http://www.ibt.ku.dk/jesper/NTtools/ ) epdump truy vấn bộ ánh xạ điểm cuối RPC và nêu các dịch vụ kết gán với các địa chỉ IP và các số hiệu cổng Dùng phiên làm việc rỗng, get mac hiển thị các địa chỉ MAC và các thiết bị của các card giao tiếp mạng trên các máy từ xa Điều này cung cấp các thông tin hữu ích giúp hacker định hình một hệ thống có nhiều giao diện trên mạng netdom còn hữu ích hơn điểm danh các thông tin chính về các domain... mục đích nào khác - Tận dụng các tài nguyên trên mạng như đ*a cứng, tốc độ CPU, dung lượng đường truyền mạng Hacker có thể lợi dụng sơ hở của 1 server để chiếm một vùng ko gian đ*a free trên nó để chứa dữ liệu của mình, hoặc lợi dụng tốc độ CPU và bandwidth của các server (thường rất nhanh) để làm vào việc khác như tính toán , thậm chí dùng để Dos các server khác Từ những mục đích trên, bạn cần hiểu... gì, mức độ quan trọng của chúng? - Cách thức nào người ta có thể tìm cách tấn công, trộm thông tin hay thậm chí phá hủy thông tin của bạn? - Mức độ khó mà hacker sẽ gặp phải, họ thành công đến mức độ nào? - Mức độ ảnh hưởng nghiêm trọng thế nào nếu hacker thành công? Việc hiểu rõ và đánh giá đúng chính mình cũng như khả năng của đối phương có thể giúp bạn hạn chế tối đa khả năng bị tấn công Có một điều... USA, các hệ thống ngân hàng lớn trên thế giới Security liên tục được cải thiện, và bên cạnh đó thì lỗi, lổ hổng cũng ko ngừng được phát hiện 2- Một số cách thức hacker dùng để xâm nhập Về cơ bản, để có thể tiến hành thâm nhập vào hệ thống, các hacker thường phải qua những bước sau Lưu ý các bước tôi trình bày ở đây không bắt buộc phải được thực hiện tuần tự mà tùy vào điều kiện và ngữ cảnh để áp dụng... chi tiết a Xác định mục tiêu - Footprinting Bước này tương đối đơn giản Tuy nhiên đối với hacker thật sự muốn tìm cách thâm nhập vào 1 hệ thống thì bước này rất cần thiết Càng thu thập được nhiều thông tin liên quan đến mục tiêu càng tốt Ví dụ như muốn thâm nhập trang web của 1 công ty nào đó, điều đầu tiên các hacker thường dùng là xác định host, domain (nếu là website); dùng các công cụ như WhoIS, . fantomas311@yahoo.com * KY NANG CO BAN CUA MOT HACKER Bài học này được chia làm 2 phần chính, với mục đích là giới thiệu cho các bạn hiểu một số cách thức mà hacker sử dụng để thâm nhập vào hệ thống. bạn. Bài học này cũng không có ý định hướng bạn đến một cái nhìn xấu về hành vi của hacker mà mục đích là giúp bạn hiểu rõ hơn về vấn đề an toàn bảo mật. Cụ thể như sau: 1- Các hacker đã làm như. tiết nhằm tạo bài học sáng sủa dễ hiểu, nếu có ý kiến thắc mắc, các bạn hãy post lên sau mọi người sẽ cùng trao đổi giải quyết. I. PHÍA HACKERS 1- Mục đích và động cơ của hackers: - Đạt mục

Ngày đăng: 07/08/2014, 14:22

Tài liệu cùng người dùng

Tài liệu liên quan