1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Cài đặt mod_security/mod_security2 trên SuSE Linux Enterprise Server 10 (SLES10) pot

7 427 1

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 7
Dung lượng 119,1 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Kết hợp với các luật được định nghĩa, bạn có thể chặn nhiều lỗ hổng của máy chủ được mở ra do việc viết mã php hay perl không tốt.. Để cài đặt mod_security cần cài đặt một vài module của

Trang 1

Cài đặt mod_security/mod_security2 trên SuSE Linux

Enterprise Server 10 (SLES10)

Module mod_security là một module mạnh mẽ Kết hợp với các luật được định nghĩa, bạn có thể chặn nhiều lỗ hổng của máy chủ được mở ra do việc viết mã php hay perl không tốt

Không may mắn là mod_security không phải là một phần của bản SLES10 Để cài đặt mod_security cần cài đặt một vài module của hãng thứ 3 Bài viết này hướng dẫn cách cài đặt mod_security trên SLES10 Cũng như các gỡ bỏ

module, bằng cách xây dựng từ gói RPM bạn có thể gỡ bỏ một cách dễ dàng Cài đặt Apache2

Đầu tiên bạn cần cài đặt apache2 Rất đơn giản bằng cách sử dụng câu lệnh sau:

$ yast2 -i apache2

Cài đặt các gói yêu cầu

Một vài module cần thiết phải được cài đặt để chuẩn bị cho việc cài đặt

mod_security Hãy cài những gói sau:

$ yast2 -i libxml2-devel pcre-devel apache2-devel curl-devel gcc gcc-c++

Apache2-devel là bắt buộc cho apxs2 curl là tùy chọn

Trang 2

Cài đặt và checkinstall (để đóng gói)

Để theo dõi được các phần mềm được cài đặt và cho phép người dùng có thể

gỡ bỏ và cập nhật phần mềm, checkinstall có thể được xây dựng RPM,

DEBIAN (DEB) và các gói Slackware Thay vì thực thi "make install" chỉ cần chạy "checkinstall" và checkinstall sẽ lấy tất cả các tập tin mà có thể được cài đặt bằng "make install"

Tải checkinstall tại :

http://www.asic-linux.com.mx/~izto/checkinstall/download.php

$ wget

http://www.asic-linux.com.mx/~izto/checkinstall/files/source/checkinstall-1.6.1.tgz

$ make

$ make install

$ checkinstall

$ cp /usr/src/packages/RPMS/i386/checkinstall-1.6.1-1.i386.rpm

$ rpm -ivh checkinstall-1.6.1-1.i386.rpm

Tải về và cài đặt liblua

Ngôn ngữ LUA được sử dụng bởi mod_security để cấu hình Bạn cần compile LUA như là một module chia sẻ (shared module)

Tải LUA tại: http://www.lua.org/ftp/lua-5.1.3.tar.gz

$ wget http://www.lua.org/ftp/lua-5.1.3.tar.gz

Trang 3

$ tar -zxvf lua-5.1.3.tar.gz

$ cd lua-5.1.3

$ make linux

$ checkinstall

[ ]

1 - Summary: [ The LUA programming language ]

2 - Name: [ lua ]

3 - Version: [ 5.1.3 ]

4 - Release: [ 1 ]

5 - License: [ GPL ]

6 - Group: [ Development/Languages/Lua ]

7 - Architecture: [ i386 ]

8 - Source location: [ http://www.lua.org/ftp/lua-5.1.3.tar.gz ]

9 - Alternate source location: [ ]

10 - Requires: [ ]

11 - Provides: [ lua ]

[ ]

$ cp /usr/src/packages/RPMS/i386/lua-5.1.3-1.i386.rpm

$ rpm -ivh /lua-5.1.3-1.i386.rpm

Bây giờ bạn cần build một thư viện chia sẻ (shared library) từ gói nén liblua

$ cd /usr/local/lib

$ gcc -shared -o liblua.5.1.3.so /usr/local/lib/liblua.a

$ ln -s liblua.5.1.3.so liblua.so

Trang 4

Tải về và cài đặt mod_security

Tải mod_security tại : http://www.modsecurity.org/download/direct.html

Tài liệu về cách cài đặt có thể xem tại đây:

http://www.modsecurity.org/documentation/index.html

$ cd modsecurity-apache_2.5.2

$ cd apache2

$ /configure

$ make

$ checkinstall

1 - Summary: [ mod_security application level firewall ]

2 - Name: [ apache2-mod_security ]

3 - Version: [ 2.5.2 ]

4 - Release: [ 1 ]

5 - License: [ GPL ]

6 - Group: [ Productivity/Networking/Web/Servers ]

7 - Architecture: [ i386 ]

8 - Source location: [ http://www.modsecurity.org/download/ ]

9 - Alternate source location: [ ]

10 - Requires: [ apache2 libxml2 ]

11 - Provides: [ mod_security ]

Trang 5

$ cp /usr/src/packages/RPMS/i386/apache2-mod_security-2.5.2-1.i386.rpm / /

$ rpm -ivh / /apache2-mod_security-2.5.2-1.i386.rpm

Cấu hình Apache2 cho mod_security

# /etc/apache2/conf.d/mod_security.conf

LoadFile /usr/lib/libxml2.so

LoadFile /usr/local/lib/liblua.so

LoadModule security2_module /usr/lib/apache2/mod_security2.so

Include modsecurity/*.conf

LoadModule unique_id_module /usr/lib/apache2/mod_unique_id.so

Xả nén và cấu hình Core Rules

Tải core rules tại : http://www.modsecurity.org/download/modsecurity-core-rules_2.5-1.6.0.tar.gz

$ cd /etc/apache2

$ mkdir modsecurity

$ cd modsecurity

$ tar -zxvf /modsecurity-core-rules_2.5-1.6.0.tar.gz

Hiệu chỉnh modsecurity_crs_10_config.conf cho đúng với đích của tập tin cấu hình:

vi modsecurity_crs_10_config.conf

Trang 6

SecAuditLog=

SecDebugLog=

Khởi động lại Apache và thử trang web của bạn

Đầu tiên khởi động lại apache để các cấu hình hiện tại có hiệu lực:

$ rcapache restart

Để thử quá trình cài đặt, viết một đoạn mã PHP đơn giản như sau:

# /srv/www/htdoc/index.php

file $text=$_GET['file'];

echo "Content of File $text";

echo `cat $text`;

?>

Sau đó truy cập tới nó:

http://ip.of.your.server.de/index.php?file=/etc/passwd

Bạn sẽ nhận được lỗi ERROR 501 trên trình duyệt và tập tin SecAuditLog sẽ hiển thị:

[ ]

GET /index.php?file=/etc/passwd HTTP/1.1

[ ]

Trang 7

Message: Access denied with code 501 (phase 2) Pattern match

"(?:\b(?:\.(?:ht(?:access|passwd|group

)|www_?acl)|global\.asa|httpd\.conf|boot\.ini)\b|\/etc\/)" at ARGS:file [file

"/etc/apache2/modsecu

rity/modsecurity_crs_40_generic_attacks.conf"] [line "114"] [id "950005"] [msg "Remote File Access A

ttempt"] [data "/etc/"] [severity "CRITICAL"] [tag

"WEB_ATTACK/FILE_INJECTION"]

Khi truy cập tới máy chủ của bạn bằng địa chỉ IP, một quy tắc của

modsecurity_crs_21_protocol_anomalies.conf sẽ loại bỏ nó Chỉnh sửa tập tin

và tìm "Check that the host header is not an IP address"

Ngày đăng: 14/08/2014, 04:21

TỪ KHÓA LIÊN QUAN

w