PDA

View Full Version : Website có thể bị tấn công như thế nào



trungxp2004
09-08-2008, 16:45
Em nghe nói nhiều về những cuộc tấn công website, nhưng vẫn chưa hiểu rõ là website có thể bị tấn công theo những phương thức nào. Tựu trung lại có bao nhiêu phương thức tấn công và cách phòng ngừa như thế nào.

huytranaz
09-08-2008, 17:29
Em nghe nói nhiều về những cuộc tấn công website, nhưng vẫn chưa hiểu rõ là website có thể bị tấn công theo những phương thức nào. Tựu trung lại có bao nhiêu phương thức tấn công và cách phòng ngừa như thế nào.

Mình biết vài kiểu thôi, có gì các bạn sửa sai, góp ý thêm nhé:
1. Tấn công khi site có lỗi SQL Injection: Do lỗi lập trình không kiểm tra dữ liệu đầu vào nên dẫn đến lỗi này, lợi dụng các ký tự nháy kết thúc chuỗi và các ký tự đặc biệt khác. Lỗi này cho phép chèn thêm câu lệnh SQL vào dòng truy vấn, hacker có thể thêm, xóa, sửa dữ liệu, database thậm chí tạo tài khoản windows lên host để remote.

2. Tấn công khi site có lỗi XSS (Cross Site Scripting): Đây cũng là lỗi lập trình tuy không nghiêm trọng bằng SQL Injection. Do không kiểm tra dữ liệu đầu vào, hacker có thể chèn thêm 1 đoạn mã client script (javascript, iframe, ActiveX...) và dẫn dụ người duyệt web vào site của bạn. Khi đó, hacker có thể chiếm quyền điều khiển máy nạn nhân, và nếu nạn nhân là webmaster bạn thì cực kỳ nguy hiểm. Hacker có thể lấy cookie của người dùng hợp lệ để vào những vùng hạn chế truy cập hoặc vùng quản trị của site.

3. Tấn công khi site kiểm soát dữ liệu đầu vào kém: Ví dụ trên những site cho phép upload, post nội dung và ghi lên CSDL hoặc file trên host. Hacker có thể gửi những luồng dữ liệu rác cực lớn, làm tràn băng thông hoặc hết giới hạn cho phép lưu trữ của site dẫn đến site không thể hoạt động nữa.

4. Tấn công làm tràn bộ đệm xử lý: Hacker tìm những trang có xử lý dữ liệu trên site của bạn, gửi những query liên tục bắt server hoạt động liên tục dẫn đến tràn vùng nhớ đệm, lúc này hacker có thể chèn các shellcode và thế là xong.

5. Tấn công khi site cho phép upload file thực thi: Nếu site làm không kỹ, cho phép người duyệt web upload các file thực thi server side (.php,.jsp,.asp,.dll...), hacker có thể upload shell code lên và chiếm dụng server của bạn.

6. Ngoài các kiểu tấn công thông dụng trên, mình chỉ còn biết 1 kiểu nữa là DoS (Denied of Service - Tấn công từ chối dịch vụ) và DDoS (Distributed Denied of Service - Tấn công từ chối dịch vụ phân tán). Kiểu tấn công này có thể hiểu vắn tắt là Hacker gửi một lượng yêu cầu kết nối cực lớn đến host của bạn. Như chúng ta biết, dù 1 host mạnh đến đâu thì cũng chỉ có thể phục vụ cho 1 lượng tối đa hữu hạn người dùng. Do đó khi hacker đã chiếm hết khả năng phục vụ thì những người dùng hợp lệ khác khi vào site sẽ bị từ chối!


Cách phòng ngừa là "Luôn nghĩ đến vấn đề bảo mật khi thiết kế", trước khi đưa lên public host thì phải kiểm tra tất cả các lỗ hổng bảo mật thông thường.


Mình chỉ biết các loại tấn công trên, các bạn trao đổi thêm!

vuatintac
13-08-2008, 11:14
Khá hay, cám ơn bạn đã trả lời.
và cám ơn người nêu câu hỏi

LinuXpert
14-08-2008, 11:46
Bổ sung thêm cách tấn công thông qua local (hack local): dùng một tài khoản bị hack/lỗi để tấn công website khác trên cùng server. Nếu server đó cấu hình lỏng lẻo thì cách tấn công này khá hiệu quả.