.7 Bảng dữ liệu lưu vết truy cập TD

Một phần của tài liệu (LUẬN án TIẾN sĩ) phát hiện và phòng chống một số dạng tấn công từ chối dịch vụ phân tán (Trang 95 - 97)

Biến số tần suất f sẽ được cập nhật liên tục để đếm số lần gửi gói tin truy cập của SrcIP với hệ thống trong khoảng thời gian ∆ vừa trôi qua, kết thúc với thời điểm cuối tL. Với một ScrIP nguồn cho trước, nếu khơng có truy cập mới thì giá trị f sẽ phải giảm dần: những lần truy

cập quá tuổi ∆ sẽ không được tính nữa; và nếu khơng có cập nhật mới trong cả khoảng ∆ mới nhất thì dịng dữ liệu của ScrIP sẽ bị loại bỏ khỏi bảng.

Để đảm bảo cập nhật liên tục f, trường Trace được tổ chức như một mảng có TS bit nhị phân (trong đó TS là một hằng số lựa chọn trước, có thể là 64, 128, 256 tùy theo phần cứng vi xử lý sử dụng – sẽ bàn thêm trong phần thực nghiệm). Ta có thể hình dung khoảng thời gian ∆ coi như được chia ra thành TS ơ nhỏ (slot) có độ dài bằng nhau và bằng =∆/TZ. Như vậy,

Trace là mảng bit đánh dấu những slot có sự kiện truy nhập – hệ thống nhận một request packet với địa chỉ SrcIP tương ứng – trong khoảng thời gian [tL-∆, tL].

Một cách lý tưởng, cứ mỗi slot (khoảng thời gian ) vừa trôi qua ta có thể cập nhật Trace

của tất cả các dịng trong bảng bằng cách và đặt bit cuối Trace[TS] với giá trị 1 hay 0 tùy theo quan sát có xảy ra một gói tin gửi đến từ SrcIP tương ứng trong khoảng  hay khơng,

và sau đó đẩy trái một vị trí (Shift Left) cả mảng Trace. Trước khi đẩy dịch trái, tùy theo giá trị của Trace [0] và Trace [TS] ta có thể cập nhật lại biến số f (tăng, giảm một hay giữ

nguyên).

Tuy nhiên việc phải cập nhật và dịch trái (shift left) cả bảng TraTab là một thao tác quá tốn kém lãng phí xử lý, vì vậy chúng tơi đề xuất ý tưởng cập nhật Trace độc lập trên mỡi dịng, tức mỡi SrcIP, và chỉ khi nào sự kiện truy cập xảy ra (không phải liên tục cho mỗi slot). Cụ thể là khi có một truy cập, dữ liệu Trace với SrcIP tương ứng sẽ được dịch trái với số vị trí đúng bằng khoảng cách thời gian (qui về đơn vị slot, làm tròn trên) giữa thời điểm truy cập hiện tại với thời điểm ngay trước.

Thiết kế này cho phép đếm xấp xỉ tần suất truy cập của ScrIP trong khoảng thời gian ∆ với giả thiết độ dài slot  là đủ nhỏ -- tức việc phát đi từ ScrIP là chưa dày – để khơng có hai truy cập rơi vào một slot. Tuy nhiên nếu hiện tượng phát dày lên (tỷ lệ có thể tăng lên nhanh

khi bị tấn cơng), có sự trùng lặp truy cập trên một slot, ta có thể điều chỉnh làm hẹp lại khung nhìn – gọi là cơ chế Zoom-in – bằng cách đặt ∆=∆/2 và tất nhiên =/2.

Sự tăng/giảm hai tham số hệ thống này sẽ liên tục được thực hiện khi cần thiết trong quá trình hoạt động.

Việc thiết kế dữ liệu tinh giản gọn nhẹ như trên cho phép tối ưu không gian lưu trữ, thời gian xử lý và cũng cho phép thực hiện xử lý song song khi hệ thống có nhiểu đường truyền tin kết nối Internet độc lập.

3.5.4.2. Thiết lập tham số đầu vào và cơ chế đồng bộ

Các tham số hệ thống bao gồm giá trị ∆ khởi tạo và kich thước TS của dữ liệu mảng Trace. Các tham số này có thể được điều chỉnh thay đổi phụ thuộc vào từng hệ thống cài đặt cụ thể. Chúng tôi khuyến nghị sử dụng TS là độ dài từ máy của máy tính cài đặt thuật toán để đảm bảo thao tác dịch trái Trace (thao tác phổ biến nhất) sẽ được thực hiện chỉ với một lệnh máy (shift left). Tham số ∆ (và tương ứng với nó ) sẽ được khởi tạo sao cho với hồn cảnh làm việc bình thường (khơng bị tấn cơng) hệ thống Web quan tâm sẽ có mật độ truy cập tương đối thưa (chẳng hạn f<5): sau đó với mật độ dày lên nếu bị tấn cơng (hoặc tải tăng đột ngột) thì sẽ điều chỉnh bằng cơ chế Zoom-In nói trên (khi trở lại hồn cảnh bình thường có thể

Zoom-Out). Thơng thường có thể khởi tạo ∆ khơng q 60 giây.

Tôi không qui định kích thước bảng TraTab: số dịng dữ liệu có thể thay đổi liên tục (phản ánh số IP nguồn tích cực trong khoảng thời gian ∆ khá bé). Mặc dù vậy điều này sẽ không thể làm cạn kiệt bộ nhớ, vì kinh nghiệm cho thấy, trong lúc bị tấn công số máy tấn công tham gia (các máy tay sai bị huy động theo cơ chế bot-net) cũng chỉ có thể đến nhiều ngàn – kích thước tổng của bảng dữ liệu lúc đó cũng cịn xa mới đến 1Megabit – trong thực tế bảng dữ liệu là vẫn rất nhỏ.

Đề xuất này hỡ trợ khả năng tính tốn song song đa xử lý (nếu phần cứng máy tính chủ đáp ứng). Các xử lý gói tin truy cập trên TraTab, ngay cả khi tiến hành bằng các vi xử lý song song, vẫn được đồng bộ nhờ một đồng hồ hệ thống chung (computer clock). Trong khi một giá trị ∆ đang được sử dụng, thời gian hệ thống có thể coi là rời rạc hóa theo nhịp đầu mỡi slot =∆/TS. Hai truy cập liên tiếp đến từ cùng một SrcIP nhưng vào hai slot khác nhau sẽ

được cập nhật vào hai bit khác nhau của trường Trace; các bit ở xen giữa, tương ứng với các slot quãng giữa sẽ giữ giá trị 0. Để hỗ trợ cơ chế đồng bộ này, các giá trị tL sẽ luôn được cập nhật như là thời điểm kết thúc của mỗi slot. Tức là với slot đang diễn ra sự kiện truy cập thì giá trị tL mới được thiết lập có thể cịn lớn hơn (sau) giá trị tc của thời điểm hiện thời.

3.5.4.3. Thuật tốn chi tiết tính tần suất f thời gian thực

Thuật tốn chúng tơi đề xuất bao gồm 02 tác vụ xử lý cơ bản: xử lý mỡi gói tin truy cập hệ thống Web và tính tốn và báo cáo các tần suất f (Reporting) sau mỗi khoảng thời gian ∆t.

(1) : The normal update (2)-(3): Zoom-in update

Một phần của tài liệu (LUẬN án TIẾN sĩ) phát hiện và phòng chống một số dạng tấn công từ chối dịch vụ phân tán (Trang 95 - 97)