Skip to content

GitLab

  • Menu
Projects Groups Snippets
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • R RIE-2017-ProjetTutore-G1
  • Project information
    • Project information
    • Activity
    • Labels
    • Planning hierarchy
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 12
    • Issues 12
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 0
    • Merge requests 0
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Packages & Registries
    • Packages & Registries
    • Container Registry
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • Lionel Ferrafiat
  • RIE-2017-ProjetTutore-G1
  • Wiki
  • page6 3 securisation Apache2

Last edited by Mohamed Saouli Dec 13, 2018
Page history

page6 3 securisation Apache2

Afin de sécuriser notre Apache2 nous avons mis en place un WAF, un Web Application Firewall, est un dispositif logiciel associé à votre serveur Web. Les protections apportés par se dispositif sont :

  • SQL Injection (SQLi)
  • Cross Site Scripting (XSS)
  • Local File Inclusion (LFI)
  • Remote File Inclusion (RFI)
  • Remote Code Execution (RCE)
  • PHP Code Injection
  • HTTP Protocol Violations
  • HTTPoxy
  • Shellshock
  • Session Fixation
  • Scanner Detection
  • Metadata/Error Leakages
  • Project Honey Pot Blacklist
  • GeoIP Country Blocking

Installation des dépendances :

yum install -y libxml libxml-devel

On se place dans "/usr/src" puis on télécharge le package

wget https://github.com/SpiderLabs/ModSecurity/releases/download/v2.9.1/modsecurity-2.9.1.tar.gz

Puis on décompresse l'archive :

tar xfvz modsecurity-2.9.1.tar.gz

On se place dans le répertoire :

cd modsecurity-2.9.1

On configure le soft avec la commande suivante :

./configure Install: make && make install

Vérification que le module est démarré :

sudo httpd -M | grep security

On doit attendre comme réponse :

security2_module (shared)

Pour la suite on édite le fichier "httpd.conf" qui se trouve dans "/etc/httpd/conf/" et on insert la ligne suivante :

LoadModule security2_module lib/apache/mod_security2.so

**Configuration du MODSECURITY **

Allez dans le repertoire suivant :

cd /usr/src

On télécharge les sources :

wget https://github.com/SpiderLabs/owasp-modsecurity-crs/archive/v3.0.0.tar.gz

On décompresse l'archive :

tar xfvz v3.0.0.tar.gz

Création du repertoire modsecurity.d sous "/etc/httpd/conf/" :

mkdir /etc/httpd/conf/modsecurity.d

Allez dans "/usr/src/owasp-modsecurity-crs-3.0.0" :

cd /usr/src/owasp-modsecurity-crs-3.0.0

Déplacer le repertoire "rules" vers :

mv rules/ /etc/httpd/conf/modsecurity.d

Déplacer et renommer le menu de configuration :

mv crs-setup.conf.example /etc/httpd/conf/modsecurity.d/crs-setup.conf

Ouverture de ce fichier afin de voir les regles et ainsi voir les activations possibles. Certaines regles sont décommentées et d'autre non. Pour faire des tests je décommente certaines regles :

  • Anti-Automation / DoS Protection, comme indiqué elle permet de se protèger contre les attaques DoS
  • GeoIP Database cette regle permet de geolocaliser les data adresse Ip client afin de pouvoir bloquer certaines ip en provenance de pays. Il faut mettre à jour continuellement cette base de donnée.
  • Project Honey Pot HTTP Blacklist, nous permet de connaitre les differentes types IP malveillantes
  • HTTP Policy Settings, cette section nous permet de définir les polices pour le protocole HTTP. Au sein de cette section nous avons plusieurs regle tels que :
    • Forbidden file extensions qui protège contre l'exposition involontaire de fichiers de développement / configuration
    • Allowed HTTP versions On crée le fichier "mod_security.conf" dans "/etc/httpd/conf.d" et on ajoute les lignes suivantes :

<IfModule mod_security2.c>

SecRuleEngine On
SecRequestBodyAccess On
SecResponseBodyAccess On 
SecResponseBodyMimeType text/plain text/html text/xml application/octet-stream 
SecDataDir /tmp

</IfModule>

On redémarre le service httpd :

service httpd restart

On ajoute cette regle dans "/etc/httpd/conf/httpd.conf" :

<IfModule security2_module>

    Include /etc/httpd/conf/modsecurity.d/crs-setup.conf
    Include /etc/httpd/conf/modsecurity.d/rules/*.conf

</IfModule>

Suite à cette installation on redémarre le serveur Apache2 :

service httpd restart

Clone repository
  • Aide pour Soutenance
  • Home
  • page1 serveur web setup
  • page2 1 serveur message php
  • page2 serveur message setup
  • page3 1 blockchain centos
  • page3 blockchain setup
  • page4 serveur vm setup
  • page5 docs techniques divers
  • page6 1 securisation tls ssl
  • page6 2 Securisation En tête Serveur (Server Header)
  • page6 3 securisation Apache2
  • page6 serveur site web
  • page7 utilisation de git
  • page8 realisation des tests