add oldiers articles about security
parent
a77cbdb21e
commit
d58c6ca2c0
23
config.toml
23
config.toml
|
@ -319,13 +319,6 @@ title = "Stéphane HUC :: IT Log"
|
|||
# pre = ""
|
||||
# url = "/sec/firewall"
|
||||
# weight = 41
|
||||
[[languages.fr.menu.main]]
|
||||
identifier = "chkrootkit"
|
||||
name = "Chkrootkit"
|
||||
parent = "sec"
|
||||
pre = ""
|
||||
url = "/sec/chkrootkit"
|
||||
weight = 41
|
||||
[[languages.fr.menu.main]]
|
||||
identifier = "gpg"
|
||||
name = "GPG"
|
||||
|
@ -347,13 +340,13 @@ title = "Stéphane HUC :: IT Log"
|
|||
pre = ""
|
||||
url = "/sec/SSH"
|
||||
weight = 44
|
||||
#[[languages.fr.menu.main]]
|
||||
# identifier = "secsys"
|
||||
# name = "Sécurité :: Système"
|
||||
# parent = "sec"
|
||||
# pre = ""
|
||||
# url = "/sec/sys"
|
||||
# weight = 44
|
||||
[[languages.fr.menu.main]]
|
||||
identifier = "scan"
|
||||
name = "Audit"
|
||||
parent = "sec"
|
||||
pre = ""
|
||||
url = "/sec/scan"
|
||||
weight = 45
|
||||
[[languages.fr.menu.main]]
|
||||
identifier = "sys"
|
||||
name = "Système"
|
||||
|
@ -396,7 +389,7 @@ title = "Stéphane HUC :: IT Log"
|
|||
url = "/sys/OpenWRT"
|
||||
weight = 55
|
||||
[[languages.fr.menu.main]]
|
||||
identifier = "soft"
|
||||
identifier = "soft4sys"
|
||||
name = "Logiciels"
|
||||
parent = "sys"
|
||||
pre = ""
|
||||
|
|
|
@ -1,10 +0,0 @@
|
|||
---
|
||||
title: "Section Sécurité : chkrootkit"
|
||||
date: 2017-07-23T18:41:14+01:00
|
||||
description: "Articles à-propos de l'outil chkrootkit"
|
||||
draft: false
|
||||
noindex: true
|
||||
tags: ['Sécurité']
|
||||
---
|
||||
|
||||
Différents articles autour d'analyse de sécurité : chkrootkit…
|
|
@ -0,0 +1,10 @@
|
|||
---
|
||||
title: "Section Sécurité : Scan"
|
||||
date: 2017-07-23T18:41:14+01:00
|
||||
description: "Articles à-propos d'outils d'analyse système, tels que chkrootkit, lynis, rkhunter…"
|
||||
draft: false
|
||||
noindex: true
|
||||
tags: ['Sécurité','scan','Système']
|
||||
---
|
||||
|
||||
Différents articles autour d'analyse de sécurité : chkrootkit, lynis, rkhunter…
|
|
@ -1,8 +1,8 @@
|
|||
---
|
||||
date: 2017-07-23T17:23:16+02:00
|
||||
description: "Que faire en cas de message de chkrootkit : Possible Linux/Ebury - Operation Windigo installetd ?"
|
||||
description: "Que faire en cas de message de chkrootkit : Possible Linux/Ebury - Operation Windigo installed ?"
|
||||
draft: false
|
||||
tags: ['chkrootkit','Linux','Ebury','Windigo','SSH']
|
||||
tags: ['chkrootkit','Linux','Ebury','Windigo','SSH','detection','intrusion']
|
||||
title: "Chkrootkit : Possible Linux Ebory Operation Windigo Installed"
|
||||
---
|
||||
|
|
@ -2,7 +2,7 @@
|
|||
date: 2017-07-24T21:11:35+02:00
|
||||
description: "Que faire en cas de message de chkrootkit : Suckit rootkit... Warning: /sbin/init INFECTED ?"
|
||||
draft: false
|
||||
tags: ['chkrootkit','suckit','sbin']
|
||||
tags: ['chkrootkit','suckit','init','detection','intrusion']
|
||||
title: "Chkrootkit : Suckit Rootkit Sbin Init Infected"
|
||||
---
|
||||
|
|
@ -0,0 +1,42 @@
|
|||
---
|
||||
date: 2017-07-23T17:00:00+02:00
|
||||
description: "Comment résoudre la suggestion de l'outil de détection Lynis : Default umask like 027 [AUTH-9328]"
|
||||
draft: false
|
||||
tags: ['Lynis','auth','umask','detection']
|
||||
title: "Lynis : Default umask like 027 [AUTH-9328]"
|
||||
---
|
||||
|
||||
## Description
|
||||
|
||||
Mémo à-propos de la suggestion de Lynis : <q>Default umask in /etc/init.d/rc could be more strict like 027 [ [AUTH-9328][1] ]</q>
|
||||
|
||||
En effet le **[Guide de Recommandations d'un Système GNU/Linux][2]** de l'ANSSI, au chapitre 6.1.5 Umask, nous rappelle à juste titre que :
|
||||
|
||||
* la valeur `0022` est considérée très permissive,
|
||||
* que le **`umask` système** régit par le fichier `/etc/init.d/rc` doit
|
||||
être positionné sur `0027`, ce qui fige les droits permissifs, tels
|
||||
que lecture autorisée pour l'utilisateur et son groupe, et modifiable
|
||||
uniquement par son créateur.
|
||||
|
||||
Il faut modérer le fait que pour toutes les distributions systemd, tels
|
||||
que sont maintenant la plupart des Debian, et Ubuntu, il faut modifier
|
||||
le masque système dans le propre fichier de configuration du service à
|
||||
configurer.
|
||||
|
||||
`# sed -i -e "s#umask 022#umask 027#" /etc/init.d/rc`
|
||||
|
||||
Tant qu'à faire, profitons-en pour modifier la valeur du **`umask` utilisateurs**
|
||||
qui doit être paramétré à `077` !
|
||||
|
||||
* Pour les distributions systemd, c'est le fichier `/etc/profile`.
|
||||
* Pour les distributions non systemd, c'est le fichier `/etc/login.defs`.
|
||||
|
||||
{{< note warning >}}**ATTENTION : Il est impératif de vérifier à chaque
|
||||
mise-à-jour de version de distribution, car ces droits seront réinitialisés
|
||||
par défaut !**
|
||||
{{</note>}}
|
||||
|
||||
---
|
||||
|
||||
[1]: https://cisofy.com/controls/AUTH-9328/
|
||||
[2]: http://www.ssi.gouv.fr/uploads/2015/10/NP_Linux_Configuration.pdf
|
|
@ -0,0 +1,38 @@
|
|||
---
|
||||
date: 2017-07-23T17:05:44+02:00
|
||||
description: "Comment résoudre la suggestion de l'outil de détection Lynis : Purge old/removed packages [PKGS-7346]"
|
||||
draft: false
|
||||
tags: ['Lynis','packages','detection']
|
||||
title: "Lynis : Purge old/removed packages [PKGS-7346]"
|
||||
---
|
||||
|
||||
## Description
|
||||
|
||||
Un petit mémo concernant la complainte de Lynis : <br>
|
||||
<q>Purge old/removed packages (x found) with aptitude purge or dpkg --purge command. This will cleanup old configuration files, cron jobs and startup scripts. [ [PKGS-7346][1] ]</q>
|
||||
|
||||
C'est sa manière de dire qu'il reste des traces de configurations de paquets/binaires qui ont été désinstallés.
|
||||
|
||||
## Vérification
|
||||
|
||||
Sur Debian, Ubuntu, et assimilées - *cela vous permet de vous assurer des paquets qui ont été supprimés, dont il reste les fichiers de configuration* - :
|
||||
|
||||
`$ dpkg --get-selections | awk '/deinstall/ { print $1 }'`
|
||||
|
||||
## Purge
|
||||
|
||||
Sur Debian, Ubuntu, et consorts :
|
||||
|
||||
⇒ avec **apt** : <br>
|
||||
`# apt purge $(dpkg --get-selections | awk '/deinstall/ { print $1 }')`
|
||||
|
||||
⇒ avec **dpkg** : <br>
|
||||
`# dpkg --purge $(dpkg --get-selections | awk '/deinstall/ { print $1 }')`
|
||||
|
||||
|
||||
|
||||
---
|
||||
|
||||
[1]: https://cisofy.com/controls/PKGS-7346/
|
||||
|
||||
|
|
@ -0,0 +1,54 @@
|
|||
---
|
||||
date: 2017-07-24T17:21:10+02:00
|
||||
description: "Comment résoudre l'avis de détection par rkhunter : Warning: File has the immutable-bit set"
|
||||
draft: false
|
||||
tags: ['rkhunter','detection','immutable']
|
||||
title: "Rkhunter : Warning: File has the immutable-bit set"
|
||||
---
|
||||
|
||||
## Description
|
||||
|
||||
Rkhunter émet cet avis : <br>
|
||||
<q>Warning: File '/sbin/xyz' has the immutable-bit set.</q>
|
||||
<br> et, il le fait sur plusieurs fichiers !
|
||||
|
||||
Ahahhh, petit malin, je vous y prend, vous avez utilisez l'{{< inside "sec:linux:chattr" "outil chattr avec l'option `-I`" >}},
|
||||
n'est-ce pas ?! <br>
|
||||
Tant mieux… sinon, vous avez peut-être un petit problème !
|
||||
|
||||
## Configuration
|
||||
|
||||
Le fichier de configuration `/etc/rkhunter.conf` renferme une option
|
||||
à-priori utile : `IMMUTABLE_SET=0` !
|
||||
|
||||
Sauf qu'une fois activée, lors d'une vérification, ce sont les quelques binaires
|
||||
qui ne peuvent avoir l'option `immutable`, qui vont recevoir ladite complainte.
|
||||
|
||||
<q>C'est un peu l'histoire du serpent qui se mort la queue</q>, n'est-ce pas !
|
||||
|
||||
Puisque vous utilisez l'option `I` du binaire `chattr`, modifiez le fichier
|
||||
`crontab` relatif à rkhunter…
|
||||
|
||||
Le fichier `/etc/default/rkhunter` nous informe de ceci : <br>
|
||||
`$ cat /etc/default/rkhunter` <br>
|
||||
`# Defaults for rkhunter automatic tasks` <br>
|
||||
`# sourced by /etc/cron.*/rkhunter and /etc/apt/apt.conf.d/90rkhunter` <br>
|
||||
`#` <br>
|
||||
`# This is a POSIX shell fragment` <br>
|
||||
`#` <br>
|
||||
`(…)` <br>
|
||||
|
||||
Nous savons que lors de l'installation, il se crée un fichier de cron,
|
||||
dans `/etc/crond.daily/rkhunter` - *vérifiez votre cas* - ouvrons-le pour
|
||||
le modifier ainsi :
|
||||
|
||||
{{< file "sec-scan-rkhunter-immutable-bit-set-cron-daily" sh "/etc/crond.daily/rkhunter" >}}
|
||||
|
||||
Résultat, lors de la future vérification planifiée de l'outil rkhunter,
|
||||
il exécutera votre script lié à l'usage de chattr… en désactivant d'abord,
|
||||
l'option `immutable`, puis fera son boulot, et pour finir réactivera l'option.
|
||||
|
||||
Si c'est vous qui l'exécutez, pensez d'abord à désactiver… puis à réactiver votre protection !
|
||||
|
||||
---
|
||||
|
|
@ -0,0 +1,29 @@
|
|||
---
|
||||
date: 2017-07-27T10:58:31+02:00
|
||||
description: "Comment résoudre l'avis de détection par rkhunter : Warning: Hidden directory found"
|
||||
draft: false
|
||||
tags: ['rkhunter','detection','hidden']
|
||||
title: "Rkhunter : Warning: Hidden directory found"
|
||||
---
|
||||
|
||||
## Description
|
||||
|
||||
Rkhunter émet cet avis : <br>
|
||||
<q>Warning: Hidden directory found: /dev/.static</q>, ou <br>
|
||||
<q>Warning: Hidden directory found: /dev/.udev</q>
|
||||
|
||||
Si votre installation système est toute fraîche, n'ayez pas peur, vous êtes
|
||||
"tombé" sur un des fameux faux positif de ce binaire !
|
||||
|
||||
## Configuration
|
||||
|
||||
Modifiez donc les variables `ALLOWHIDDENFILE` correspondante, dans le
|
||||
fichier `/etc/rkhunter.conf` !
|
||||
|
||||
`ALLOWHIDDENFILE="/dev/.static"`
|
||||
|
||||
Recharger la base de donnée, grâce à l'option `--propupd`, et relancez le test.
|
||||
|
||||
Sinon, si ce n'est pas le cas, malheureusement… il vous faudra envisager le pire !
|
||||
|
||||
---
|
|
@ -0,0 +1,27 @@
|
|||
---
|
||||
date: 2017-07-27T10:48:31+02:00
|
||||
description: "Comment résoudre l'avis de détection par rkhunter : Warning: Hidden file found"
|
||||
draft: false
|
||||
tags: ['rkhunter','detection','hidden']
|
||||
title: "Rkhunter : Warning: Hidden file found"
|
||||
---
|
||||
|
||||
## Description
|
||||
|
||||
Rkhunter émet cet avis : <br>
|
||||
<quote>Warning: Hidden file found: /dev/.initramfs: symbolic link to /run/initramfs'</quote> !
|
||||
|
||||
Si votre installation système est toute fraîche, n'ayez pas peur, vous êtes
|
||||
"tombé" sur un des fameux faux positif de ce binaire !
|
||||
|
||||
## Configuration
|
||||
|
||||
Modifions le fichier `/etc/rkhunter.conf`, pour ajouter : <br>
|
||||
`ALLOWHIDDENFILE="/dev/.initramfs"`
|
||||
|
||||
Recharger la base de donnée, grâce à l'option `--propupd`, et relancez le test.
|
||||
|
||||
Sinon, si ce n'est pas le cas, malheureusement… il vous faudra envisager le pire !
|
||||
|
||||
---
|
||||
|
|
@ -0,0 +1,40 @@
|
|||
---
|
||||
date: 2017-07-27T13:17:42+02:00
|
||||
description: "Comment résoudre l'avis de détection par rkhunter : Warning: Suspicious file types found in /dev"
|
||||
draft: false
|
||||
tags: ['rkhunter','detection','dev']
|
||||
title: "Rkhunter : Warning: Suspicious file types found in /dev"
|
||||
---
|
||||
|
||||
## Description
|
||||
|
||||
Rkhunter émet cet avis : <br>
|
||||
<q>Warning: Suspicious file types found in /dev: /dev/.udev/rules.d/root.rules: ASCII text</q>
|
||||
|
||||
**Normalement, en effet aucun fichier text ne devrait se trouver dans le
|
||||
répertoire des fichiers périphériques, nommé `dev` !**
|
||||
|
||||
Mais si dans votre cas, votre installation système est fraîche, toute neuve,
|
||||
pas de panique… en effet, depuis assez récemment, quelques distributions,
|
||||
telle que Ubuntu, le font !
|
||||
|
||||
## Analyse
|
||||
|
||||
Si le contenu du fichier en question est très similaire à ceci :
|
||||
|
||||
`SUBSYSTEM=="block", ENV{MAJOR}=="252", ENV{MINOR}=="0", SYMLINK+="root"`
|
||||
|
||||
Cela semble normal ! <br>
|
||||
Et, donc être un fameux faux positif de rkhunter !
|
||||
|
||||
⇒ modifions le fichier `/etc/rkhunter.conf`, pour ajouter la ligne suivante,
|
||||
dans la bonne section : <br>
|
||||
`ALLOWDEVFILE="/dev/.udev/rules.d/root.rules"`
|
||||
|
||||
Puis recharger la base de données, avec l'option `--propupd` de rkhunter,
|
||||
et lancez un nouveau test !
|
||||
|
||||
**Si malheureusement** ce n'est pas le cas… une petite **réinstallation système** ?!
|
||||
|
||||
---
|
||||
|
|
@ -0,0 +1,79 @@
|
|||
---
|
||||
date: 2017-07-24T20:42:46+02:00
|
||||
description: "Comment résoudre l'avis de détection par rkhunter : Warning: /usr/bin/unhide.rb"
|
||||
draft: false
|
||||
tags: ['rkhunter','detection','unhide.rb']
|
||||
title: "Rkhunter : Warning: /usr/bin/unhide.rb"
|
||||
---
|
||||
|
||||
## Description
|
||||
|
||||
**rkhunter** peut parfois poser problème avec ce message d'alerte suivant : <br>
|
||||
<q>Warning: The command '/usr/bin/unhide.rb' has been replaced by a script: /usr/bin/unhide.rb: Ruby script, ASCII text</q>
|
||||
|
||||
## Analyse
|
||||
|
||||
⇒ La première chose à s'assurer que le binaire en question n'a pas été trafiqué,
|
||||
pour cela, utilisons le binaire **debsums**, tel que : <br>
|
||||
*Bien-sûr, si vous ne l'avez pas installé, faites-le… mais c'est dommage.*
|
||||
|
||||
`# debsums unhide.rb` <br>
|
||||
`/usr/bin/unhide.rb OK` <br>
|
||||
`/usr/share/doc/unhide.rb/changelog.Debian.gz OK` <br>
|
||||
`/usr/share/doc/unhide.rb/copyright OK` <br>
|
||||
`/usr/share/lintian/overrides/unhide.rb OK` <br>
|
||||
`/usr/share/man/man8/unhide.rb.8.gz OK` <br>
|
||||
|
||||
⇒ Maintenant, par acquis de conscience, faites ceci :
|
||||
|
||||
`$ cp /usr/bin/unhide.rb $HOME` <br>
|
||||
`# apt purge unhide.rb` <br>
|
||||
`# apt install unhide.rb` <br>
|
||||
`$ diff /usr/sbin/unhide.rb ~/unhide.rb` <br>
|
||||
|
||||
Si **diff** ne retourne aucune information, c'est que les deux fichiers
|
||||
en question sont identiques ! <br>
|
||||
*(à moins d'avoir eu la malchance d'avoir eu le binaire **diff** lui même modifié…)*
|
||||
|
||||
Si tout semble 'OK', c'est que l'on a faire face au fameux faux positif
|
||||
de rkhunter concernant ce binaire ! <br>
|
||||
*ce qui devrait être le cas dans une installation fraîchement exécutée !*
|
||||
|
||||
⇒ Contrôlons les sommes de contrôle différemment :
|
||||
|
||||
`$ md5sum /usr/bin/unhide.rb` <br>
|
||||
`b1642389370e283c580de371b61ec3cb /usr/bin/unhide.rb` <br>
|
||||
`$ grep "usr/bin/unhide.rb" /var/lib/dpkg/info/unhide.rb.md5sums` <br>
|
||||
`b1642389370e283c580de371b61ec3cb usr/bin/unhide.rb` <br>
|
||||
|
||||
---
|
||||
|
||||
⇒ L'autre manière est de :
|
||||
|
||||
* télécharger le binaire **unhide.rb**, depuis le dépôt officiel,
|
||||
* le décompresser et
|
||||
* comparer les sommes avec `sha256sum`, voire `sha512sum` ! - **c'est même préférable**
|
||||
|
||||
Si les sommes sont identiques, c'est tout bon !
|
||||
|
||||
Pensez à supprimer le fichier `~/unhide.rb` que vous avez créé lors de la
|
||||
copie, précédemment !
|
||||
|
||||
## Configuration
|
||||
|
||||
Puisque tout semble bon, modifions le fichier `/etc/rkhunter.conf`, pour
|
||||
modifier cette variable : `PKGMGR=DPKG`
|
||||
|
||||
Recharger la base de donnée de rkhunter, avec l'option `--propupd`, et
|
||||
lancez à nouveau le test.
|
||||
|
||||
Normalement, l'utilitaire `unhide.rb` devrait correctement être pris en charge…
|
||||
|
||||
Si jamais, ce n'était pas le cas :
|
||||
* vous pouvez décommenter la ligne suivante du fichier rkhunter.conf : <br>
|
||||
`#SCRIPTWHITELIST=/usr/bin/unhide.rb` - mais gardez à l'esprit que **ce n'est pas préférable/recommandable**.
|
||||
|
||||
Si malgré tout, cela n'est pas bon, envisager sérieusement une réinstallation
|
||||
de votre Linux !!!
|
||||
|
||||
---
|
|
@ -0,0 +1,54 @@
|
|||
---
|
||||
date: 2017-07-27T13:10:37+02:00
|
||||
description: "Installation et configuration de l'outil de détection des rootkits rkhunter"
|
||||
draft: false
|
||||
tags: ['rkhunter','detection']
|
||||
title: "Rkhunter"
|
||||
---
|
||||
|
||||
## Description
|
||||
|
||||
* rkhunter: http://rkhunter.sourceforge.net
|
||||
|
||||
## Installation
|
||||
|
||||
Sur une Debian, \*Buntu *(et assimilée)*, avec des droits administrateurs : <br>
|
||||
`# apt install rkhunter`
|
||||
|
||||
## Configuration
|
||||
|
||||
### /etc/rkhunter.conf
|
||||
|
||||
Très classiquement, il faut **éditer le fichier** `/etc/rkhunter.conf`,
|
||||
toujours **avec les droits administrateurs**, pour changer quelques informations.
|
||||
|
||||
* Sur Debian : `MAIL-ON-WARNING=yourmail@yourdomain.com`
|
||||
* Sur Ubuntu : `MAIL-ON-WARNING="yourmail@yourdomain.com"`
|
||||
* Sur Ubuntu, pour une gestion liée à gestionnaire de paquets : `PKGMGR=DPKG`
|
||||
|
||||
### /etc/default/rkhunter
|
||||
|
||||
L'autre fichier à éditer est le fichier `/etc/default/rkhunter` :
|
||||
|
||||
`CRON_DAILY_RUN="true"`, et <br>
|
||||
`REPORT_EMAIL="yourmail@yourdomain.net"`
|
||||
|
||||
## Utilisation
|
||||
|
||||
Ceci étant fait, voici les différentes possibilités de l'utiliser :
|
||||
|
||||
* **Pour vérifier**, avec l'option `-c`, `--check` ou `--checkall` - *ces
|
||||
deux dernières options sont dépendantes de la version de rkhunter !*
|
||||
* **Pour mettre-à-jour rkhunter**, utilisez l'option `--update`.
|
||||
* **Pour mettre-à-jour la base de donnée**, après un changement dans la
|
||||
configuration du fichier `/etc/rkhunter.conf`, utilisez l'option `--propupd`.
|
||||
|
||||
## Documentation
|
||||
|
||||
### Manpage
|
||||
|
||||
* Pour en savoir plus, un coup de `man rkhunter` dans votre terminal console,
|
||||
vous en apprendra beaucoup plus…
|
||||
|
||||
---
|
||||
|
|
@ -0,0 +1,47 @@
|
|||
#!/bin/sh
|
||||
|
||||
RKHUNTER=/usr/bin/rkhunter
|
||||
|
||||
test -x $RKHUNTER || exit 0
|
||||
|
||||
#add by me
|
||||
/repertoire/chattr_sys false
|
||||
|
||||
# source our config
|
||||
. /etc/default/rkhunter
|
||||
|
||||
if [ -z "$NICE" ]; then
|
||||
NICE=0
|
||||
fi
|
||||
|
||||
if [ -z "$RUN_CHECK_ON_BATTERY" ]; then
|
||||
RUN_CHECK_ON_BATTERY="false"
|
||||
fi
|
||||
|
||||
# Do not run daily check if running on battery except if explicitely allowed
|
||||
if [ -x /usr/bin/on_ac_power >/dev/null 2>&1 ]; then
|
||||
on_ac_power >/dev/null 2>&1
|
||||
[ $? -eq 1 -a "$RUN_CHECK_ON_BATTERY" != "true" ] && exit 0
|
||||
fi
|
||||
|
||||
case "$CRON_DAILY_RUN" in
|
||||
[YyTt]*)
|
||||
OUTFILE=`mktemp` || exit 1
|
||||
/usr/bin/nice -n $NICE $RKHUNTER --cronjob --report-warnings-only --appendlog > $OUTFILE
|
||||
if [ -s "$OUTFILE" -a -n "$REPORT_EMAIL" ]; then
|
||||
(
|
||||
echo "Subject: [rkhunter] $(hostname -f) - Daily report"
|
||||
echo "To: $REPORT_EMAIL"
|
||||
echo ""
|
||||
cat $OUTFILE
|
||||
) | /usr/sbin/sendmail $REPORT_EMAIL
|
||||
fi
|
||||
rm -f $OUTFILE
|
||||
;;
|
||||
*)
|
||||
exit 0
|
||||
;;
|
||||
esac
|
||||
|
||||
#add by me :
|
||||
/repertoire/chattr_sys true
|
Loading…
Reference in New Issue