Tài nguyên bộ nhớ máy chủ

Một phần của tài liệu Ứng dụng bản đồ tự tổ chức self organizing map (SOM) nhằm phát hiện tấn công web server qua hành vi luận văn thạc sĩ (Trang 44 - 50)

CHƢƠNG 4: XÂY DỰNG CÁC ĐẶC TRƢNG

4.2.1.Tài nguyên bộ nhớ máy chủ

Hầu hết máy tính đƣợc xây dựng sử dụng mơ hình Von Neumann, với trung tâm là bộ nhớ. Chƣơng trình thực thi quá trình đƣợc lƣu trong bộ nhớ. Chúng ta biết bộ nhớ là cấu trúc logic nhƣ 1 dãy các điểm, với địa chỉ từ 0 đến tối đa kích thƣớc bộ nhớ mà vi xử lý cĩ thể đánh địa chỉ.

Hình 4.1: Mơ hình Von Neumann

Thiếu bộ nhớ là vấn đề nan giải trong quá trình xử lý của hệ thống máy tính. Ngay cả khi bạn nghi ngờ những vấn đề khác, chúng ta cũng nên kiểm tra bộ nhớ để tìm nguyên nhân thiếu bộ nhớ hay khơng. Quản lý bộ nhớ Máy chủ để cĩ thể ƣớc lƣợng khả năng của bộ nhớ và theo dõi những ảnh hƣởng của việc thiếu bộ nhớ. Việc quản lý bộ nhớ máy chủ cĩ thể giúp chúng ta xác định những vẫn đề cĩ thể xảy ra:

Khơng đủ bộ nhớ

Dấu hiệu nhận thấy rỏ nhất là tốc độ xử lí của ứng dụng và những dịch vụ trên máy chủ bị chậm đáng kể và cĩ thể ảnh hƣởng đến quá trình thực thi của những tài nguyên khác trên máy chủ. Vì vậy, đều quan trọng là phải quản lí bộ nhớ máy

chủ với những khoảng thời gian điều đặn để phát hiện vấn đề tắt nghẽn và thiếu bộ nhớ.

Thừa phân trang

Dấu hiệu của việc thiếu bộ nhớ thƣờng xuyên xảy ra lúc phân trang. Phân trang là qui trình của việc di chuyển những khối mã và dữ liệu với kích cỡ cho trƣớc từ RAM đến ổ cứng bằng cách dùng những đơn vị gọi những trang để giải phĩng bộ nhớ. Mặc dù vài trang cĩ thể chấp nhận bởi vì nĩ kích hoạt, chúng ta dùng nhiều bộ nhớ hơn thực tế, các trang khơng đổi làm chậm quá trình thực thi của máy chủ. Vì vậy, giảm sự phân trang một cách đáng kể sẽ giúp máy chủ hoạt động tốt hơn.

Bộ nhớ rị rỉ

Bộ nhớ rị rỉ (leak) xảy ra khi những ứng dụng phân phát bộ nhớ để dùng nhƣng khơng giải phĩng vùng nhớ đã đƣợc phân phát khi hồn thành. Nếu một vùng nhớ bị giữ quá lâu, thƣờng làm máy chủ dừng những chức năng bất ngờ.

Lỗi tràn bộ nhớ

Trong những trƣờng hợp bộ nhớ đệm bị tràn thì dữ liệu tràn ra ngồi bộ nhớ đệm đƣợc chỉ định sẽ phải lƣu trữ vào một nơi khác. Dữ liệu này sẽ chảy vào các vùng nhớ lân cận, và thơng thƣờng khi đĩ chƣơng trình sẽ bị lỗi vì nĩ khơng thể xử lý các dữ liệu bổ sung.

Các lỗi tràn bộ đệm cĩ thể làm cho một tiến trình đổ vỡ hoặc cho ra các kết quả sai. Các lỗi này cĩ thể đƣợc kích hoạt bởi các dữ liệu vào đƣợc thiết kế đặc biệt để thực thi các đoạn mã phá hoại hoặc để làm cho chƣơng trình hoạt động một cách khơng nhƣ mong đợi. Bằng cách đĩ, các lỗi tràn bộ đệm gây ra nhiều lỗ hổng bảo mật (vulnerability) đối với phần mềm và tạo cơ sở cho nhiều thủ thuật khai thác (exploit). Việc kiểm tra biên (bounds checking) đầy đủ bởi lập trình viên hoặc trình biên dịch cĩ thể ngăn chặn các lỗi tràn bộ đệm.

Thơng số bộ nhớ trên máy chủ Web

MemTotal: Tổng dung lƣợng bộ nhớ cĩ thể sử dụng.

MemFree: Dung lƣợng bộ nhớ vật lý chƣa sử dụng trong hệ thống.  Buffers: Dung lƣợng bộ nhớ vật lý đƣợc sử dụng cho các bộ đệm.  Cache: Dung lƣợng bộ nhớ vật lý sử dụng nhƣ bộ nhớ cache.  SwapCache: Dung lƣợng Swap sử dụng nhƣ bộ nhớ cache.

Active: Tổng dung lƣợng bộ nhớ đệm hoặc trang nhớ cache đang hoạt động. Phần bộ nhớ đƣợc sử dụng gần đây và thƣờng khơng đƣợc nhận lại khi cần thiết.

Inactive: Tổng dung lƣợng bộ nhớ đệm hoặc trang nhớ cache đang trống. Phần bộ nhớ khơng đƣợc sử dụng gần đây và thƣờng dùng cho các mục đích khác bằng thuật tốn phân trang.

HighTotal: Tổng dung lƣợng bộ nhớ ở vùng địa chỉ cao. Giá trị HighTotal cĩ thể khác nhau tùy loại hạt nhân sử dụng. Hạt nhân sử dùng thủ thuật gián tiếp truy cập vào vùng bộ nhớ địa chỉ cao. Dữ liệu cache cĩ thể ở trong khu vực bộ nhớ này.

LowTotal: Tổng dung lƣợng khơng phải bộ nhớ địa chỉ cao.

LowFree: Dung lƣợng bộ nhớ trống của vùng bộ nhớ địa chỉ thấp. Đây là bộ nhớ hạt nhân cĩ thể truy cập trực tiếp. Tất cả cấu trúc dữ liệu hạt nhân cĩ thể đi vào vùng nhớ địa chỉ thấp.

SwapTotal: Tổng dung lƣợng bộ nhớ vật lý swap.

SwapFree: Tổng dung lƣợng trống của bộ nhớ vật lý swap.

Dirty: Tổng dung lƣợng bộ nhớ đang đợi để ghi lại vào đĩa. Khi máy khơng đủ bộ nhớ RAM nĩ sẽ lấy dung lƣợng ổ đĩa làm bộ nhớ tạm thời.  Writeback: Tổng dung lƣợng bộ nhớ hoạt động đƣợc ghi vào đĩa.

PageTables: Số lƣợng bộ nhớ dành riêng cho mức thấp nhất của các bảng trang.

Map: Tổng dung lƣợng bộ nhớ đƣợc sử dụng để vẽ bản đồ, các tập tin, hoặc sử dụng cho thƣ viện lệnh nmap.

Slab: Tổng dung lƣợng bộ nhớ sử dụng riêng cho hạt nhân cấu trúc dữ liệu cache.

Đề xuất tham số đặc trƣng

Trong một thời gian dài kiểm nghiệm, tác giả thu thập tất cả các tham số bộ nhớ máy chủ web trong trạng thái “bình thƣờng” khơng cĩ tấn cơng, sau đĩ tác giả tiếp tục thu thập các tham số bộ nhớ trong trạng thái “bất thƣờng” máy chủ web bị tấn cơng xâm nhập, và so sánh các tham số này với nhau tác giả nhận thấy các tham số cĩ sự thay đổi và ảnh hƣởng đến hệ thống máy chủ web.

Hình 4.2: Thơng số bộ nhớ máy trong trạng thái bình thường (trái) và bất thường (phải). (adsbygoogle = window.adsbygoogle || []).push({});

Dựa theo sự thay đổi thơng số bộ nhớ máy, sự ảnh hƣởng của bộ nhớ máy chủ web khi bị tấn cơng, và qua tham khảo gợi ý từ www.redhat.com tác giả đề xuất các tham số bộ nhớ sau:

 MemFree  Buffers  Cache  LowFree  PageTables  Committed_AS 4.2.2. Tài nguyên bộ vi xử lý

 Bộ xử lý trung tâm điều khiển tồn bộ hoạt động của máy tính.  Bộ vi xử lý hoạt động theo xung nhịp (block) cĩ tần số xác định.  Tốc độ xử lý đƣợc đƣợc đánh giá thơng qua tần số xung nhịp.  Gọi T0 là chu kỳ xung nhịp, f0 = 1/T0 là tần số xung nhịp.

 Mỗi thao tác của bộ xử lý cần kT0, T0 càng nhỏ thì bộ xử lý chạy càng nhanh.

Theo [7] Phần trăm thời gian mà bộ vi xử lí hoạt động: là phần trăm của thời gian trơi qua mà bộ vi xử lí dùng để thực thi một tiến trình khơng nhàn rỗi. Mỗi bộ vi xử lí cĩ một tiến trình nhàn rỗi với những chu trình đến hết khi khơng cĩ những tiến trình khác sẵn sàng chạy. Tham số này là dấu hiệu chính của hoạt động của bộ vi xử lí. Nĩ hiển thị phần trăm trung bình của thời gian bận, thời gian quan sát trong suốt khoảng thời gian thử. Nĩ tính tốn giá trị này bằng cách giám sát thời gian mà tiến trình rỗi đƣợc kích hoạt và trừ giá trị đĩ với 100%.

Hình 4.3: Thơng số bộ vi xử lý trong trang thái bình thường

Hình 4.4: Thơng số bộ vi xử lý trong trang thái bất thường

Đề xuất tham số đặc trƣng

Sau thời gian dài kiểm nghiệm tác giả so sánh thơng số bộ vi xử lý máy chủ Web trong trạng thái “bình thƣờng” và trạng thái “bất thƣờng” (máy chủ web bị tấn cơng, xâm nhập) tác giả nhận thấy các thơng số cĩ thay đổi và ảnh hƣởng tới hệ thống máy chủ Web, từ sự ảnh hƣởng này và tham khảo gợi ý từ www.redhat.com, tác giả đề xuất các tham số đặc trƣng bên dƣới:

 Cpu: số lƣợng thời gian cpu hoạt động.

 processes : Số lƣợng tiến trình kể từ khi khởi động.

 procs_running: Số các tiến trình trong trạng thái Runnable.

 procs_blocked: Số tiến trình bị chặn chờ đợi cho I/O để hồn thành.  loadavg: tải trung bình trên bộ vi xử lý

 load.for1min: % sử dụng bộ vi xử lý trong 1 phút cuối cùng  load.for5min: % sử dụng bộ vi xử lý trong 5 phút cuối cùng  load.for15min: % sử dụng bộ vi xử lý trong 15 phút cuối cùng

Một phần của tài liệu Ứng dụng bản đồ tự tổ chức self organizing map (SOM) nhằm phát hiện tấn công web server qua hành vi luận văn thạc sĩ (Trang 44 - 50)