như Superscan, Sechole, Redbutton, Net Essential Quá trình duyệt cổng có thể cho ta biết được các dịch vụ web nào được sử dụng ở mục tiêu. Ví dụ như các cổng TCP: 139, 135 (NETBIOS), 110 (pop3), 80 (HTTP), 79 (Finger), 53 (domain), 25 (smtp), 21 (ftp) Thậm chí cả hệ điều hành và webserver đựơc sử dụng ở mục tiêu. Ví dụ với netcat, ta dùng lệnh sau: nc -v -z 203.162.1.1 1-255 Với nmap, ta dùng: nmap -sS 203.162.1.1/255 hay nmap -p80 -O 203.162.1.10 Các bạn tự tìm hiểu cách sử dụng các tool khác. Lưu ý các câu lệnh ví dụ ở đây chỉ mang tính chất tham khảo. - Tìm hiểu các lỗi/lổ hổng bảo mật mà mục tiêu có thể mắc phải. Ta có thể tìm thông tin từ các website sau: www.securityfocus.com www.l0pht.com www.microsoft.com/security packetstorm.security.com Hoặc có thể đăng kí ở các mailing list để có thể nhận được các thông tin về security cập nhập nhất: Buqtraq (www.securityfocus.com) NTBugTraq (www.ntbugtraq.com) Pen-Test (www.securityfocus.com) c. Tiến hành tấn công - Khai thác điểm yếu của hệ thống, hệ điều hành . Thử tìm cách truy xuất đến các dịch vụ của hệ thống dựa trên hoặc có liên quan đến các lỗi bảo mật . Tìm hiểu các thông tin về lỗi bảo mật từ các nhà sản xuất hệ thống, tìm hiểu các thông tin patch/update tương ứng với version bạn đang nghiên cứu - Khai thác điểm yếu của các ứng dụng dùng trên máy chủ - server . Một số ứng dụng server có thể có lỗi như Microsoft IIS, Netscape Enterprise Server, Oracle, Apache - Khai thác điểm yếu của các ứng dụng client . Tìm hiểu các lỗi về /cgi-bin, các lỗi về tràn bộ đệm . Tìm hiểu các lỗi về javascript . Tìm hiểu các lỗi về cookies . Tìm hiểu các thiết lập mặc định của các ứng dụng web, vd như mật khẩu admin ngầm định của một số forum - Leo thang đặc quyền (Escalate Privileges), tôi chỉ mô tả một số cách có thể đạt được mục đích . Theo dõi trên mạng (sniff) để tìm cách lấy các thông tin bảo mật của người dùng, vd như dùng các công cụ bắt gói tin (packet sniffer) để bắt các thông tin liên quan đến mật khẩu di chuyển trên mạng . Tìm cách lấy các SUID từ các chương trình quản lý nhưng khả năng kiểm tra các giá trị nhập vào hoặc các giá trị biên kém. . Tìm hiểu các user (user ID) ko có mật khẩu, mật khẩu rỗng, hoặc các mật khẩu ngầm định . Tìm kiếm các thông tin về mật khẩu trong các file trên hệ thống, dùng các công cụ crack pass nếu các file password đựơc mã hoá . Tìm hiểu kĩ mối quan hệ giữa các máy trong hệ thống muốn thâm nhập, dò các sơ hở và tìm cách khai thác lan rộng ra khắp hệ thống. Như vậy, leo thang đặc quyền là tìm cách nâng cao quyền hạn của mình trong hệ thống. Vi dụ từ user Guest hay Normal user trong hệ thống, hacker có thể tìm hiểu các sơ hở để từ đó bổ sung thêm quyền hạn cho mình, thậm chí đoạt quyền admin. Một ví dụ điển hình của leo thang đặc quyền trong quá trình khai thác lỗi của Hosting Controller, khi upload 1 exploit script lên 1 normal host, nếu sau đó ta tìm cách chuyển script đó vào thư mục admin của HC thì khi run nó sẽ có quyền admin. - Mở rộng khai thác ra các hệ thống lân cận; xác định các mục tiêu kế tiếp bắt nguồn hoặc có liên quan đến mục tiêu ban đầu . Dùng netstat -na để tìm hiểu các connection đến các máy khác . Thử khả năng từ một máy trong mạng, kết nối đến máy khác có trust-relationship, nếu may mắn thì có thể thâm nhập được mà ko phải qua các quá trình kiểm tra gắt gao . Tìm hiểu các file có trên hệ thống, chẳng hạn như các file trong *nix /etc/hosts, ssh/identity.pub - Các bước khác tùy khả năng của bạn. d. Xóa dấu vết (xóa log files ), tệ hơn có thể là phá hủy thông tin của hệ thống 3- Các mục tiêu và phương pháp hay dùng hiện nay a. Các mục tiêu thuờng bị tấn công - Unix và các biến thể từ nó: Linux, FreeBSD, Solaris, SCO - Các hệ thống Windows NT, 2k, XP, 9x - Các dịch vụ và máy chủ WWW - Các ứng dụng web, forum - Trộm mật khẩu của các dịch vụ web như các web e-mail, instant messenger b. Các kiểu tấn công thông dụng - Tấn công làm ngập đường truyền mạng (flood), tấn công từ chối dịch vụ (Distributed Denial of Service) - Tấn công dạng local - cục bộ - Tấn công remote - từ xa - Tấn công dạng điều khiển dữ liệu - data driven Bây giờ tôi sẽ phân tích chi tiết hơn về các kiểu tấn công ở trên. b.1 Tấn công từ chối dịch vụ (DoS) - Feature driven SYN flooding - Inappropriate configurations SMURF - Programming flaws Teardrop - Distributed DoS: DoS tập thể 1 mục tiêu từ nhiều hướng, nhiều máy (Sẽ biên soạn và bổ sung sau) b.2 Tấn công dạng local - host based - Khai thác các lỗi tràn bộ đệm Cách hạn chế: Quản lý tốt bộ nhớ, stack; cập nhật các bản sửa lỗi; lập trình kĩ càng và tốt hơn. - Khai thác các điểm yếu trong việc kiểm tra điều kiện thực thi của các ứng dụng Cách hạn chế: Lập trình kĩ và tốt hơn - Dùng trojan, backdoor, virus Cách hạn chế: Kiểm tra kĩ càng các chương trình lạ trứơc khi thực hiện, sử dụng các trình diệt virus thông dụng và thường xuyên cập nhật - Crack password Cách hạn chế: Dùng các kĩ thuật mã hóa cao hơn, hạn chế số lần thử mật khẩu ở các login form - Đăng nhập vào hệ thống kiểu vật lý bằng cách khởi động từ đĩa mềm hoặc một hệ điều hành song song khác Cách hạn chế: Tăng cường các biện pháp bảo vệ các thiết bị b.3 Tấn công dạng remote - network based - Khai thác các lỗi tràn bộ đệm Cách hạn chế: Tương tự như ở local - Tấn công nhiễm độc tên miền (DNS Cache poisoning) Cách hạn chế: Dùng cache timeout, DNSSEC, Non-Caching Servers - Tấn công vào lỗi/lổ hổng của website. Cách hạn chế: Cập nhật các bản sửa lỗi mới nhất, thiết lập cấu hình chính xác, điều chỉnh các quyền hạn, thiết kế và viết mã website tốt. - Khai thác các tên đăng nhập, mật khẩu yếu; tức là các mật khẩu ngầm định, quá ngắn, dễ đoán; hoặc các dạng đăng nhập có cơ chế kiểm tra sơ hở, ko kiểm tra số lần thử password làm dễ crack bằng dictionary, bruteforce Cách hạn chế: Tăng cường kiểm tra số lần thử password (vd sẽ ko cho tiếp tục đăng nhập nếu số lần nhập sai password quá 5 lần ), giới hạn chiều dài password tối thiểu, tăng cường mã hóa bằng các giải thuật tốt - Khai thác từ các thông tin chia sẻ (sharing) như SMB/NetBIOS, NFS Cách hạn chế: giới giạn quyền hoặc tắt share, nâng cấp hệ thống file có khả năng bảo mật cao hơn như NTFS, HPFS b.4 Tấn công dạng điều khiển dữ liệu - data driven - Khai thác sơ hở của các đối tượng dữ liệu dùng phía server, các mã Java, Javascript, VBScript, Perl, PHP , các ActiveX control. - Dùng cửa sau (backdoor), trojan, virus Vài thông tin về các backdoor: Unix: sshd Windows: BackOffice 2k, DeepThroat (cổng UDP 2140, 3150), NetSphere (TCP 30100, 30102), GateCrasher (TCP 6969), GirlFriend (TCP 21554), Hack'a'Tack (TCP 31785; UDP 31789, 31791), EvilFTP (TCP 23456), SubSeven (TCP 1234) - Khai thác sơ hở từ các cổng dịch vụ, các giao thức cấu hình sai hoặc có cơ chế bảo mật yếu. Cách hạn chế chung dạng này: Cập nhật các bản sửa lỗi, fix lỗi; thiết lập cấu hình chính xác; dùng tường lửa (firewall, proxy), các trình antivirus. II. PHÍA NHỮNG NHÀ QUẢN TRỊ HỆ THỐNG Chúng ta sẽ đề cập đến một số phương pháp có thể giúp ích cho những nhà quản trị trong việc hạn chế và ngăn chặn sự tấn công của hacker 1- Thiết kế tốt hệ thống - Design Một trong những nguyên nhân chủ yếu giúp hacker thành công trong việc hack vào các hệ thống là do bản thân sự yếu kém trong việc thiết kế hệ thống của những nhà quản trị. Một hệ thống được gọi là tốt phải là một sự phối hợp đồng nhất và hiệu quả của các thiết bị phần cứng (đường truyền mạng, router, server ) và phần mềm (OS, software ). Phần cứng phải được lựa chọn phù hợp; bố trí, cài đặt hợp lý và được bảo vệ cẩn thận. Phần mềm cài đặt và thiết cấu hình chính xác, cập nhật thường xuyên các bản sửa lỗi. Một điều quan trọng là chúng phải đựơc quản lý bởi người có kiến thức và kinh nghiệm. Một số vấn đề ta cần quan tâm ở đây: - Tường lửa - Phân chia, bố trị mạng - Kiểm tra thường xuyên các nỗ lực thâm nhập 2- Kiểm tra kĩ lưỡng hệ thống - Quality Assurance 3- Theo dõi các hành vi tấn công - Intrusion Detection 4- Các chính sách bảo mật và kết luận chung - Security Policies III. NHỮNG CÔNG CỤ HỮU ÍCH Authors: W_Hat (collecting, translating and updating) Zorro (documenting) Versions: 1.01 Draft version 07/25/2002 by W_Hat References: Hacking Exposed series SystemExperts Internet MSDN Cuồng Long nhoccon1412(VNISS) Các kiến thức hacking cơ bản và cổ điển (bài 9) Xâm nhập máy tính từ xa thông qua Yahoo! Messenger Sơ lược chương trình Đây là một chương trình xâm nhập và kiểm soát máy tính từ xa thông qua Yahoo! Messenger. Với công cụ này, bạn có thể kiểm soát bất cứ một máy tính nào bằng cách gửi thông tin qua Yahoo! Messenger ảo thiết lập trong hệ thống. Từ đó bạn có thể ra lệnh cho máy đối tượng làm theo bất kỳ mệnh lệnh nào. . trị trong việc hạn chế và ngăn chặn sự tấn công của hacker 1- Thiết kế tốt hệ thống - Design Một trong những nguyên nhân chủ yếu giúp hacker thành công trong việc hack vào các hệ thống là. nâng cao quyền hạn của mình trong hệ thống. Vi dụ từ user Guest hay Normal user trong hệ thống, hacker có thể tìm hiểu các sơ hở để từ đó bổ sung thêm quyền hạn cho mình, thậm chí đoạt quyền