Discord Cyber Scenario Bot: verbeter cyberbeveiliging training en bewustzijn
Table of Contents
CyberScenarioBot
Discord Cyber Scenario, Quiz, en Cyber Awareness Training Bot.
U kunt naar
🚀 Quick Start
toevoegen CyberScenarioBot
naar uw server.
Introductie
Deze bot kan nuttig zijn in een cyberbeveiliging training of bewustwordingsprogramma, waar gebruikers kunnen worden blootgesteld aan verschillende cyberbeveiliging scenario’s en leren hoe te voorkomen of te reageren op hen. Door het gebruik van een Discord bot, kunnen de scenario’s gemakkelijk worden gedeeld met gebruikers in een server-omgeving, en de bot kan worden aangepast om extra commando’s of functionaliteit op te nemen als dat nodig is. Bovendien kan de bot worden uitgevoerd in een Docker-container, waardoor hij gemakkelijk kan worden ingezet en beheerd in verschillende omgevingen.
🚀 Quick Start
Hoe uit te voeren:
Python:
Aangenomen dat u een Unix-systeem gebruikt, opent u een terminal en navigeert u naar de map waar het script bot.py staat. Voer dan het volgende commando uit:
export BOT_TOKEN="INSERT YOUR BOT TOKEN HERE"
export GUILD_ID="INSERT YOUR GUILD ID HERE (only needed for timed quizes and leaderboard)"
export LEADERBOARD_CHANNEL_ID="INSERT YOUR LEADERBOARD CHANNEL ID HERE (Only needed for leaderboard for prompts)"
export CHANNEL_ID="INSERT YOUR CHANNEL ID HERE (only needed for timed quizes)"
export APLUSROLE="INSERT YOUR A+ ROLE ID HERE (only needed for timed quizes)"
export NETPLUSROLE="INSERT YOUR Network+ ROLE ID HERE (only needed for timed quizes)"
export SECPLUSROLE="INSERT YOUR Security+ ROLE ID HERE (only needed for timed quizes)"
export QUIZROLE="INSERT YOUR QUIZ ROLE ID HERE (only needed for timed quizes)"
python bot.py
Als u een op Windows gebaseerd systeem gebruikt, moet u een iets ander commando gebruiken om de omgevingsvariabele in te stellen. Hier is een voorbeeldcommando dat zou moeten werken onder Windows:
set BOT_TOKEN="INSERT YOUR BOT TOKEN HERE"
set GUILD_ID="INSERT YOUR GUILD ID HERE (only needed for timed quizes)"
set LEADERBOARD_CHANNEL_ID="INSERT YOUR LEADERBOARD CHANNEL ID HERE (Only needed for leaderboard for prompts)"
set LEADERBOARD_PERSIST_CHANNEL_ID="INSERT YOUR LEADERBOARD PERSIST CHANNEL ID HERE (Only needed for leaderboard for prompts)"
set CHANNEL_ID="INSERT YOUR CHANNEL ID HERE (only needed for timed quizes)"
set APLUSROLE="INSERT YOUR A+ ROLE ID HERE (only needed for timed quizes)"
set NETPLUSROLE="INSERT YOUR Network+ ROLE ID HERE (only needed for timed quizes)"
set SECPLUSROLE="INSERT YOUR Security+ ROLE ID HERE (only needed for timed quizes)"
set QUIZROLE="INSERT YOUR QUIZ ROLE ID HERE (only needed for timed quizes)"
python bot.py
Docker:
Wanneer u de Docker-container uitvoert, kunt u de BOT_TOKEN omgevingsvariabele doorgeven met de -e vlag als volgt:
docker run -e BOT_TOKEN="INSERT YOUR BOT TOKEN HERE" -it --rm simeononsecurity/discord-cyber-scenario-bot:latest
Om de bot op de achtergrond te laten draaien:
docker run -td --name scenario-bot -e BOT_TOKEN="INSERT YOUR BOT TOKEN HERE" simeononsecurity/discord-cyber-scenario-bot:latest
Om de bot op de achtergrond te laten draaien met alle geplande prompts en rollen:
docker run -td --name scenario-bot \
-e BOT_TOKEN="INSERT YOUR BOT TOKEN HERE" \
-e GUILD_ID="INSERT YOUR GUILD ID HERE" \
-e LEADERBOARD_CHANNEL_ID="INSERT YOUR LEADERBOARD CHANNEL ID HERE" \
-e LEADERBOARD_PERSIST_CHANNEL_ID="INSERT YOUR LEADERBOARD PERSIST CHANNEL ID HERE" \
-e CHANNEL_ID="INSERT YOUR CHANNEL ID HERE" \
-e APLUSROLE="INSERT YOUR A+ ROLE ID HERE" \
-e NETPLUSROLE="INSERT YOUR NET+ ROLE ID HERE" \
-e SECPLUSROLE="INSERT YOUR SEC+ ROLE ID HERE" \
-e QUIZROLE="INSERT YOUR QUIZ ROLE ID HERE" \
simeononsecurity/discord-cyber-scenario-bot:latest
Features
Beschikbare commando’s
Commando voorvoegsel: ‘!’, ‘/’****
📝 Quiz en Scenario opdrachten
- Aplus: Antwoorden met CompTIA’s A+ gerelateerde prompt.
- Bluescenario: Antwoorden met een blauw team scenario.
- CCNA: Antwoorden met Cisco’s CCNA multiple choice prompt.
- CEH: Antwoorden met EC-Council’s CEH multiple choice prompt.
- CISSP: Antwoorden met ISC2’s CISSP multiple choice prompt.
- Linuxplus**: Antwoorden met CompTIA’s Linux+ meerkeuze prompt.
- Netplus: Antwoorden met CompTIA’s Network+ gerelateerde prompt.
- Quiz: Antwoorden met een willekeurige Cyber Security Awareness Vraag.
- Redscenario: Antwoorden met een redteam scenario.
- Secplus: Antwoorden met CompTIA’s Security+ gerelateerde prompt.
💯🎯 Leaderboard.
Meerkeuzevragen worden dynamisch gewogen, net als bij de echte examens, op basis van het juiste of onjuiste antwoord.
- Volg uw vooruitgang in de tijd en zie hoe u zich verhoudt tot anderen in uw server.
- Zie scores voor elke testcategorie en in het algemeen
🛠️ Tool Commando’s
- Dns: Neemt een
domain name
en geeft A, AAAA, NS, TXT, etc. records terug. - Hash: Neemt op in
1 of 4 supported algos
en eenstring
en voert een overeenkomstige hash uit. - Ping: Neemt een
IP address
en retourneert met een succesbericht en gemiddelde latentie of een foutbericht. - Phonelookup: Neemt een
phone number
en geeft de drager en locatie door. - Shodanip: Neemt een
IP address
en voert nuttige informatie uit van https://internetdb.shodan.io/ . - Subnet: Neemt een
IP address
en eenSubnet Mask
en geeft het bereik, de bruikbare IP’s, het gateway-adres, het broadcast-adres en het aantal ondersteunde hosts. - Whois: Neemt een
domain name
en voert domein whois informatie uit.
ℹ️ Informatieve commando’s
- Commando’s: Antwoorden met dit bericht.
- Socialen: Antwoordt met de verschillende bot social media accounts en websites.
⚙️ Eenvoudige installatie
- *Zie 🚀 Quick Start
Upcoming Features
Deze functies hebben een geplande datum van implementatie, maar we volgen ze en we zouden graag contributions voor hen.
- Geavanceerde leaderboard functies, inclusief wekelijkse en maandelijkse ranglijsten.
- Aanpasbare prompts en quizzen om tegemoet te komen aan specifieke cyberbeveiliging trainingsbehoeften.
- Geavanceerde rapportage en analyses voor het bijhouden van de voortgang en prestaties van gebruikers.
Gebruik
De CyberScenarioBot biedt verschillende commando’s en functies om uw cyberbeveiligingstraining en bewustwordingsprogramma te verbeteren. Hier zijn enkele veelvoorkomende gebruikssituaties:
Quizzen en scenario’s: Gebruik de
/quiz
commando om een willekeurige cyberbeveiligingsvraag te krijgen. Gebruik commando’s als/aplus
/netplus
/secplus
om toegang te krijgen tot specifieke vragen over CompTIA-certificaten. Gebruik commando’s als/bluescenario
en/redscenario
om respectievelijk blauw team en rood team scenario’s te krijgen.Leaderboard: Houd de voortgang van de gebruikers bij en vergelijk scores met anderen in uw server door de quiz en certificeringsvragen te beantwoorden.
Tool Commands: Gebruik verschillende tool commando’s om taken uit te voeren met betrekking tot DNS, hashing, ping, telefoonnummer opzoeken, Shodan IP zoeken, subnet berekeningen, en domein WHOIS opzoeken. Gebruik commando’s als
/dns
/hash
/ping
/phonelookup
/shodanip
/subnet
en/whois
gevolgd door de juiste argumenten.Informatieve commando’s: Gebruik de
/commands
commando om een lijst van beschikbare commando’s te krijgen. Gebruik de/socials
commando om informatie te krijgen over de social media accounts en websites van de bot.
Voel je vrij om te verkennen en te experimenteren met de beschikbare commando’s om je cyberbeveiligingstraining te verbeteren en je serverleden te betrekken.
Issues
Als gebruikers problemen tegenkomen of suggesties hebben voor verbeteringen, kunnen ze een GitHub issue openen om ze te melden. Moedig gebruikers aan om gedetailleerde informatie over het probleem en de stappen om het te reproduceren te verstrekken.
Volg deze stappen om een issue te openen:
- Ga naar de Issues tab op de GitHub repository van het project: Issues
- Klik op de knop “Nieuwe uitgave”.
- Geef een beschrijvende titel en een duidelijke beschrijving van de kwestie.
- Voeg alle relevante logboeken, screenshots of stukjes code toe om te helpen bij het oplossen van problemen.
- Dien het probleem in en wacht op verdere communicatie van de projectbeheerders.
Bijdragen
We verwelkomen alle bijdragen. Dit project was bedoeld als een ontwikkelings- en leerinspanning door the CyberSentinels club en we helpen u graag om bij te dragen en eventuele vragen te beantwoorden.
Geautomatiseerde Python Testen
Deze repo bevat geautomatiseerd testen, u kunt voorbeelden zien hoe dat te implementeren here
Discord API en Documentatie voor Ontwikkelaars
Voor het testen van veranderingen en het implementeren van functies heb je een paar dingen nodig.
Werken met de ontwikkelaars
U kunt ontwikkelingsinspanningen bespreken in de community discord server here