Chống lại Unauthorized Access, Data Manipulation: Những trường hợp sau các bạn cần filter ở interface kết nối với Internet: - Packet đi vào có source IP address là Private address - Pac
Trang 1hung1910(HVA)
Một Số Phương Pháp Phòng Chống Tấn Công
1 Vấn đề Eavesdropping và Session Replay:
Khi bạn truyền dữ liệu giữa 2 máy tính trên Internet thì có thể bị nghe trộm (Eavesdropping), và bị kẻ xấu đổi nội dung packet rồi gởi lại (Session Replay) Cách phòng chống hiệu quả nhất là sử dụng IPSec VPN Ngoài ra trước đây giải pháp được sử dụng nhiều là SSL
2 Chống lại Unauthorized Access, Data Manipulation:
Những trường hợp sau các bạn cần filter ở interface kết nối với Internet:
- Packet đi vào có source IP address là Private address
- Packet đi vào có source IP address là Internal address
- Packet đi vào có destination IP address không thuộc vùng DMZ
- Packet đi vào có IP thuộc dãy loopback
- Packet đi vào thuộc loại BOOTP, DHCP, TFTP, Traceroute
Trang 2Ví dụ sau đây cấm Internal (trường hợp này cũng là private) address đi vào:
Code:
NTCRouter(config)#access-list 110 deny ip 172.16.1.0 0.0.0.255 any
NTCRouter(config)#interface s0/0
NTCRouter(config-if)#access-group 110 in
Ví dụ sau đây không cho phép 1 kết nối được tạo từ bên ngoài:
Code:
Lab_B(config)#access-list 110 deny tcp any any established
Lab_B(config)#access-list 110 permit tcp any any
Lab_B(config)#interface s0/0
Lab_B(config-if)#access-group 110 in
3 Chống lại Fighting Rerouting Attacks:Đây là trường hợp có 1 router lạ gởi
routing update với thông tin không chính xác nhằm mục tiêu làm router của bạn học các con đường sai Router này có thể nằm bên trong mạng, cũng có thể nằm bên ngoài mạng, hoặc là 1 máy tính chạy giao thức định tuyến
Cách phòng chống là tắt các giao thức định tuyến trên các interface không cần thiết (ví dụ interface quay ra ngoài Internet) và cấu hình chứng thực routing protocol cho các Interface khác Các giao thức hỗ trợ chứng thực:
CODERIPv2 (Routing Information Protocol version 2)
OSPF (Open Shortest Path First)
BGP (Border Gateway Protocol)
EIGRP (Enhanced Internet Gateway Routing Protocol)
Ví dụ về chứng thực EIGRP:
Code:
NTCRouter#conf t
NTCRouter(config)#router eigrp 200
NTCRouter(config-router)#network 10.0.0.0
NTCRouter(config-router)#network 172.16.0.0
NTCRouter(config)#exit
NTCRouter(config)#int s0/0
NTCRouter(config-if)#ip authentication mode eigrp 100 md5
NTCRouter(config-if)#ip authentication key-chain eigrp 100 ntc
NTCRouter(config-if)#exit
NTCRouter(config)#key chain ntc
Trang 3NTCRouter(config-key)#key 1
NTCRouter(config-key)#key-string 123456789
NTCRouter(config-key)#^Z
NTCRouter#
4 Chống lại Denial of Service Attacks
Phần này đề cập đến kiểu tấn công SYN
- Attacker gởi packet SYN để tạo kết nối
- Máy bên trong mạng (Victim) gởi SYN-ACK và tạo buffer để chờ Attacker gởi
dữ liệu
- Attacker không trả lời nữa, mà mở 1 kết nối SYN
Cứ như vậy Attacker sẽ mở rất nhiều kết nối với chỉ 1 packet SYN, làm cho Victim hết bộ nhớ và treo
Các bạn sử dụng chức năng TCP Intercept để tránh tình trạng này TCP Intercept
có 2 mode:
- Intercept mode: nếu Attacker gởi packet SYN thì router rìa sẽ giữ packet này lại trả lời hộ Nếu Attacker trả lời thì đây không phải là attacker, lúc này router gởi packet SYN cho máy bên trong vẫn chưa muộn, và dĩ nhiên cần giữ lại packet đầu tiên mà bên trong trả lời
Còn ngược, Attacker không nói kô rằng thì rõ ràng không nên tiếp tục chơi với nó nữa, ghi nhớ IP này để deny nó
- Monitor mode: nếu Attacker gởi packet SYN thì router rìa vẫn chuyển cho
Victim, nhưng theo dõi kết nối này Nếu nhận thấy Attacker không trả lời mà lại có nhiều kết nối khác được mở giống như vậy nữa thì router biết rằng máy bên trong đang bị tấn công DoS SYN Attack, nó sẽ ngừng ngay các packet tiếp theo
Sau đây là ví dụ về việc bảo vệ server 172.16.10.25 khỏi SYN Attack
Code:
NTCRouter#config t
NTCRouter(config)#access-list 151 permit tcp any host 172.16.10.25
NTCRouter(config)#ip tcp intercept list 151
NTCRouter(config)#ip tcp intercept mode intercept
NTCRouter(config)#^Z
NTCRouter#
(Nguồn : www.avnonline.org )
Web Application Security
Trang 4Bảo mật ứng dụng web
Dữ liệu vào không hợp lệ
Theo OWASP Guide ,dữ liệu vào không hợp lệ là một nhược điểm phổ biến được tìm thấy đa số trong các ứng dụng web Dữ liệu vào hỏng dẫn đến đa số những sự tổn thương khác trong môi trường này
(http://www.owasp.org/index.php/Data_Validation)
Trước khi chúng ta xem làm thế nào để ngăn ngừa nhược điểm lan rộng trong toàn
bộ website của bạn (soltution ??).,chúng ta sẽ khảo sát khả năng nguy hiểm tiềm tàng gây ra cho công việc của bạn ,khi dữ liệu vào hỏng cho phép hiểu được thành phần xử lý của bạn
Hình 1 là một sự miêu tả hợp lý của bốn đường dữ liệu vào được tiếp nhận bời một
ứng dụng
Làm thế nào một ứng dụng truy xuất,xử lý và hiển thị dữ liệu vào từ một trong số những tác động trực tiếp
Ví dụ : kẻ tấn công có thể them vào ,xoá đi ,hoặc tinh chỉnh những tham số URL
trong chuỗi truy vấn Những trường biểu mẫu ẩn có thể bị thay đổi và được xem xét lại Thông tin cở sở dữ liệu , đặc biệt là những trường được ghi bởi những ứng dụng khác ,có thể là sự cố ý hoặc do một sự hư hỏng tình cờ
Khả năng tổn thương tìm tàng
Ở đây có nhiều tác động phủ nhận hợp lý ,nếu dữ liệu đưa vào chứa đựng sự định dạng không thích hợp hay nội dung không hợp lệ /tinh vi nắm bắt tình trạnh nguy kịch của ứng dụng web Quan sát một vài trường hợp sau :
***Hiển thị nội dung HTML sai
Kết quả sự hiển thị tác động không đầy đủ sẽ là một sự miêu tả không hoàn chỉnh website của bạn Nói cách khác ,nhìn vào phần cuối của hình minh hoạ ,dữ liệu vào hỏng có thể làm cho các lỗi của website bạn bị phơi bày ra Hơn nữa ,những người tấn công có thể khai thác lỗi ở đầu ra của ứng dụng để cần cù thu thập một vài ý tưởng ,mặc dù người phát triển đã thận trọng trong cách code của mình Nếu kẻ tấn công đã dễ dàng có được những thông tin ,thì cam đoan rằng đó sẽ là điều dễ dàng cho việc bẻ khoá những thành phần ứng dụng khác
***Bỏ qua sự xác nhận từ phía người dùng
Kiểm tra tính đúng đắn thì không thật sự hợp lý,nó không quá khó cho người tấn công vô hiệu hoá một đoạn mã thực thi trên máy trạm ,nhập vào form input một giá
Trang 5trị sai và sau đó chấp nhận biểu mẫu (submit the form ).Nếu nó kiểm tra từ phía server không đúng ,server huỷ bỏ yêu cầu và ngưng thi hành của những dòng lệnh không hợp lệ , đó cũng là hai kết quả hợp lý
***Hệ thống thông qua mã nguồn
Những lĩnh vực đề mục không được thông qua có thể chứa mã nguồn HTML giống như <script>and<object> thực hiện mã bất ngờ
***Sự phát sinh của việc thông báo lỗi
Bằng sự bắt buộc thông báo lỗi các mã nguồn nào đó , kẻ tấn công có thể chứa trình ứng dụng, hệ điều hành và kết nối tạm thông tin về hệ thống của bạn.Thông tin này thường được dùng ở giai đoạn đầu của sự tấn công- foot printing
http://en.wikipedia.org/wiki/Footprinting
***Tràn bộ nhớ trung gian
Những kẻ tấn công có thể sử dụng làm tràn bộ nhớ trung gian để phá huỷ 1 hệ thống hoặc thực hiện mã hiểm độc http://en.wikipedia.org/wiki/Buffer_overflow
***Truy cập trái phép
Truy cập tập tin có thể bị thu được bởi sự vận dụng các đường dẫn Ví dụ như, tiếp theo 1 đường dẫn là tới 1 tập tin mà người sử dụng cho phép truy cập:
Code:
<a href=”display.cfm?paper_id=235”>Customer List</a>
Bằng sự vận dụng giới hạn paper_id, kẻ tấn công có thể lấy thông tin tiềm năng thận trọng tới chỗ mà hắn không được cho phép truy cập chính thức
***SQL Injection
Loại tấn công này làm cho cơ sở dữ liệu của công ty không được phép sửa đổi, bỏ
đi, hoặc bổ sung thêm dữ liệu Điều đó gây ra bởi kẻ tấn công bao gồm mã SQL trong dữ liệu vào đến trường biểu mẫu hoặc bởi vận dụng những chuỗi câu hỏi 1 cách trực tiếp 1 ví dụ có thể tìm thấy tại
http://en.wikipedia.org/wiki/Sql_injection
Sự phê chuẩn như 1 hàng rào phòng thủ
Đây là bảng kê tính chất có thể bị làm hư hỏng, nhưng nó không hoàn thành
Những tính chất này chỉ bị giới hạn bởi khuyết điểm độc nhất của hệ thống của bạn
và tính sáng tạo của kẻ tấn công
1/ Thông qua mọi vấn đề, kiểm tra theo yêu cầu của bạn và loại bỏ tất cả
2/ Thực hiện mọi vấn đề trên nguồn mở Đây là lý do làm cho khách hàng nhanh chóng nhận được những dữ liệu không chính xác
3/ Làm thay đổi nguồn dữ liệu từ xác thực trở nên không chính xác Với các từ
Trang 6khoá khác, kiểm tra lại và đưa ra dữ liệu không đúng hoặc không thực hiện Ở đây có nhiều sự thay đổi để kiểm tra Các việc kiểm tra sự thực thi của bộ lọc bao gồm :