Bài giảng Các kỹ thuật tấn công, xâm nhập hệ thống

pdf 58 trang phuongnguyen 3900
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Các kỹ thuật tấn công, xâm nhập hệ thống", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pdfbai_giang_cac_ky_thuat_tan_cong_xam_nhap_he_thong.pdf

Nội dung text: Bài giảng Các kỹ thuật tấn công, xâm nhập hệ thống

  1. CCáácc kkỹỹ thuthuậậtt ttấấnn công,công, xâmxâm nhnhậậpp hhệệ ththốốngng PGS. TSKH. Hoàng Đăng Hải Học viện Công nghệ Bưu chính Viễn thông (PTIT) Email: hoangdanghai@hn.vnn.vn 2012
  2. Sự phát triển của tấn công mạng Xu thế ƒ Kết hợp worms, viruses và DDoS ƒ Tống tiền, Tin tặc ƒ Các tấn công trên 10 Gbps, tập đoàn Botnet với 150,000+ node ƒ Thiếu trí tuệ trong quản lý mạng “cloud” khiến chi phí tăng nhanh ƒ Từ bỏ băng thông khi giải quyết vấn đề là quá lãng phí và tốn kém
  3. Một số khái niệm „ Kẻ xâm nhập (Intruder) ƒ Thường gọi là tin tặc (hacker), cracker /buglar (đạo chích) ƒ Kẻ trộm/đánh cắp thông tin (Information Theft) ƒ Cybercrime (tội phạm mạng), Compromiser (kẻ gây hại) „ Lỗ hổng an ninh (Security hole), điểm yếu (Vulnerability), khiếm khuyết (Flaw) ƒ Lỗi khi thiết kế: không lường trước khả năng ƒ Điểm yếu tiềm ẩn: luôn có trong mọi hệ thống ƒ Lỗi khai thác: cấu hình không chặt chẽ, lỗi khi hoạt động „ Đe dọa (Threat), Tấn công (Attack) ƒ Thường dùng để chỉ cùng 1 hành vi xâm hại đến an ninh hệ thống „ Rủi ro (risk) ƒ risk = threat x vulnerability x asset value „ Biện pháp an ninh (Security measure), cơ chế an ninh (security mechanism) ƒ Biện pháp/cơ chế để phát hiện, ngăn ngừa, phòng chống, sửa chữa „ Dịch vụ an ninh (Security service) ƒ Dịch vụ tăng cường an ninh cho hệ thống xử lý và truyền tải thông tin thông qua các biện pháp an ninh
  4. PhânPhân loloạạii ttấấnn côngcông mmạạngng ™ Mục tiêu tấn công ƒ Joking ƒ Hacker: data stealing / spy / military spy ƒ Company Competition: business plan/strategy. Competitor destruction ƒ Product Advertisement ƒ Avenger ƒ Terrorism ƒ Account hacking / Bank robber ƒ • Giả mạo (fabrication) - destroys authenticity of source • (Sửa đổi) modification - destroys integrity of information ™ Loại tấn công • Ngăn chặn (interception) - of information (traffic), breaches confidentiality • Gián đoạn (interruption) - of service ™ Examples ƒ Happy Christmas 1987: in IBM network. Email sent to everybody with addresses found in addressbook ⇒ Network deadlock ƒ Internet Worm 1989: in Security Center of DoD. Unix Shell Attack.
  5. SecuritySecurity AttacksAttacks ™ Passive ƒ Nghe lén (Eavesdropping): lén lấy nội dung bản tin ƒ Phân tích lưu lượng: theo dõi chu kỳ, chiều dài bản tin, kể cả phỏng đoán mã kênh truyền ƒ Phân tích thông tin hệ thống ™ Active ƒ Giả danh (Masquerade): Darth giả danh Bob ƒ Replay: bắt giữ, giả mạo và chuyển tiếp bản tin ƒ Sửa đổi bản tin ƒ Ngăn chặn dịch vụ
  6. 5 giai đoạn của quá trình phá hoại • Trinh sát (Reconnaissance) Tìm cách thiết lập kết nối, khai thác thông tin máy tính, dịch vụ Dò tìm điểm yếu trong hệ thống và các ứng dụng. Tin tặc khảo sát máy nạn nhân và các dịch vụ trong một khoảng thời gian dài sử dụng các lưu lượng như hoạt động bình thường của máy. • Khai thác (Exploitation) Quá trình lợi dụng, biến đổi, làm sai lệch hoạt động của các dịch vụ trên máy nạn nhân. Biến đổi dịch vụ kéo theo thay đổi chế độ hoạt động và điều kiện truy nhập. • Tăng cường (Reinforcement) Giai đoạn tin tặc giành quyền truy nhập trái phép, tăng cường khả năng truy nhập, sử dụng công cụ để truy xét nạn nhân, che dấu hành vi • Củng cố (Consolidation) Tin tặc tạo ra cửa hậu, trao đổi thông tin qua cửa hậu, giành toàn bộ quyền điều khiển. • Tàn phá (Pillage) Giai đoạn thực hiện kế hoạch phá hoại: đánh cắp thông tin nhạy cảm, tạo bàn đạp tiến sâu vào mạng người dùng, thực hiện các ý đồ định sẵn
  7. PhPhầầnn mmềềmm mãmã đđộộcc (Malicious(Malicious Software)Software) • Các nguy cơ/điểm yếu: được khởi • Các phần mềm tự sinh (tự tạo các động bởi 1 trigger (không lây lan) bản copy = lây lan)
  8. CCửửaa sausau hohoặặcc ccửửaa ssậậpp (Backdoor(Backdoor oror Trapdoor)Trapdoor) • Xuất phát điểm vào bí mật tới một chương trình • Cho phép một kỹ thuật viên thành thạo truy cập vào hệ thống mà không cần thực hiện các thủ tục an toàn thông thường. • Thường sử dụng cho mục đích gỡ rối, kiểm thử phần mềm khi phát triển. • Trở thành nguy cơ khi vẫn để tồn tại lại trong sản phẩm phần mềm. BomBom logiclogic • Một trong những phần mềm có hại kiểu cổ điển • Code được nhúng trong chương trình hợp pháp, được kích hoạt khi gặp điều kiện xác định – Có mặt hoặc vắng mặt một số file – Ngày tháng/thời gian cụ thể – Người sử dụng nào đó • Khi kích hoạt thông thường làm hỏng hệ thống, Biến đổi/xoá file/đĩa, làm dừng máy,
  9. NgNgựựaa ththàànhnh TTơơ roaroa (Trojan(Trojan Horse)Horse) • Chương trình hữu ích, hấp dẫn (trò chơi, tiện ích, nâng cấp phần mềm, ) • Chứa các đoạn mã ẩn với các tác động phụ được dấu kín • Khi chạy thực hiện những nhiệm vụ bổ sung: Cho phép kẻ tấn công gián tiếp dành quyền truy cập những gì không thể trực tiếp • Thường sử dụng lan truyền virrus/sâu (worm) hoặc cài đặt cửa sau, hoặc đơn giản phá hoại dữ liệu. ZombieZombie • Là chương trình bí mật điều khiển máy tính khác của mạng Internet, sử dụng nó để gián tiếp tiến hành các tấn công, che dấu máy tạo ra Zombie. • Thường được sử dụng để tấn công từ chối dịch vụ (DDoS). Thường tạo thành mạng gồm hàng trăm máy không bị nghi vấn, tấn công dồn dập website mục tiêu qua việc gửi dồn dập yêu cầu lưu lượng. • Thường khai thác các lỗ hổng trong các hệ thống nối mạng.
  10. VirusesViruses • Là đoạn mã phần mềm có thể “lây nhiễm” sang các phần mềm khác qua việc sửa đổi chúng. • Sửa đổi phần mềm khác bao gồm việc copy đoạn mã virus vào và lây nhiễm sang các chương trình khác. • Giống virus sinh học, virus máy tính có thể sự sản sinh (replicated). • Lan truyền, thực hiện mọi chức năng có thể (ví dụ phá hoại dữ liệu). HoHoạạtt đđộộngng ccủủaa virusvirus • Giai đoạn nằm chờ: nằm im chờ sự kiện kích hoạt (ví dụ ngày, chương trình, dung lượng đĩa ). • Giai đoạn lây lan: sao chép chính nó sang các chương trình khác /phần khác của hệ thống. • Giai đoạn kích hoạt: thực hiện chức năng gài sẵn khi có sự kiện xảy ra. • Giai đoạn thực thi: thực hiện hành vi mong muốn. Đa số khai thác các đặc trưng, điểm yếu chủ yếu của hệ thống cụ thể đang chạy.
  11. CCấấuu trtrúúcc VirusesViruses program V := {goto main; 1234567; subroutine infect-executable := {loop: file := get-random-executable-file; if (first-line-of-file = 1234567) then goto loop else prepend V to file; } subroutine do-damage := {whatever damage is to be done} subroutine trigger-pulled := {return true if condition holds} main: main-program := {infect-executable; if trigger-pulled then do-damage; goto next;} next: }
  12. Các hình thái tấn công DDoS ƒ Đột phá cục bộ theo dây chuyền – Khai thác hệ điều hành, phá rối hoạt động server ƒ Tiêu hủy tài nguyên cục bộ – fork() bomb, fill disks, deep directory nesting ƒ Từ chối cấp dịch vụ cho các máy trạm – Gây các đột phá hoặc ngừng các dịch vụ quan trọng ƒ Tạo các đột phá từ xa theo dây chuyền – “magic” packets – ping of death, teardrop ƒ Tiêu hủy tài nguyên từ xa – syslog, SYN, fragment flood, UDP storm
  13. Các hình thái tấn công DDoS (2) ƒ Từ chối dịch vụ trên toàn mạng – Nhắm tới các links sơ hở hoặc cơ sở hạ tầng thông tin trọng yếu ƒ Điều khiển ngừng mạng từ xa – Tấn công routers, DNS servers – Lái tuyến – Giả mạo thông tin định tuyến ƒ Gây nghẽn mạng từ xa – Giả danh broadcasts – smurf, fraggle – Điều khiển từ xa các máy tính gây hại – máy tính ma (“zombies”) để phối hợp gây tràn - DDoS Các tấn công chuyển hướng từ từng máy đơn lẻ sang cơ sở hạ tầng mạng !
  14. Các kỹ thuật gây rối của tấn công DDoS ƒ Distributed attacks – Điều khiển từ xa đội quân zombies ƒ Các thử nghiệm mới đây cho thấy, một máy tính không có bảo vệ trên Internet có thể bị tấn công trong vòng < 8 phút. – Phản xạ IP ƒ Gây rối trong vết kiểm chứng mạng – Giả mạo/Nhái lại (Forged/”spoofed”) địa chỉ IP gốc – Thay đổi tần suất tấn công (on/off) – Nghi binh (Decoys) ƒ Gây rối trong dấu hiệu tấn công – Bắt chước lưu lượng hợp pháp (e.g. TCP ACK flood) – Hóa trang với lưu lượng hợp pháp Tất cả các kỹ thuật này nhằm bẻ gẫy mọi phương pháp theo dấu vết kiểu thủ công và tránh các IDS thông dụng
  15. Xu thế mới của DoS Attacks ƒ Tấn công tràn dựa vào mạng – Khi các lỗ hổng được vá, khó lòng tìm ra các host xung yếu ƒ Nhái các mạng con cục bộ – Các bộ lọc ingress / egress phổ biến hơn ƒ Tấn công đường lưu lượng lên – Nhắm tới các upstream routers & links ƒ Đánh và chạy (Hit-and-run) – Gây tràn sốc (pulsing / short-lived floods) – Sử dụng nhiều đội quân zombie theo chu kỳ ƒ Kỹ thuật phân tán – Phân tán rộng khắp, các đội quân zombie rộng khắp
  16. Xu thế mới của DoS Attacks (2) ƒ Gây rối trong dấu vết kiểm chứng mạng – Thay đổi đặc tính một số giao thức ứng dụng – Tái lập các truy vấn DNS, etc. ƒ Biến đổi dấu hiệu tấn công – Dùng address, protocol, port ngẫu nhiên ƒ Tấn công định tuyến hạ tầng mạng – Chặn cướp tuyến BGP route phục vụ khởi động tấn công ƒ Tự động tuyển mộ thêm (automated conscription) các đội quân zombie – recent Internet worms and viruses – Microsoft Outlook, IE, IIS, SMB
  17. Trình tự tấn công DDoS A. Một lượng lớn máy tính bị hại B. Tin tặc xác định được các máy có thể lợi dụng với các kỹ thuật dò quét (scanners), etc. C. Tin tặc truy nhập hệ thống với các công cụ từ xa: exploits, sniffers, password cracking, worms, trojans D. Tin tặc cài đặt các công cụ tấn công E. Tin tặc ra lệnh từ xa cho các máy bị hại được tập hợp để tấn công vào mục tiêu
  18. Distributed DoS Attack (DDoS) ƒ Phối hợp tấn công vào các Links và tài nguyên trọng yếu ƒ Tấn công vào hạ tầng định tuyến DNS
  19. Example: Smurf Attack Reflector Network 2.2.2.* ICMP Echo Request ICMP Echo Replies SRC DST SRC DST 3.3.3.100 2.2.2.255 2.2.2.* 3.3.3.100 Attacker Target 1.1.1.100 3.3.3.100 • Mô hình đơn giản: gửi các gói yêu cầu echo giả mạo ICMP tới các địa chỉ IP broadcast trong một mạng tin cậy. •Mọi hosts của mạng này gửi 1 trả lời ICMP tới địa chỉ IP giả mạo của nạn nhân • Khi hầu như mọi máy của mạng phản hồi yêu cầu ICMP echo này, mạng bị tắc nghẽn và tê liệt.
  20. Ví dụ: TCP SYN Flood ƒ Tuần tự quá trình thiết lập 1 kết nối TCP (3-way handshake) CLOSED CLOSED SYN N SYN_SENT SY SYN_RCVD + ACK Client ACK Server ESTABLISHED ESTABLISHED
  21. Ví dụ: TCP SYN Flood (cont.) Attacker Server Listen Queue SYN_RCVD SYN SYN_RCVD SYN_RCVD SYN SYN SYN_RCVD SYN ACK SYN_RCVD SYN SYN_RCVD SYN SYN SYN_RCVD A SYN CK SYN SYN SYN_RCVD ACK SYN_RCVD •Nếu sau khi server gửi SYN + ACK response, client không gửi ACK response Æ half-open connection •Server tạo trong bộ nhớ một kiến trúc dữ liệu chứa mọi kết nối mở Æ Timeout •Tin tặc gây ra memory overflow, khiến server crash hoặc không thể chấp nhận mọi kết nối mới cho đến khi xóa hết bảng dữ liệu •Vị trí giả danh IP trong hệ thống bị tấn công được che đậy, vì các địa chỉ nguồn trong các gói tin SYN thường đều không rõ ràng. Khi gói tin đến hệ thống máy chủ nạn nhân, không có cách gì để xác định ra nguồn gửi thực sự.
  22. Các biện pháp phòng chống DDoS ƒ Ingress / Egress filtering ( anti-spoofing ) ƒ Strict / Loose RPF (Reverse Path Forwarding) ƒ Black lists / White lists ƒ Policy based Filter ƒ Rate limiting ƒ ICMP etc ƒ Stateful defenses ( e.g. tcp intercept ) ƒ Patch vulnerable hosts and services ƒ Provisioning and capacity planning ƒ Packet filtering on provider side of WAN links
  23. Xử lý, phản ứng với tấn công DDoS Ba bước quan trọng: ƒ Phát hiện ƒ Xác định phương pháp của tin tặc và các tài nguyên bị tác động. ƒ Tìm cách cô lập vùng tài nguyên bị lợi dụng ƒ Truy xét dấu vết ƒ Xác định nguồn phát, đường đi, chặng chuyển tiếp ƒ Giảm thiểu thiệt hại ƒ Xác định lưu lượng nào cần chặn, tốt nhất chặn ở đâu
  24. Các chiến lược giảm thiểu DDoS • Unicast Reverse Path Forwarding (uRPF) –Sử dụng uRPF chặt chẽ –Chống giả mạo địa chỉ IP – Tránh lạm dụng uRPF và BGP ở toàn bộ border routers • Rate Limiting –Hạn chế tốc độ lưu lượng tấn công: ICMP, UDP, TCP SYN – Theo dõi các quy trình giao thức không bình thường! – Đảm bảo chính sách QoS thông qua BGP (special community) •ACL –Lọc ra các lưu lượng tập trung vào một máy đích •Tạo hố bẫy, đường tránh (Blackhole / Sinkhole / Shunt) –Lọc từng cấp, tạo bẫy, truy vấn điều tra
  25. Ví dụ về giảm thiểu DDoS Customer Customer Portal or Operator < back
  26. Ví dụ về giảm thiểu DDoS Customer Customer Portal or Operator
  27. Ví dụ về giảm thiểu DDoS y ẫ b ố H Customer Customer Portal or Operator
  28. Ví d ụ v ề giảm thiểu DDoS Customer ACL/ Hạn chế tốc độ Customer Portal or Operator Hố bẫy
  29. Ví d Xu th ụ ế v kế ề t h giảm thiểu DDoS Customer ợ p nhi ề u bi ệ n pháp t Bộ lọc thông minh ố i ư ACL/ Hạn chế tốc độ u h Customer Portal or Operator ơ n ! Hố bẫy
  30. DarkIP • Các hành vi sử dụng Dark Address Space để gửi thông tin đến các vùng địa chỉ IP dành cho việc khác, hoặc chưa được sử dụng. •Việc sử dụng Dark Address Space xảy ra do một số nguyên nhân: –Lập sai cấu hình Router – Hành vi bất thường của một ứng dụng –Lập sai cấu hình mạng – Hành vi quét cổng trái phép – Hành vi tấn công của Worm trên mạng Ứng dụng DarkIP •Lưu lượng tăng với Dark IP có thể biểu thị khả năng lan truyền Worm trên mạng, hoặc hành vi quét mạng để tuyển mộ đội quân Zombie •Dữ liệu tạo ra từ Dark IP thường được sử dụng để: – Xác định dấu vết new zero day worms – Xác định nguồn phát của worm –Tạo ra danh dách các máy bị lây nhiễm
  31. Hành vi bất thường định trước và không định trước ƒ Hành vi bất thường định trước biểu thị sai lệch mức lưu lượng bình thường. Thường do tấn công gây ra. Hành vi này cần được xem xét tiếp để xác định mức độ nguy hại. ƒ Hành vi bất thường không định trước có thể xảy ra khi một máy nào đó không tuân thủ các quy ước truyền thông. Lỗi xảy ra có thể do tấn công, hoặc do lỗi mạng. Do đócần truy xét để tìm đúng nguyên nhân. Các hành vi bất thường không định trước • Đa số tin tặc sử dụng để tấn công một máy đích nào đótrên mạng. • Các kiểu gói tin thường sử dụng: – Syn floods, ICMP floods, IP fragments • Các gói tin thường thuộc nhóm: – IP Null, TCP Null, Private IP
  32. Theo dõi hành vi bất thường Anomaly is high High severity protocol Graph shows a spike severity with a very in the traffic levels anomalies for protocols high % of threshold other than TCP anomalies are usually High severity incoming more likely to be anomalies towards a malicious single host
  33. Botnets •Tin tặc phát triển các công cụ phát tán tự động (sử dụng botnets, ) cho phép chúng gửi các tấn công tới các máy trung gian trong cùng 1 thời gian, làm tất cả các máy trung gian gửi phản hồi trực tiếp tới 1 máy nạn nhân. •Tin tặc phát triển các công cụ để quan sát các router trên mạng không sử dụng các bộ lọc để lọc broadcast traffic, phát hiện các mạng cho phép nhiều máy cùng có khả năng trả lời đồng thời. Các mạng này thường được dùng làm trung gian cho các cuộc tấn công.
  34. Dictionary Attack – cracking of authentication passwords •Các mật mã xác thực được chứa trong một file (trên Unix / Windows), thường được mã hóa với một thuật toán chống phá khóa (ví dụ MD5) (Thuật toán một chiều). •Người dùng đăng nhập mật khẩu, mật khẩu được mã hóa và so sánh với bản mã hóa ghi sẵn trong máy. • Brute force attack: tin tặc sử dụng phương pháp quét toàn bộ các khả năng (dictionary attack) tìm kiếm các khả năng giải mã xuất phát từ một danh sách các từ trong từ điển. •Người dùng thường sử dụng các mật khẩu thông dụng dễ bị phá: –Sử dụng từ, chữ cái thông thường –Sử dụng các cụm từ thông dụng .
  35. Dictionary Attack • Dictionary attacks thường được áp dụng trong 2 trường hợp sau: – Khi phân tích mật mã, phương pháp này tìm kiếm khả năng xác định chìa khóa giải mã cho một cụm từ mã cho trước. –Khi nối mạng, tìm cách lừa gạt cơ chế xác thực để thực hiện truy nhập trái phép vào máy tính bằng cách đoán mật khẩu. •Tin tặc có khả năng kiếm bản copy danh sách các mật khẩu đã mã hóa từ một hệ thống máy ở xa. Tin tặc sẽ sử dụng phương pháp Dictionary attacks để dò tìm mật khẩu theo thói quen của người dùng (qua dò tìm mọi thông tin về người dùng), so sánh mật khẩu với đoạn mã đã copy được. •Thực tế cho thấy, người dùng thường sử dụng mật khẩu cho dễ nhớ. Nếu sử dụng một tập danh sách đủ lớn, xác suất tìm ra mật khẩu là 4/10. • Dictionaries hiện có trên Internet cho mọi ngôn ngữ, dễ dàng truy cập, dễ dàng được sử dụng để dò tìm mật khẩu theo phương pháp này.
  36. Mã hóa 1 chiều cho mật khẩu được ghi trong file mật khẩu username Encrypted password Alix.Bergeret ADSNUYTGHLKLLL Client Matthew.Green NJKFFDSHPTTDRD Alix.Bergeret Ian.Coulson VFGMNBDEQQASU ADSNUYTGHLKLLL Brendan.Riordan VHGUIOUIYEDRDT Mật khẩu được mã hóa Chris.Dennett CXZAASWEWEDFD bởi Client với cùng 1 Andy.Sloane MLOPIUYTRFFGHJ thuật toán khi gửi qua mạng Mary.Garvey MNJTYUUIFVCXFG Nếu các giá trị Hash bằng Brian.Penfold REDERFGGGHYTR nhau, Client được xác thực! Password authentication server
  37. Ưu nhược điểm của Dictionary attacks •Tin tặc có thể mã hóa và lưu trữ danh sách các từ mã hóa kiểu từ điển, sắp xếp chúng theo từ khóa ‘value’ đã mã hóa. –Phương pháp này tiêu tốn nhiều bộ nhớ, thường mất nhiều thời gian chuẩn bị và tính toán. Tuy nhiên, phương thức này có thể tạo ra tấn công gần như tức thì. –Phương pháp này đặc biệt hiệu quả khi cần giải mã một số lượng mật khẩu lớn cùng lúc.
  38. Tin tặc thường ghi danh sách các mật khẩu thường được sử dụng và chuyển chúng cho một thuật toán, sắp xếp chúng theo thứ tự alphabet. username Encrypted password Word Hashed word Alix.Bergeret ADSNUYTGHLKLLL cricket ABVGTHYULPMMN Matthew.Green NJKFFDSHPTTDRD football ADSNUYTGHLKLLL Ian.Coulson VFGMNBDEQQASU england CFTGERHTYUUUU sister QRTSNDCNCNNNN Brendan.Riordan VHGUIOUIYEDRDT christopher RTSGHWEREEEDM Chris.Dennett CXZAASWEWEDFD charlie STTHHHHHERERE Andy.Sloane MLOPIUYTRFFGHJ louise NMZOAOWJBHEEU Mary.Garvey MNJTYUUIFVCXFG Crackers sorted list of hashed words Brian.Penfold REDERFGGGHYTR Easy to determine Alix.Begeret password Password list by comparing hash values
  39. RIP attacks • Routing Information Protocol (RIP) attacks thường thấy trong các bộ router cài đặt phiên bản chuẩn của RIP. •RIP được sử dụng để phân phát thông tin định tuyến trong mạng, ví dụ các tuyến ngắn nhất, các tuyến quảng bá từ mạng nội bộ ra ngoài •Phiên bản chuẩn của RIP không có phần xác thực. Thông tin cung cấp trong bản tin RIP thường được sử dụng mà không có sự kiểm tra xác thực lại chính nó.
  40. RIP attacks •Tin tặc có thể giả mạo 1 bản tin RIP, ví dụ xác định máy “X” có tuyến ngắn nhất ra ngoài mạng. •Mọi gói tin gửi ra từ mạng này sẽ được định tuyến qua “X”. Máy X có thể kiểm soát, sửa đổi gói tin. •Tin tặc có thể sử dụng RIP để bắt chước bất kỳ host nào, làm mọi lưu lượng gửi đến máy tin tặc thay vì gửi đến host này. • Phiên bản RIPv2 đã cải thiện hơn với thuật toán xác thực mật khẩu đơn giản, làm cho việc tấn công qua RIP khó khăn hơn. •Giải pháp IPsec VPN cũng cung cấp khả năng mã hóa thông tin định tuyến qua các routers sử dụng IPsec VPN.
  41. Packet Sniffing • NIC cards thường chỉ xử lý các gói tin (MAC) nhằm tới máy chứa NIC này. Toàn bộ lưu lượng trong mạng không có switch được gửi tới tất cả các máy tính. • Software/hardware được thiết kế sẵn sàng để làm việc đó. •Nếu NIC cards được cấu hình “Promiscuous” thì nó có thể bắt và xử lý mọi gói tin đi trên mạng con. • Điều đó nghĩa là có thể xem được nội dung toàn bộ các gói tin truyền trên mạng (1 số giao thức như FTP, Telnet, HTTP, SMTP, POP3 gửi các mật khẩu dưới dạng clear text). Ngoài ra, còn nhiều thông tin khác có thể bị khai thác. •Thực tế, các bộ switch chỉ cho phép gói tin đến đúng máy đích. Tuy nhiên, tin tặc có nhiều cách để bắt được các gói tin này
  42. Hai cách để “vượt qua” Switch Æ Spoof ARP và MAC Flooding • Spoof ARP là phương pháp "thủ công". ARP là address resolution protocol, dùng để "map" IP address và MAC address. Vì ARP là 1 dạng stateless protocol nên nó có thể bị lừa khá dễ dàng. •Phương pháp thường được sử dụng là giả mạo Gateway, làm cho toàn bộ lưu lượng từ máy A (máy nạn nhân) đi đến Gateway phải đi qua máy B của tin tặc trước. • Công cụ phổ biến là: Arpspoof, dsniff
  43. ARP Spoofing Tin tặc dùng các chương trình như arpspoof để thay đổi danh tính của 1 host, để nhận toàn bộ thông tin qua mạng. ARP spoofing steps 1. Set your machine to forward packets: Linux: echo 1 > /proc/sys/net/ipv4/ip_forward echo 1 > /proc/sys/net/ipv4/ip_forward BSD: sysctl -w net.inet.ip.forwarding=1 2. Start arpspoofing (using two terminal windows) arpspoof -t 149.160.x.x 149.160.y.y arpspoof -t 149.160.y.y 149.160.x.x 3. Start sniffing ngrep host 149.160.x.x | less OR Dsniff | less Để chống lại: 1) Static ARP table; 2) ARPWatch
  44. MAC Flooding • MAC Flooding là một kỹ thuật đầu độc ARP Cache hướng tới tấn công các switch trên mạng. • Khi một bộ switch bị đánh tràn, nó sẽ trở thành một “Hub” thuần túy ! • Trong chế độ “Hub”, bộ switch sẽ không thể thực thi bất kỳ tính năng bảo mật gì, sẵn sàng quảng bá mọi gói tin đến mọi máy trên mạng con. •Tin tặc có thể đánh tràn bảng ARP của bộ Switch với các gói tin ARP phản hồi giả mạo, tiếp đó đặt Switch vào chế độ “Hub” để bắt toàn bộ các gói tin. •Một công cụ điển hình là Macof, dsniff
  45. Giả mạo (Spoofing) Tin tặc thay đổi danh tính để những người dùng khác tin rằng hắn là ai đó trong só họ: – Email, User ID, IP Address, –Tin tặc khai thác quá trình xác thực giữa người dùng và hệ thống/mạng để chiếm quyền điều khiển. Kiểu Spoofing: 1.IP Spoofing: 2.Email Spoofing 3.Web Spoofing
  46. Giả mạo IP – Thay đổi địa chỉ IP gốc • Phương pháp quét lén lút giả mạo địa chỉ –Trước khi tấn công máy nạn nhân, tin tặc tìm cách quét hệ thống để tìm khai thác thông tin nhiều nhất về máy nạn nhân. – Firewall, IDS có thể phát hiện quá trình quét này, có thể cảnh báo về nguy cơ tấn công. –Tin tặc tìm cách che dấu hành vi quét mạng bằng cách sử dụng các datagrams giả mạo từ một giải địa chi IP (không từ một địa chỉ IP cố định) để che mắt Firewall, IDS.
  47. IP Spoofing – Flying-Blind Attack Attacker uses IP address of another computer to acquire information or gain access Replies sent back to 10.10.20.30 Spoofed Address John 10.10.20.30 10.10.5.5 From Address: 10.10.20.30 • Attacker changes his own IP address to spoofed address To Address: 10.10.5.5 • Attacker can send messages to a machine masquerading as spoofed machine • Attacker can not receive messages from Attacker that machine 10.10.50.50
  48. IP Spoofing – Source Routing Tin tặc giả mạo địa chỉ IP (10.10.20.30), chèn vào giữa 2 máy để bắt các gói tin trả lời. Attacker intercepts packets From Address: 10.10.20.30 as they go to 10.10.20.30 To Address: 10.10.5.5 Replies sent back to 10.10.20.30 Spoofed Address Attacker John 10.10.20.30 10.10.50.50 10.10.5.5 • Đường đi của gói tin có thể thay đổi theo thời gian • Để chắc chắn chèn vào giữa trong quá trình, tin tặc sử dụng source routing để đảm bảo gói tin luôn đi qua các nút xác định trước trên mạng.
  49. Tin tặc gửi các gói tin broadcast tới mạng tin cậy Các trạm host trả lời lại địa chỉ IP bị giả mạo của nạn nhân Ping Router (broadcast address) Victim
  50. Email Spoofing Tin tặc gửi mail giả mạo ai đó và chờ tin phản hồi? Các kiểu Email Spoofing: 1. Create an account with similar email address – Sanjaygoel@yahoo.com: giả danh các địa chỉ quen thuộc 2. Modify a mail client – Tin tặc chèn địa chỉ reply tự động vào mail gửi đi 3. Telnet to port 25 – Hầu hết các mail server đều sử dụng cổng 25 cho SMTP. – Tin tặc đón gói tin đến cổng này, sau đó thay đổi bản tin gửi đến người dùng.
  51. Web Spoofing • Basic – Tin tặc đăng ký một địa chỉ Web gần giống với địa chỉ khác gây nhầm lẫn cho người dùng. • Man-in-the-Middle Attack – Tin tặc giả lập một Proxy giữa Web server và client. – Tin tặc tấn công vào Router hoặc nút mạng chuyển tiếp lưu lượng tương ứng giữa Web server và client. • URL Rewriting – Tin tặc chuyển hướng web traffic tới một trang khác được chúng kiểm soát. – Tin tặc ghi chèn địa chỉ Web của nó trước đường link hợp thức. • Tracking State – Khi người dùng login vào một trang có duy trì xác thực. Tin tặc lấy cắp thông tin xác thực để giả mạo người dùng.
  52. Cướp phiên (Session Hijacking) Quá trình chiếm quyền sử dụng phiên làm việc đang tồn tại. Phương thức: 1. Người dùng tạo kết nối với Server thông qua xác thực với user ID and password. 2. Sau quá trình xác thực người dùng, họ truy nhập vào server cho đến khi kết thúc phiên làm việc. 3. Tin tặc sử dụng DoS để làm tê liệt phiên làm việc. 4. Tin tặc chiếm quyền điều khiển phiên của người dùng với vai trò giả danh người dùng.
  53. Session Hijacking Bob telnets to Server Bob authenticates to Server Server Bob Die! Hi! I am Bob Attacker Hành vi của tin tặc: – Giám sát phiên – Gửi liên tiếp lệnh chèn giữa các lần gửi yêu cầu truy nhập của user – Chèn tấn công passive/active vào phiên
  54. Các kỹ thuật chống giả mạo địa chỉ Các quy tắc lọc gói tin của Border routers • Quy tắc 1: Không để lọt các gói tin đi ra xuất phát từ một địa chỉ IP gốc không thuộc phạm vi ISP (rfc2827) • Quy tắc 2: Không để lọt các gói tin đi vào với địa chỉ IP gốc thuộc phạm vi ISP. • Quy tắc 1 là quy tắc cơ bản nhất, thường được sử dụng để chống tấn công DoS AS of neighbouring ISP AS for my ISP 204.12.15.0 171.85.0.0
  55. Buffer Overflow Attacks • Tấn công lợi dụng cách ghi và lưu trữ thông tin • Tin tặc tìm cách ghi thông tin vào Stack nhiều hơn dung lượng bộ nhớ cho phép. How does it work? Fill Bottom of Bottom of • Fill • Direction Memory Memory Buffer 2 Direction Buffer 2 Local Variable 2 Local Variable 2 Buffer 1 Machine Code: Buffer 1 Space Overwritten Local Variable 1 execve(/bin/sh) New Pointer to Return Pointer Return Pointer Overwritten Exec Code Function Call Function Call Arguments Arguments Top of • Top of • Memory Memory Stack bình thường Stack đã bị tấn công
  56. Password Attacks •Lợi dụng các mật khẩu kém và các kết nối mạng (qua modem) không có kiểm soát. •Steps –Tin tặc tìm kiếm số Phone của công ty. –Tin tặc thực hiện chương trình quay số tự động •Vídụ: số điện thoại 555-5532, thì sẽ thực thi quay mọi số trong khoảng 555-55xx để tìm số modem. •Nếu một modem trả lời tín hiệu, tin tặc ghi nhận số modem. –Tin tặc sử dụng user ID và password để vào mạng Cty: •Nhiều Cty sử dụng default accounts ví dụ: temp, anonymous không có password. • Khá nhiều Cty sử dụng tên công ty làm root account và password •Tin tặc sử dụng các công cụ password cracking để dò tìm password.
  57. Password Security Client Server Hash Hashed Compare Hashed Function Password Password Password Password Salt Stored Password Allow/Deny Access •Băm Password và lưu trữ –Thêm Saltđể tạo password ngẫu nhiên và lưu trữ vào máy. •Chạy các chương trình phá Password để crack.
  58. Password Attacks - Types • Dictionary Attack – Hacker tries all words in dictionary to crack password – 70% of the people use dictionary words as passwords • Brute Force Attack – Try all permutations of the letters & symbols in the alphabet • Hybrid Attack – Words from dictionary and their variations used in attack • Social Engineering – People write passwords in different places – People disclose passwords naively to others • Shoulder Surfing – Hackers slyly watch over peoples shoulders to steal passwords • Dumpster Diving – People dump their trash papers in garbage which may contain information to crack passwords