From 5ea323435891495e815b8b6942a38be18ef50a49 Mon Sep 17 00:00:00 2001 From: Yacine31 Date: Thu, 19 Jan 2023 18:03:29 +0100 Subject: [PATCH] Create scan_bdd_oracle.sh --- scan_bdd_oracle.sh | 96 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 96 insertions(+) create mode 100644 scan_bdd_oracle.sh diff --git a/scan_bdd_oracle.sh b/scan_bdd_oracle.sh new file mode 100644 index 0000000..dc98128 --- /dev/null +++ b/scan_bdd_oracle.sh @@ -0,0 +1,96 @@ +#!/bin/sh +#------------------------------------------------------------------------------ +# recherche des serveurs de base de données +# scan d'une plage d'adresse et une plage de port pour trouver +# un listener Oracle, une base mysql, postgres sql ou microsoft sql server +#------------------------------------------------------------------------------ +# Historique : +# 26/07/2016 : YOU – Creation +# 29/07/2016 : YOU – Mise à jour +# 25/08/2021 : YOU - Adaptation pour les reseaux BM +# 14/09/2021 : YOU - Adresses reseau en notation CIDR xxx.xxx.xxx.xxx/xx +#------------------------------------------------------------------------------ + +#------- +# les réseaux à scanner +#------- +# reseau="192.168.31.0/24" +# reseau="10.0.30.0 10.0.40.0 192.31.6.0 172.16.1.0" +mask_reseau=24 + +#------- +# les ports à scanner : +# 1500-3000 => la plage entre 1500 et 3000 +# 1521,1621 => les deux ports 1521 et 1621 +# 1521,1621-3000 => le port 1521 et la plage de 1621-3000 +#------- +# les ports par base : +# Microsoft sql server => 1433 +# Oracle => 1521-1699 +# Sybase => 2638 +# Progress => 3000-3003 +# Mysql => 3306 +# PostgreSQL => 5432 +#------- +# la ligne suivante est composée de plusieurs plages pour minimiser le temps du scan +# port_reseau="1430-1440,1500-1700,2600-2700,3000-3010,3300-3310,5400-5500" +#------- +port_reseau="1520-1530" + +#------- +# les variables d'environnement +#------- +export repertoire_base=/root/scripts +export repertoire_logs=${repertoire_base}/logs +export fichier_log=${repertoire_logs}/scan_bdd_$(date +%Y.%m.%d-%Hh%M).log +mkdir -p ${repertoire_logs} > /dev/null +echo "" > ${fichier_log} + +#------- +# paramètre du scan +#------- +echo "#--------------------- Paramètres du scan ----------------------------" | tee -a ${fichier_log} +echo "# Date : $(date +%Y.%m.%d-%Hh%M)" | tee -a ${fichier_log} +echo "# Répertoire de base du script : ${repertoire_base}" | tee -a ${fichier_log} +echo "# Répertoire des fichiers logs : ${repertoire_logs}" | tee -a ${fichier_log} +echo "# Nom du fichier log de cette session : ${fichier_log}" | tee -a ${fichier_log} +echo "# Les réseaux scannés : ${reseau}" | tee -a ${fichier_log} +echo "#----------------------------------------------------------------------" | tee -a ${fichier_log} + +#------- +# on parcourt les réseau pour détecter les serveurs joignables par fping +# le résultat est scanné par nmap pour trouver les bases de données +#------- + +for plage in $reseau +do + plage_reseau=$(echo ${plage} | cut -d/ -f1) + mask_reseau=$(echo ${plage} | cut -d/ -f2) + if [ -z "${mask_reseau}" ]; then mask_reseau="24"; fi + + echo "#----------------------------------" | tee -a ${fichier_log} + echo "# Scan du reseau : ${plage} " | tee -a ${fichier_log} + echo "# Plage reseau : ${plage_reseau} " | tee -a ${fichier_log} + echo "# Masque reseau : ${mask_reseau} " | tee -a ${fichier_log} + echo "#----------------------------------" | tee -a ${fichier_log} + /usr/sbin/fping -q -a -d -g ${plage_reseau}/${mask_reseau} 2>/dev/null | while read ip + do + # nmap -sV : detection de la version du produit + # namp -n : desactiver la resolution des nom pour acceler le scan + # namp -sS : scan avec un packet TCP SYNC + # ret=$(/usr/bin/nmap -n -sS -sV -p ${port_reseau} ${ip} | grep -i "open" | egrep -i "oracle|sql|Progress Database|sybase") + ret=$(/usr/bin/nmap -n -sS -sV -p ${port_reseau} ${ip} | grep -i "open" | egrep -i "oracle") + if [ "$ret" != "" ]; then + echo "${ret}" | sed "s/^/Serveur $ip \t:\t /g" | tee -a ${fichier_log} + fi + done +done + + +echo "#---------- SCAN TERMINE A $(date +%Y.%m.%d-%H:%M) -----------------" | tee -a ${fichier_log} +echo "# Fichier log de cette session : ${fichier_log}" +echo "#-------------------------------------------------------------------" + +#------- +# fin +#-------