Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
harbian-audit — Auditing di distribuzioni Debian GNU/Linux rafforzate | Kitploit
Strumenti/GitHubGitHub/hardenedlinux/harbian-audit
Sicurezza dell'Infrastruttura CloudAudit di ConfigurazioneSicurezza Cloud
GitHubhardenedlinux/harbian-audit

harbian-audit

Auditing di distribuzioni Debian GNU/Linux rafforzate

Vedi Repository
470653 mesi faRevisionato da Kitploit

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

harbian-audit Hardening

Introduzione

Auditing di distribuzioni Debian GNU/Linux e CentOS 8 hardened.

L'ambiente di test principale è su Debian GNU/Linux 9/10/11/12/13, CentOS 8 e Ubuntu 22; le altre versioni non sono state testate completamente. Non ci sono implementazioni di elementi relativi al desktop in questa versione.

Il framework del codice è basato sul progetto OVH-debian-cis, sono state modificate alcune implementazioni originali in base alle caratteristiche di Debian 9/10/11/12/13 e CentOS 8, sono state aggiunte e implementate voci di controllo per STIG Red_Hat_Enterprise_Linux_7_V2R5 STIG Ubuntu V1R2 e le raccomandazioni di cisecurity.org, e sono state anche aggiunte e implementate alcune voci di controllo dalla comunità HardenedLinux. Sono implementate le funzioni di audit e applicazione dell'infrastruttura, e la funzione di correzione automatica è implementata per gli elementi che possono essere corretti automaticamente.

root@kitploit:~
# bash bin/hardening.sh --audit-all
[...]
hardening                 [INFO] Treating /home/test/harbian-audit/bin/hardening/13.15_check_duplicate_gid.sh
13.15_check_duplicate_gid [INFO] Working on 13.15_check_duplicate_gid
13.15_check_duplicate_gid [INFO] Checking Configuration
13.15_check_duplicate_gid [INFO] Performing audit
13.15_check_duplicate_gid [ OK ] No duplicate GIDs
13.15_check_duplicate_gid [ OK ] Check Passed

[...]
################### SUMMARY ###################
      Total Available Checks : 271
         Total Checks Run : 271
         Total Passed Checks : [ 226/271 ]
         Total Failed Checks : [  44/271 ]
   Enabled Checks Percentage : 100.00 %
       Conformity Percentage : 83.39 %

Avvio rapido

root@kitploit:~
$ git clone https://github.com/hardenedlinux/harbian-audit.git && cd harbian-audit
# cp etc/default.cfg /etc/default/cis-hardening
# sed -i "s#CIS_ROOT_DIR=.*#CIS_ROOT_DIR='$(pwd)'#" /etc/default/cis-hardening
# bin/hardening.sh --init
# bin/hardening.sh --audit-all
hardening                 [INFO] Treating /home/test/harbian-audit/bin/hardening/1.1_install_updates.sh
1.1_install_updates       [INFO] Working on 1.1_install_updates
1.1_install_updates       [INFO] Checking Configuration
1.1_install_updates       [INFO] Performing audit
1.1_install_updates       [INFO] Checking if apt needs an update
1.1_install_updates       [INFO] Fetching upgrades ...
1.1_install_updates       [ OK ] No upgrades available
1.1_install_updates       [ OK ] Check Passed
[...]
################### SUMMARY ###################
      Total Available Checks : 284
         Total Checks Run : 284
         Total Passed Checks : [ 260/284 ]
         Total Failed Checks : [  24/284 ]
   Enabled Checks Percentage : 100.00 %
       Conformity Percentage : 91.55 %
# bin/hardening.sh --set-hardening-level 5
# bin/hardening.sh --apply 
hardening                 [INFO] Treating /home/test/harbian-audit/bin/hardening/1.1_install_updates.sh
1.1_install_updates       [INFO] Working on 1.1_install_updates
1.1_install_updates       [INFO] Checking Configuration
1.1_install_updates       [INFO] Performing audit
1.1_install_updates       [INFO] Checking if apt needs an update
1.1_install_updates       [INFO] Fetching upgrades ...
1.1_install_updates       [ OK ] No upgrades available
1.1_install_updates       [INFO] Applying Hardening
1.1_install_updates       [ OK ] No Upgrades to apply
1.1_install_updates       [ OK ] Check Passed
[...]

Utilizzo

Pre-installazione

Se si utilizza un'installazione di rete da un CD minimale per installare Debian GNU/Linux, è necessario installare i pacchetti prima di utilizzare lo strumento di hardening.

root@kitploit:~
# apt-get install -y bc net-tools pciutils network-manager 

Redhat/CentOS richiede l'installazione dei pacchetti prima di utilizzare lo strumento di hardening:

root@kitploit:~
# yum install -y bc net-tools pciutils NetworkManager epel-release 

Pre-impostazione

È necessario impostare una password per tutti gli utenti prima dell'hardening. Altrimenti, non sarà possibile accedere dopo il completamento dell'hardening. Esempio (utente OS: root e test):

root@kitploit:~
 
# passwd 
# passwd test 

Configurazione

Gli script di hardening si trovano in bin/hardening. Ogni script ha un file di configurazione corrispondente in etc/conf.d/[script_name].cfg.

Ogni script di hardening può essere abilitato singolarmente dal suo file di configurazione. Ad esempio, questo è il file di configurazione predefinito per disable_system_accounts:

root@kitploit:~
# Configuration for script of same name
status=disabled
# Put here your exceptions concerning admin accounts shells separated by spaces
EXCEPTIONS=""

Il parametro status può assumere 3 valori:

  • disabled (non fa nulla): Lo script non verrà eseguito.
  • audit (sola lettura): Lo script verificherà se eventuali modifiche dovrebbero essere applicate.
  • enabled (lettura/scrittura): Lo script verificherà se eventuali modifiche devono essere fatte e applicherà automaticamente ciò che può.

È anche possibile impostare l'elemento di configurazione per abilitarlo modificando il livello, con il seguente comando:

  1. Generare etc/conf.d/[script_name].cfg con audit-all al primo utilizzo
root@kitploit:~
# bash bin/hardening.sh --audit-all
  1. Abilitare [script_name].cfg con set-hardening-level Utilizzare il comando per impostare il livello di hardening in modo che la voce di audit del livello corrispondente abbia effetto.
root@kitploit:~
# bash bin/hardening.sh --set-hardening-level <level>

La configurazione globale si trova in etc/hardening.cfg. Questo file controlla il livello di log e la directory di backup. Ogni volta che a uno script viene ordinato di modificare un file, creerà un backup con timestamp in questa directory.

Esecuzione, ovvero "Hardening della tua distribuzione (Dopo l'hardening, è necessario eseguire la sezione "After remediation")"

Per eseguire i controlli e applicare le correzioni, esegui bin/hardening.sh.

Questo comando ha 2 modalità operative principali:

  • --audit: Esegui l'audit del sistema con tutti gli script abilitati e in modalità audit
  • --apply: Esegui l'audit del sistema con tutti gli script abilitati e in modalità audit e applica le modifiche per gli script abilitati

Inoltre, --audit-all può essere utilizzato per forzare l'esecuzione di tutti gli script di audit, compresi quelli disabilitati. Questo non modificherà il sistema.

--audit-all-enable-passed può essere utilizzato come un modo rapido per avviare la configurazione. Eseguirà tutti gli script in modalità audit. Se uno script supera il test, verrà automaticamente abilitato per le esecuzioni future. NON utilizzare questa opzione se hai già iniziato a personalizzare la configurazione.

Utilizza il comando per hardenizzare il tuo sistema operativo:

root@kitploit:~
# bash bin/hardening.sh --apply 

Configurazione rsyslog

Se si utilizza rsyslog e si desidera stampare il log di harbian-audit in un file di log separato, la configurazione è la seguente:

root@kitploit:~
user.info			/var/log/harbian-audit.log
user.*				-/var/log/user.log

Il log verrà emesso nel file /var/log/harbian-audit.log.

Se applichi docs/configurations/etc.iptables.rules.v4.sh alle tue regole firewall e desideri stampare il log di iptables in un file di log separato, inserisci le seguenti righe in rsyslog.conf:

root@kitploit:~
:msg,contains,"FW-"                     -/var/log/firewalllog.log
&                                       stop

Dopo la remediation (molto importante)

Quando si esegue --apply e set-hardening-level è impostato a 5 (il livello più alto), è necessario eseguire le seguenti operazioni:

  1. Quando si applica 9.4 (Restrict Access to the su Command), è necessario utilizzare l'account root per accedere al sistema operativo perché gli utenti normali non possono eseguire le operazioni successive. Se puoi solo utilizzare ssh per il login remoto, devi usare il comando su quando l'utente normale effettua il login. Quindi esegui quanto segue:
root@kitploit:~
# sed -i '/^[^#].*pam_wheel.so.*/s/^/# &/' /etc/pam.d/su 

Commenta temporaneamente la riga contenente pam_wheel.so. Dopo aver finito di usare il comando su, per favore decommenta la riga.

  1. Quando si applica 7.4.4_hosts_deny.sh, il sistema operativo non può essere connesso tramite il servizio ssh, quindi è necessario impostare l'elenco degli host consentiti in /etc/hosts.allow, esempio:
root@kitploit:~
# echo "ALL: 192.168.1. 192.168.5." >> /etc/hosts.allow

Questo esempio consente solo a 192.168.1.[1-255] e 192.168.5.[1-255] di accedere a questo sistema. Deve essere configurato in base alla propria situazione.

  1. Imposta i privilegi per l'utente normale, esempio (nome utente è test):
root@kitploit:~
# sed -i "/^root/a\test    ALL=(ALL:ALL) ALL" /etc/sudoers 
  1. Imposta le regole firewall di base Imposta le regole firewall corrispondenti in base alle applicazioni utilizzate. La comunità HardenedLinux per le regole firewall di base di Debian GNU/Linux:

Regole in formato Iptabels:

etc.iptables.rules.v4.sh Prima installa il pacchetto iptables-persistent, poi esegui quanto segue:

root@kitploit:~
$ INTERFACENAME="your network interfacename(Example eth0)"
# bash docs/configurations/etc.iptables.rules.v4.sh $INTERFACENAME

# iptables-save > /etc/iptables/rules.v4 
# ip6tables-save > /etc/iptables/rules.v6 

Regole in formato nft:

nftables.conf esegui quanto segue (nome interfaccia di rete (Esempio eth0)):

root@kitploit:~
$ sed -i 's/^define int_if = ens33/define int_if = eth0/g' etc.nftables.conf 
# nft -f ./etc.nftables.conf 
  1. Quando tutte le riparazioni sono completate. Il metodo --final farà:
    1. Utilizzare il comando passwd per cambiare la password dell'utente normale e di root per applicare la complessità e la robustezza della password della configurazione del modulo pam_cracklib.
    2. Aide si reinizializza.
root@kitploit:~
# bin/hardening.sh --final

Nota speciale

Alcuni elementi di controllo verificano una varietà di situazioni e sono interdipendenti, devono essere applicati (corretti) più volte, e il sistema operativo deve essere riavviato dopo ogni applicazione (correzione).

Elementi che devono essere applicati dopo la prima applicazione (il riavvio dopo è meglio)

8.1.35 Poiché questo elemento è impostato, le regole di audit non verranno aggiunte.

Elementi che devono essere applicati dopo che tutte le applicazioni sono ok

8.4.1
8.4.2
Questi sono tutti relativi ad aide. È meglio correggere tutti gli elementi dopo essere stati corretti per riparare l'integrità del database nel sistema.

Elementi che devono essere corretti due volte

4.5

Hacking

Ottenere il codice sorgente

root@kitploit:~
$ git clone https://github.com/hardenedlinux/harbian-audit.git

Aggiungere uno script di hardening personalizzato

root@kitploit:~
$ cp src/skel bin/hardening/99.99_custom_script.sh
$ chmod +x bin/hardening/99.99_custom_script.sh
$ cp src/skel.cfg etc/conf.d/99.99_custom_script.cfg

Scrivi il tuo controllo spiegando cosa fa, poi se vuoi testare

root@kitploit:~
$ sed -i "s/status=.+/status=enabled/" etc/conf.d/99.99_custom_script.cfg
$ bash bin/hardening.sh --audit --only 99.99
$ bash bin/hardening.sh --apply --only 99.99

Documentazione

Benchmark di harbian-audit per Debian GNU/Linux 9

Questo documento è una descrizione delle aggiunte alle sezioni non incluse nella documentazione di riferimento CIS. Include la documentazione di riferimento STIG e i controlli aggiuntivi raccomandati dalla comunità HardenedLinux.

CIS Debian GNU/Linux 8 Benchmark v1.0.0
CIS Debian GNU/Linux 9 Benchmark v1.0.0
harbian audit Debian Linux 9 Benchmark

Documentazione per operazioni manuali

Come configurare la protezione con password di grub2
Come rendere persistenti le regole iptables con Debian 9
Come distribuire audisp-remote per il log di auditd
Come migrare da iptables a nftables in Debian 10
Come rendere persistenti le regole nft con Debian 10
Come risolvere i permessi negati di SELinux

Documentazione dei casi d'uso

Demo Nodejs + redis + mysql
Distribuire hyperledger-cello su Debian 9
Proxy http SSL reciproco con nginx
Proxy tcp-udp SSL reciproco con nginx

Immagine conforme a harbian-audit

AMI (Amazon Machine Image) pubblica

Documenti

Come creare e rendere pubblica una AMI
Come utilizzare l'immagine conforme a harbian-audit per GNU/Linux Debian 9

Immagine QEMU

Documenti

Come creare un'immagine QEMU di Debian GNU/Linux 9 conforme a harbian-audit
Come utilizzare l'immagine QEMU di Debian GNU/Linux 9 conforme a harbian-audit

Licenza di harbian-audit

GPL 3.0

Dichiarazione di non responsabilità di OVH

Questo progetto è un insieme di strumenti. Sono pensati per aiutare l'amministratore di sistema a costruire un ambiente sicuro. Sebbene lo utilizziamo in OVH per indurire la nostra infrastruttura conforme PCI-DSS, non possiamo garantire che funzioni per te. Non metterà magicamente in sicurezza un host qualsiasi.

Inoltre, citando la licenza:

QUESTO SOFTWARE È FORNITO DA OVH SAS E DAI CONTRIBUTORI "COSÌ COM'È" E QUALSIASI GARANZIA ESPLICITA O IMPLICITA, INCLUSIVE, MA NON LIMITATE A, LE GARANZIE IMPLICITE DI COMMERCIABILITÀ E IDONEITÀ PER UN PARTICOLARE SCOPO SONO DECLINATE. IN NESSUN CASO OVH SAS E I CONTRIBUTORI SARANNO RESPONSABILI PER QUALSIASI DANNO DIRETTO, INDIRETTO, INCIDENTALE, SPECIALE, ESEMPLARE O CONSEQUENZIALE (INCLUSI, MA NON LIMITATI A, ACQUISTO DI BENI O SERVIZI SOSTITUTIVI; PERDITA DI UTILIZZO, DATI O PROFITTI; O INTERRUZIONE DELL'ATTIVITÀ) DERIVANTE IN QUALSIASI MODO DALL'USO DI QUESTO SOFTWARE, ANCHE SE AVVISATI DELLA POSSIBILITÀ DI TALI DANNI.

Licenza OVH

3-Clause BSD

Riferimenti

  • Center for Internet Security: https://www.cisecurity.org
  • STIG V1R4: https://iasecontent.disa.mil/stigs/zip/U_Red_Hat_Enterprise_Linux_7_V1R4_STIG.zip
  • Firewall Rules: https://github.com/citypw/arsenal-4-sec-testing/blob/master/bt5_firewall/debian_fw
Scarica lo strumento