Một số trường hợp như mã nguồn của bạn bị chèn các link phishing hoặc bị chèn các đoạn mã vào trong mã nguồn mà không thể quét và kiểm tra bằng công cụ, bị hack, dính shell độc, virus, độc hại
Kiểm tra file mới upload lên
File bị upload hoặc chỉnh sửa gần đây để tìm kiếm các file nghi ngờ sau đó kiểm tra cụ thểĐể tìm kiếm các file mới được tạo ra trên server bạn chạy lệnh sau:
find /home -ctime -10
- ctime : tìm các file mới được tạo ra
- 10: tìm các file được tạo ra trong vòng 10 ngày gần đây
Kiểm tra truy vất bất thường
Để kiểm tra xem server Linux của bạn có bị truy cập nhiều hoặc bị tấn công từ những IP nào và bao nhiêu request, bạn có thể thực hiện các bước sau:
Sử dụng lệnh netstat: Lệnh này giúp bạn kiểm tra các kết nối mạng hiện đang hoạt động. Ví dụ:
netstat -an | grep ESTABLISHED
Lệnh này sẽ hiển thị danh sách các kết nối đang hoạt động, từ đó bạn có thể xác định các IP kết nối đến server.
Kiểm tra lượt đăng nhập gần nhất
Sử dụng lệnh last: Lệnh này giúp bạn xem các lần đăng nhập gần đây trên server:
lastKiểm tra xem server có bị DDOS hay không:
netstat -anp |grep 'tcp\|udp' | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -nCâu lệnh trên sẽ trả về hàng loạt IP chiếm nhiều connection nhất trên server. Cần lưu ý rằng DDOS có thể xuất phát từ một lượng nhỏ connection. Do đó việc kết quả trả về connection thấp bạn vẫn có thể trong tình trạng under attack.
Một phương pháp khác:
netstat -n | grep :80 |wc -l
netstat -n | grep :80 | grep SYN |wc -l
Dòng lệnh thứ nhất trả về số lượng active connection (connection đang hoạt động). Rất nhiều kiểu tấn công DDOS bằng cách mở một kết nối connection lên server rồi không làm gì cả khiến cho server chờ đợi cho đến khi timeout. Nến nếu dòng lệnh thứ nhất trả về trên 500 thì server của bạn rất nhiều khả năng bị DDOS.
Dòng lệnh thứ 2 trả về kết quả trên 100 thì rất nhiều khả năng server bạn trong tình trang syn attack DDOS.
Cách 1:
Kiểm tra bằng lệnh: route -n |grep địa-chỉ-ip
Cách 2: sử dụng iptables
Block 1 địa chỉ IP
Dòng lệnh thứ 2 trả về kết quả trên 100 thì rất nhiều khả năng server bạn trong tình trang syn attack DDOS.
– Đếm lượng connection vào Port 80:
netstat -n | grep :80 |wc -l
– Kiểm tra số lượng connection đang ở trạng thái SYN_RECV:
netstat -n | grep :80 | grep SYN_RECV|wc -l
– Hiển thị tất cả các IP đang kết nối và số lượng kết nối từ mỗi IP:
netstat -an|grep :80 |awk '{print $5}'|cut -d":" -f1|sort|uniq -c|sort -rn
– Nếu muốn kiểm tra IP nào mở nhiều SYN thì thêm vào:
netstat -an|grep :80|grep SYN |awk '{print $5}'|cut -d":" -f1|sort|uniq -c|sort -rn
– Đối với server có nhiều IP, để kiểm tra IP nào đang bị tấn công:
netstat -plan | grep :80 | awk '{print $4}'| cut -d: -f1 |sort |uniq -c
– Hiển thị số lượng kết nối mỗi loại
netstat -an | grep :80 | awk '{print $6}' | sort | uniq -c
61 ESTABLISHED
13 FIN_WAIT1
17 FIN_WAIT2
1 LISTEN
25 SYN_RECV
298 TIME_WAIT
– Hiển thị tất cả các IP đang kết nối và số lượng kết nối từ mỗi IP
watch "netstat -an | grep ':80' | awk '{print \$5}' | sed s/'::ffff:'// | cut -d\":\" -f1 | sort | uniq -c"
watch "netstat -an | grep :80 | awk '{print \$6}' | sort | uniq -c"
Một số phương pháp khắc phục:
Cách khắc phục nhanh nhất là block các IP chiếm nhiều connection nhất:Cách 1:
route add địa-chỉ-ip rejectvd: route add 192.168.0.168 reject
Kiểm tra bằng lệnh: route -n |grep địa-chỉ-ip
Cách 2: sử dụng iptables
Block 1 địa chỉ IP
iptables -A INPUT -s IP-ADDRESS -j DROPBlock 1 địa chỉ IP theo Port
iptables -A INPUT -s 65.55.44.100 -p tcp --destination-port 25 -j DROPSau đó lưu lại:
service iptables saveKhởi động lại nếu muốn áp dụng ngay:
service iptables restart
Sau đó xóa hết tất cả connection hiện hành và khởi động lại service httpd
Xoá bỏ block IP?
killall -KILL httpdNếu như hoàn tất các bước nêu trên mà server vẫn chậm thì có nghĩa là vấn đề bạn gặp phải nằm vào trường hợp 2,3,4... chỉ việc nâng cấp server để đáp ứng nhu cầu truy cập của người sử dụng.
service httpd restart
Xoá bỏ block IP?
# iptables -D INPUT -s xx.xxx.xx.xx -j DROP
# iptables -D INPUT -s 65.55.44.100 -j DROP
# service iptables save
Tìm địa chỉ IP đã block?
# /sbin/iptables -L INPUT -v -n | grep 1.2.3.4
Nhận xét
Đăng nhận xét