Một vài bước để tăng cường bảo mật cho máy chủ Apache

Thảo luận trong 'Infrastructure security' bắt đầu bởi DDos, 13/06/21, 10:06 AM.

  1. DDos

    DDos Administrators Thành viên BQT

    Tham gia: 22/10/13, 08:10 PM
    Bài viết: 2,037
    Đã được thích: 488
    Điểm thành tích:
    83
    Apache là một máy chủ web mã nguồn mở phổ biến nhất dành cho các máy chủ Linux hiện đại. Nó cung cấp cấu hình linh hoạt cho phép sử dụng với nhiều mục đích khác nhau, từ phục vụ các trang web HTML cơ bản đến PHP phức tạp.

    20181123-shutterstock_619615334.jpg

    Với những người chủ trang web, việc bảo vệ máy chủ web khỏi các cuộc tấn công mạng là rất quan trọng, vì nó liên quan tới hoạt động bình thường của trang web cũng như danh tiếng của trang. Hầu hết, quản trị viên chỉ dừng lại ở việc cài đặt và làm sao cho máy chủ web chạy bình thường, mà quên đi cách cấu hình nâng cao để tăng cường tính bảo mật của máy chủ web. Trong bài viết này mình sẽ giới thiệu một vài cách để nâng cao tính bảo mật của máy chủ web.

    1. Ẩn thông tin phiên bản máy chủ Apache.
      Với thông tin về phiên bản máy chủ Apache, kẻ tấn công sẽ có được cái nhìn đầu tiên về các lỗ hổng tồn tại trong phiên bản đó.

      Mã:
      echo "ServerSignature Off" >> /etc/apache2/apache2.conf
      echo "ServerTokens Prod" >> /etc/apache2/apache2.conf
    2. Vô hiệu hóa ETags.
      ETags là một thành phần của giao thức HTTP cung cấp tính năng liên quan đến bộ nhớ đệm. Tuy nhiên, tiêu đề Etags lại chứa các thông tin nhạy cảm về máy chủ web như số inode của các tệp được yêu cầu.

      Mã:
      echo "FileETag None" >> /etc/apache2/apache2.conf
    3. Tắt duyệt thư mục
      Khi tính năng này được cho phép, tất các các tệp tin trên máy chủ web có thể được đọc bởi tin tặc.

      Mã:
      a2dismod -f autoindex
    4. Bảo vệ thư mục root cũng như thư mục máy chủ web
      Các tập tin này chứa các thông tin quan trọng về máy chủ web và hệ điều hành chạy máy chủ web, có thể dẫn đến việc lộ lọt thông tin.

      Mã:
      echo "<Directory />" >> /etc/apache2/conf-available/security.conf
      echo "Options -Indexes" >> /etc/apache2/conf-available/security.conf
      echo "AllowOverride None" >> /etc/apache2/conf-available/security.conf
      echo "Order Deny,Allow" >> /etc/apache2/conf-available/security.conf
      echo "Deny from all" >> /etc/apache2/conf-available/security.conf
      echo "</Directory>" >> /etc/apache2/conf-available/security.conf
      
      echo "<Directory /var/www/html>" >> /etc/apache2/conf-available/security.conf
      echo "Options -Indexes -Includes" >> /etc/apache2/conf-available/security.conf
      echo "AllowOverride None" >> /etc/apache2/conf-available/security.conf
      echo "Order Allow,Deny" >> /etc/apache2/conf-available/security.conf
      echo "Allow from All" >> /etc/apache2/conf-available/security.conf
      echo "</Directory>" >> /etc/apache2/conf-available/security.conf
      
    5. Sử dụng mã hóa mạnh và giao thức https làm mặc định cho máy chủ web
      Với việc sử dụng giao thức https và các thuật toán mã hóa mạnh, sẽ ngăn ngừa các cuộc tấn công MITM.


      Mã:
      sed -i "s/SSLProtocol all -SSLv3/SSLProtocol –ALL +TLSv1 +TLSv1.1 +TLSv1.2 +TLSv1.3/" /etc/apache2/mods-available/ssl.conf
      
      sed -i "s/SSLCipherSuite HIGH:\!aNULL/SSLCipherSuite HIGH:\!MEDIUM:\!aNULL:\!MD5:\!RC4/" /etc/apache2/mods-available/ssl.conf
    6. Bật HttpOnly và Secure flags
      HttpOnly và Secure flasg giúp giảm thiểu rủi ro tập lệnh phía máy khách truy cập vào cookie.

      Mã:
      echo "Header edit Set-Cookie ^(.*)\$ \$1;HttpOnly;Secure" >> /etc/apache2/conf-available/security.conf
    7. Ngăn ngừa tấn công Clickjacking

      Mã:
      echo "Header always append X-Frame-Options SAMEORIGIN" >> /etc/apache2/conf-available/security.conf
    8. Ngăn ngừa tấn công XSS

      Mã:
      echo "Header set X-XSS-Protection \"1; mode=block\"" >> /etc/apache2/conf-available/security.conf
      echo "Header set Content-Security-Policy \"default-src 'self';\"" >> /etc/apache2/conf-available/security.conf
      
    9. Bắt buộc các kết nối tới máy chủ phải là bảo mật

      Mã:
      echo "Header always set Strict-Transport-Security \"max-age=31536000; includeSubDomains\"" >> /etc/apache2/conf-available/security.conf
    10. Ngăn ngừa MIME sniffing

      Mã:
      echo "Header set X-Content-Type-Options: \"nosniff\"" >> /etc/apache2/conf-available/security.conf
    11. Ngăn chặn tấn công từ chối dịch vụ
      Mô hình mặc định trong đó Apache xử lý các yêu cầu (được gọi là chế độ prefork), là đối tượng của một cuộc tấn công được gọi là cuộc tấn công Slowloris. Tấn công Slowloris là một dạng tấn công DoS trong đó máy chủ Apache buộc phải đợi các yêu cầu từ các máy khách độc hại mất nhiều thời gian để gửi lưu lượng, do đó buộc các yêu cầu hợp pháp hết thời gian chờ hoặc bị bỏ qua hoàn toàn.

      Mã:
      sed -i "s/Timeout 300/Timeout 60/" /etc/apache2/apache2.conf
     
    Mời các bạn tham gia Group WhiteHat để thảo luận và cập nhật tin tức an ninh mạng hàng ngày.
    Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
  1. DDos
  2. WhiteHat News #ID:3333
  3. Ginny Hà
  4. DDos
  5. Mơ Hồ
Tags: