Để kiểm tra bản phân phối Linux của bạn có bị ảnh hưởng bởi lỗ hổng “Dirty Frag” (CVE-2026-43284 và CVE-2026-43500) hay không, bạn cần xác định tên distro, phiên bản và kernel version, sau đó đối chiếu với danh sách đã biết.cybersecuritynews+1
Lệnh Kiểm Tra Distro Và Kernel
Chạy các lệnh sau trên terminal để lấy thông tin:
- Xem distro và phiên bản: cat /etc/os-release hoặc lsb_release -a.kdata+1
- Xem kernel version: uname -r hoặc uname -a.kdata
- Ví dụ đầu ra: Ubuntu 24.04.4 với kernel 6.17.0-23-generic là bị ảnh hưởng.github
Distro Bị Ảnh Hưởng
Hầu hết các distro lớn với kernel từ 5.15 đến 6.9 (từ 2017) đều dễ bị tấn công, đã test xác nhận:
| Distro |
Phiên Bản Kernel Ví Dụ |
Trạng Thái |
| Ubuntu |
24.04.4 (6.17.0-23-generic), tất cả LTS |
Bị ảnh hưởng ubuntu+2 |
| RHEL |
10.1 (6.12.0-124.49.1.el10_1) |
Bị ảnh hưởng cybersecuritynews+1 |
| Fedora |
44 (6.19.14-300.fc44.x86_64) |
Bị ảnh hưởng github |
| openSUSE |
Tumbleweed (7.0.2-1-default) |
Bị ảnh hưởng cybersecuritynews |
| CentOS Stream |
10 (6.12.0-224.el10.x86_64) |
Bị ảnh hưởng github |
| AlmaLinux |
10 (6.12.0-124.52.3.el10_1) |
Bị ảnh hưởng cybersecuritynews |
Kiểm Tra Module Liên Quan
Chạy grep -E ‘^(esp4|esp6|rxrpc)’ /proc/modules để xem module esp4, esp6 hoặc rxrpc có đang load không; nếu có, hệ thống dễ bị khai thác ngay lập tức.ubuntu+1 Nếu kernel đã cập nhật sau commit f4c50a4034e6 (CVE-2026-43284) và aa54b1d27fe0 (CVE-2026-43500), bạn an toàn hơn.github
Dirty Frag khai thác page cache bằng cách lợi dụng logic bug trong hai subsystem kernel để ghi trực tiếp vào page fragments đang được cache, bypass quyền file. Kỹ thuật này tương tự Dirty Pipe nhưng dùng packet processing thay vì pipe buffer.
Cơ Chế Khai Thác xfrm-ESP (CVE-2026-43284)
- Trigger ESP packet: Userland gửi ESP packet (IPsec) qua sendmsg() tới socket AF_INET6 với IPV6_ADDRFORM.
- Page cache mapping: Kernel map ESP packet data vào page cache qua xfrm4_rcv_esp() → esp_input().
- Frag overwrite: Logic sai trong skb_to_sgvec() cho phép attacker kiểm soát skb_frag_page(), ghi đè arbitrary page trong cache của file hệ thống như /etc/passwd.
- File read trigger: Đọc file target → page cache hit → data đã bị corrupt.
skb_frag_page(&skb_shinfo(skb)->frags[0]) ← Attacker control
^ Được map trực tiếp vào page cache của /etc/passwd
Cơ Chế RxRPC (CVE-2026-43500)
- AF_RXRPC socket: Tạo socket AF_RXRPC với rxrpc.sock.
- Data injection: Gửi RxRPC data packet chứa payload độc hại.
- Page cache pollution: rxrpc_recvmsg() map packet trực tiếp vào page cache fragments không kiểm tra quyền.
- Universal write: Ghi đè bất kỳ file nào trong page cache bất kể owner permissions.
Điểm Khác Biệt Kỹ Thuật
| Bước |
Dirty Pipe |
Dirty Frag (xfrm-ESP) |
| Vector |
splice() pipe |
sendmsg() ESP socket |
| Mapping |
pipe->buf → page |
skb->frags → page cache |
| Control |
pipe_buffer.flags |
skb_frag_page() index |
| Trigger |
pipe read |
File read (cache hit) |
Root cause chung: Page cache không validate nguồn gốc dữ liệu khi được populate từ network stack thay vì regular file I/O.
Dirty Frag khác biệt rõ rệt với Dirty Pipe và Copy Fail dù cùng khai thác page cache của Linux kernel. Chúng thuộc “gia đình Dirty” về mặt kỹ thuật nhưng nhắm vào các subsystem khác nhau, có độ tin cậy cao hơn và vượt qua các biện pháp giảm thiểu cũ. So Sánh Chính
| Đặc Điểm |
Dirty Pipe (2022) |
Copy Fail (2026) |
Dirty Frag (2026) |
| CVE |
CVE-2022-0847 |
CVE-2026-31431 |
CVE-2026-43284 + CVE-2026-43500 infoq |
| Sub-system |
Pipe buffer (splice) |
AF_ALG (algif_aead) |
xfrm-ESP & RxRPC whitehatyoutube |
| Loại Bug |
Logic: Ghi đè pipe_buffer.flags |
Logic: Copy-on-write sai |
Logic: Ghi trực tiếp vào page cache frags |
| Phạm Vi |
Kernel 5.8-5.17 |
Kernel 6.x mới |
Kernel từ 2017 (9 năm) youtube |
| Độ Ổn Định |
Cao, deterministic |
Cao |
Cao nhất, không race, không crash whitehat |
| Mitigation |
Patch nhanh chóng |
Blacklist algif_aead |
Blacklist esp4/esp6/rxrpc whitehat |
Điểm Khác Biệt Nổi Bật Dirty Frag là chuỗi khai thác kép thay vì single bug, kết hợp xfrm-ESP (cần user namespace, bị AppArmor Ubuntu chặn) và RxRPC (không cần namespace nhưng module thường off) để bao phủ tất cả distro lớn.youtubewhitehat
- Vượt mitigation cũ: Copy Fail bị chặn bằng blacklist algif_aead, nhưng Dirty Frag dùng subsystem hoàn toàn khác nên vẫn hoạt động.youtube
- Tuổi thọ dài hơn: xfrm-ESP bug tồn tại từ 2017, RxRPC từ 2023 – rộng hơn Dirty Pipe (chỉ 1 năm).whitehat
- Phủ sóng universal: Ubuntu dùng RxRPC path, RHEL/Fedora dùng xfrm-ESP path – không distro nào thoát.youtube
Tác Động Chung Cả ba đều cho phép local privilege escalation (LPE) → root từ user thường bằng cách ghi đè file hệ thống (như /etc/passwd) qua page cache manipulation, nhưng Dirty Frag nguy hiểm nhất vì chưa có patch đầy đủ và PoC public.infoq+1
Các công cụ bảo mật miễn phí tốt nhất cho server Linux
Để bảo mật máy chủ Linux, bạn có thể sử dụng nhiều công cụ miễn phí mạnh mẽ, mỗi công cụ tập trung vào một khía cạnh bảo mật khác nhau. Việc kết hợp các công cụ này sẽ tạo ra một hệ thống phòng thủ vững chắc cho máy chủ của bạn.
Dưới đây là danh sách các công cụ bảo mật miễn phí tốt nhất cho server Linux, được phân loại theo chức năng chính.
🛡️ Tường lửa (Firewall)
Tường lửa là lớp phòng thủ đầu tiên, kiểm soát lưu lượng mạng ra vào máy chủ.
- UFW (Uncomplicated Firewall): Là một giao diện quản lý tường lửa thân thiện, được xây dựng trên nền tảng iptables và được cài đặt mặc định trên Ubuntu. UFW giúp đơn giản hóa việc cấu hình các quy tắc tường lửa phức tạp.
- firewalld: Là giải pháp tường lửa mặc định trên các bản phân phối dựa trên Red Hat như CentOS và Fedora. Nó cung cấp khả năng quản lý các “vùng” mạng (zones) với các mức độ tin cậy khác nhau, cho phép áp dụng chính sách linh hoạt mà không cần khởi động lại dịch vụ.
🔍 Quét Lỗ hổng và Đánh giá An ninh
Các công cụ này giúp bạn kiểm tra cấu hình hệ thống và phát hiện các điểm yếu tiềm tàng.
- Lynis: Một công cụ kiểm tra bảo mật toàn diện và rất phổ biến. Lynis quét hệ thống để tìm kiếm các vấn đề bảo mật, lỗi cấu hình, phần mềm lỗi thời và đưa ra các đề xuất chi tiết để “củng cố” (hardening) máy chủ. Nó hoạt động trên hầu hết các hệ điều hành tương tự Unix.
- OpenVAS (Greenbone Community Edition): Là một bộ công cụ quét lỗ hổng mạnh mẽ và đầy đủ tính năng. Nó có thể xác định hàng ngàn lỗ hổng đã biết trong các dịch vụ mạng và ứng dụng web đang chạy trên máy chủ của bạn.
- Nmap (Network Mapper): Mặc dù chủ yếu được biết đến như một công cụ khám phá mạng, Nmap cũng cực kỳ hữu ích trong việc kiểm tra bảo mật. Nó có thể xác định các cổng đang mở, các dịch vụ đang chạy và các lỗ hổng liên quan đến dịch vụ đó.
🦠 Quét Mã độc và Rootkit
Đây là các công cụ chuyên dụng để phát hiện phần mềm độc hại, virus và rootkit.
- ClamAV: Là một công cụ quét virus mã nguồn mở hàng đầu cho Linux. Nó có thể phát hiện trojan, virus, mã độc và các mối đe dọa khác trong email, tệp tin và thư mục. Cơ sở dữ liệu virus của nó được cập nhật thường xuyên.
- Chkrootkit (Check Rootkit): Một công cụ dòng lệnh đơn giản nhưng hiệu quả để quét hệ thống nhằm phát hiện các dấu hiệu của rootkit đã biết.
- Rkhunter (Rootkit Hunter): Tương tự như Chkrootkit, Rkhunter quét hệ thống của bạn để tìm kiếm rootkit, cửa hậu (backdoors) và các lỗ hổng cục bộ bằng cách so sánh các tệp hệ thống quan trọng với cơ sở dữ liệu các tệp tốt đã biết.
🚨 Hệ thống Phát hiện và Ngăn chặn Xâm nhập (IDS/IPS)
Các công cụ này giám sát lưu lượng mạng hoặc hoạt động trên máy chủ để phát hiện các hành vi đáng ngờ hoặc các cuộc tấn công đã biết.
- Snort: Là một hệ thống phát hiện xâm nhập mạng (NIDS) mã nguồn mở mạnh mẽ. Nó phân tích lưu lượng mạng theo thời gian thực và có thể phát hiện một loạt các cuộc tấn-công dựa trên các bộ quy tắc (ruleset) được định sẵn.
- Suricata: Một công cụ IDS/IPS hiệu suất cao, hiện đại và cũng là mã nguồn mở. Suricata có khả năng xử lý đa luồng, giúp nó hoạt động hiệu quả trên các hệ thống có lưu lượng mạng lớn.
- Fail2Ban: Một công cụ cực kỳ hữu ích để ngăn chặn các cuộc tấn công brute-force. Fail2Ban giám sát các tệp log (ví dụ: log của SSH, web server) để tìm kiếm các lần đăng nhập thất bại lặp đi lặp lại từ cùng một địa chỉ IP và tự động chặn IP đó bằng tường lửa.
Lời khuyên khi sử dụng:
- Bắt đầu với những công cụ cơ bản: Thiết lập tường lửa (UFW/firewalld) và cài đặt Fail2Ban là những bước đầu tiên và quan trọng nhất.
- Quét định kỳ: Lên lịch chạy Lynis, ClamAV, và Rkhunter thường xuyên (ví dụ: hàng tuần) để theo dõi tình trạng an ninh của máy chủ.
- Không cài đặt thừa thãi: Chỉ cài đặt những dịch vụ và công cụ bạn thực sự cần để giảm thiểu bề mặt tấn công.
- Luôn cập nhật: Thường xuyên cập nhật hệ điều hành và tất cả các phần mềm đang chạy trên máy chủ để vá các lỗ hổng bảo mật mới nhất.
1. Điều chỉnh các tham số quản lý tiến trình (MPM) Apache sử dụng các mô-đun MPM (Multi-Processing Module) như prefork, worker, hoặc event để quản lý tiến trình và luồng xử lý request. Các tham số quan trọng bạn cần cấu hình:
- StartServers: số tiến trình con khởi tạo khi Apache chạy.
- MinSpareServers và MaxSpareServers: số tiến trình con nhàn rỗi tối thiểu và tối đa để đáp ứng nhanh yêu cầu mới.
- MaxRequestWorkers (trước đây là MaxClients): số lượng request đồng thời tối đa Apache có thể xử lý, ảnh hưởng trực tiếp đến lượng RAM sử dụng.
- ServerLimit: giới hạn tối đa số tiến trình con, nên đặt bằng hoặc lớn hơn MaxRequestWorkers.
- MaxConnectionsPerChild (MaxRequestsPerChild): số request tối đa một tiến trình con xử lý trước khi bị tái khởi động, giúp tránh rò rỉ bộ nhớ.
Ví dụ cấu hình (trong file httpd.conf hoặc mpm.conf):
text
StartServers 10
MinSpareServers 10
MaxSpareServers 50
MaxRequestWorkers 500
ServerLimit 500
MaxConnectionsPerChild 10000
Lưu ý:
- Tăng MaxRequestWorkers giúp Apache xử lý nhiều request hơn nhưng cũng làm tăng RAM tiêu thụ.
- Bạn cần tính toán dựa trên dung lượng RAM server và bộ nhớ trung bình mỗi tiến trình Apache sử dụng để đặt giá trị phù hợp.
2. Kích hoạt và tối ưu KeepAlive
- KeepAlive On giúp client tái sử dụng kết nối TCP cho nhiều request, giảm chi phí thiết lập kết nối mới, cải thiện hiệu suất.
- KeepAliveTimeout: thời gian chờ giữ kết nối, nên đặt thấp (ví dụ 3-5 giây) để tránh giữ kết nối không cần thiết làm tốn tài nguyên.
- MaxKeepAliveRequests: số request tối đa trên một kết nối, có thể đặt 100 hoặc cao hơn.
Ví dụ:
text
KeepAlive On
KeepAliveTimeout 5
MaxKeepAliveRequests 100
3. Kích hoạt bộ nhớ đệm (Cache)
- Sử dụng các module như mod_cache, mod_disk_cache hoặc mod_mem_cache để lưu trữ nội dung tĩnh hoặc kết quả xử lý, giảm tải cho Apache và PHP.
- Cấu hình cache giúp giảm số request thực sự phải xử lý, tiết kiệm RAM và CPU.
4. Tăng giới hạn bộ nhớ và sử dụng Opcache cho PHP
- Trong file php.ini, tăng giá trị:
text
memory_limit = 256M
- Kích hoạt Opcache để PHP lưu trữ bytecode đã biên dịch trong bộ nhớ, giảm chi phí biên dịch lại script cho mỗi request.
5. Giám sát và điều chỉnh
- Theo dõi lượng RAM Apache sử dụng qua lệnh:
bash
ps aux | grep httpd
- Sử dụng công cụ như mod_status để xem số lượng tiến trình và request đang xử lý.
- Điều chỉnh tham số cấu hình dựa trên thực tế tải và tài nguyên server.
6. Hạn chế quyền truy cập và tối ưu bảo mật
- Giới hạn truy cập vào các thư mục nhạy cảm để giảm tải không cần thiết.
- Sử dụng các phương pháp bảo mật giúp tránh các request độc hại gây tốn tài nguyên.
Tóm tắt
| Cách tối ưu |
Mô tả ngắn gọn |
| Điều chỉnh MPM |
Tăng/giảm số tiến trình, MaxRequestWorkers phù hợp RAM |
| Kích hoạt KeepAlive |
Giữ kết nối lâu hơn, giảm chi phí tạo kết nối mới |
| Kích hoạt bộ nhớ đệm (Cache) |
Giảm số request xử lý thực sự |
| Tăng memory_limit và Opcache |
Giúp PHP xử lý hiệu quả, giảm tải cho Apache |
| Giám sát và điều chỉnh |
Theo dõi tài nguyên, điều chỉnh tham số phù hợp |
| Hạn chế truy cập |
Giảm tải server, tăng bảo mật |
Bước 1: Tải file cài đặt (Downloading)
Config Server Firewall (CSF) không có sẵn trong các kho lưu trữ (repo) mặc định, vui lòng tải trực tiếp từ trang chủ:
wget https://download.configserver.com/csf.tgz
Bước 2: Giải nén gói dữ liệu
Giải nén file archive .tgz vừa tải về bằng lệnh:
tar -xzf csf.tgz
Bước 3: Tiến hành cài đặt
Lưu ý: Nếu hệ thống đang sử dụng tường lửa khác (ví dụ: UFW), bạn cần tắt đi trước khi cài CSF.
Tắt UFW:
ufw disable
Truy cập thư mục và chạy script cài đặt CSF:
cd csf && sh install.sh
Kiểm tra sau khi cài đặt
Sau khi cài đặt xong, hãy kiểm tra lại xem IP Tables trên máy chủ có hoạt động chính xác không:
perl /usr/local/csf/bin/csftest.pl
- Địa chỉ IP hiện tại của bạn sẽ tự động được thêm vào danh sách trắng (whitelist).
- Cổng SSH hiện tại cũng được tự động mở. Nếu bạn thay đổi SSH port sau này, bạn phải thêm thủ công vào file cấu hình CSF.
- Chế độ Test Mode: CSF sẽ mặc định chạy ở chế độ thử nghiệm (Testing). Mọi quy tắc trong iptables sẽ tự động xả (clear) sau mỗi 5 phút kể từ khi CSF khởi động.
1. Định dạng .gz (gzip)
1.1 Nén file:
gzip [tên_file]
1.2 Giải nén file:
gunzip [tên_file.gz]
2. Gom & Bung tập tin/thư mục (.tar)
2.1 Gom nhiều file thành file .tar:
tar -cvf [tên_file.tar] [file1] [file2] ...
2.2 Bung (xả) file .tar:
tar -xvf [file.tar]
2.3 Vừa nén vừa gom thành .tar.gz:
tar -zcvf [file.tar.gz] [file1] [file2] ...
2.4 Giải nén và xả file .tar.gz:
tar -zxvf [file.tar.gz]
3. Tổng hợp lệnh nén & giải nén thư mục thông dụng
Định dạng ZIP
• Nén thư mục:
zip -r folder.zip folder
• Giải nén:
unzip file.zip
Định dạng TAR.GZ
• Nén thư mục dạng .tar.gz:
tar -zcf folder.tar.gz folder
• Giải nén:
tar -zxvf file.tar.gz
Định dạng TAR.BZ2
• Nén thư mục dạng .tar.bz2:
tar -jcf folder.tar.bz2 folder
• Giải nén:
tar -jxvf file.tar.bz2
1. Các nhóm người dùng chính
- Owner (u): Người sở hữu trực tiếp tạo ra các Files, Folder.
- Group (g): Nhóm tập hợp nhiều user có chung quyền hạn.
- Other / Public / World (o): Những user không thuộc hai nhóm trên.
* Khi người dùng login vào hệ thống hoặc website, quyền truy cập sẽ được gán tương ứng theo user đó.
2. Cách tính quyền bằng con số (Octal Notation)
1
Execute (x)
Quyền thực thi
Tóm tắt bảng tổng hợp quyền:
| Con số |
Công thức |
Quyền chi tiết |
| 7 |
4 + 2 + 1 |
Read, Write & Execute |
| 6 |
4 + 2 |
Read & Write |
| 5 |
4 + 1 |
Read & Execute |
| 4 |
4 |
Read |
| 3 |
2 + 1 |
Write & Execute |
| 2 |
2 |
Write |
| 1 |
1 |
Execute |
Cách đọc bộ 3 con số (ví dụ: 755):
Con số thứ nhất dành cho Owner, số thứ hai cho Group và số thứ ba cho Other.
👉 Ví dụ 755: Owner có quyền 7 (Read, Write, Execute), Group có quyền 5 (Read, Execute) và Other có quyền 5 (Read, Execute).
3. Phân quyền bằng ký hiệu chữ (Symbolic Mode)
Ngoài con số, lệnh CHMOD còn hiển thị cấu trúc phân quyền dạng ký hiệu:
- : Không được cấp quyền
d : Ký hiệu Directory (Folder / Thư mục)
r : Quyền Read (Đọc)
w : Quyền Write (Ghi)
x : Quyền Execute (Thực thi)
🔹 drwxr-xr-x : Thư mục (d), Owner (rwx = 7), Group (r-x = 5), Other (r-x = 5). Tương đương với 755.
🔹 -rw-r--r-- : Tập tin (-), Owner (rw- = 6), Group (r– = 4), Other (r– = 4). Tương đương với 644.
4. Thao tác phân quyền trên giao diện phần mềm
Phân quyền bằng phần mềm FileZilla (FTP):
Dùng chức năng Set Permissions trên File Manager của DirectAdmin:
Vì vậy, ESC đã chặn hàm sendmail() do vấn đề trên. Và sau đây ESC xin hướng dẫn cấu hình send mail smtp trên mã nguồn mở Joomla ? + Đăng nhập vào trang quản trị Website (Ví dụ: http://tên_miền_của_bạn/escadmin)
+ Vào Hệ thống -> Cấu hình chung -> tab Server Tại phần Mail Settings chọn và nhập các thông tin sau: Nếu Sử dụng mail hosting: cấu hình như hình trên Nếu Sử dụng gmail: – Mailer: chọn SMTP – Mail From: Nhập Email gửi – From Name: Tên người gửi – SMTP Authentication: chọn Yes – SMTP Security: SSL – SMTP Port: 465 – SMTP Username: User đăng nhập của Email gửi – SMTP Password: Password đăng nhập của Email gửi – SMTP Host: smtp.gmail.com
1. Cài đặt gói EPEL Repo
Cài đặt kho lưu trữ EPEL để tải dữ liệu ClamAV từ thư viện:
yum install epel-release
2. Download và cài đặt ClamAV
Tiến hành cài đặt các gói ClamAV cần thiết:
yum install -y clamav clamd
3. Khởi động dịch vụ ClamAV
Start dịch vụ và thiết lập tự động khởi động cùng hệ thống:
/etc/init.d/clamd start
chkconfig clamd on
4. Cập nhật cơ sở dữ liệu Virus
Chạy lệnh để tải mẫu virus mới nhất về máy chủ:
freshclam
5. Các lệnh quét virus cơ bản
• Tiến hành quét toàn bộ server:
clamscan -r /
• Quét toàn bộ server và xuất kết quả ra file log:
clamscan -ri / -l /root/scan_av_log.txt
• Quét thư mục cụ thể và tự động xóa file nhiễm độc:
clamscan -ri /home/admin --remove
Giải thích cú pháp:
- -ri: Quét đệ quy (thư mục cha và con), chỉ hiển thị thông báo các file bị nhiễm mã độc.
- /home/admin: Đường dẫn đến thư mục cần quét.
- –remove: Tự động xóa ngay lập tức các file bị phát hiện là mã độc.
Một số Tùy chọn (Options) thông dụng trong ClamAV
--infected hoặc -i : Chỉ in ra màn hình những file bị nghi ngờ hoặc phát hiện nhiễm mã độc.
--recursive hoặc -r : Scan đệ quy toàn bộ thư mục và file bên trong thư mục cha.
--remove=[yes/no] : Xóa trực tiếp các file nhiễm mã độc tìm thấy.
--no-summary : Ẩn nội dung bảng tổng kết sau khi quét xong.
--log=/path/file.log hoặc -l /path/file.log : Ghi lại nhật ký (log) quá trình quét vào file cụ thể.
--move=/path hoặc --mv=/path : Di chuyển tất cả các file bị nghi ngờ nhiễm mã độc đến thư mục cách ly chỉ định.
Check out our shop to see what's available