Hak5 Cloud C2 – Review
Het laatste product uit het Hak5 Portfolio is het Cloud Command & Control Center ofwel “Hak5 Cloud C2”. Het Hak5 Cloud Command & Control Center biedt ondersteuning voor verschillende Hak5 producten zoals de WiFi Pineapple, Packet Squirrel en de LAN Turtle. In deze post gebruiken we V1.01 van het Cloud C2 Center maar toekomstige versies zullen meerdere oude en nieuwe Hak5 producten ondersteunen zoals de Bash Bunny en de Packet Squirrel. Het Cloud C2 Center geeft real-time inzicht in de status van alle apparaten via een duidelijke interface en het is zelfs mogelijk om de apparaten te beheren. De GUI biedt vrijwel alle beheer mogelijkheden maar het is via het Cloud C2 Center ook mogelijk om in de CLI in te loggen van de apparaten waar je uiteraard 100% de vrijheid hebt om het apparaat te beheren. In deze post gaan we het Cloud C2 Center nader bekijken.
Hak5 stelt het Cloud C2 Center ter beschikking voor de meest gangbare besturingssystemen zoals Windows x32 en x64 en Linux x32 en x64. Naast Windows en Linux wordt ook Darwin (Mac) ondersteund. Het idee achter het Cloud C2 Center is om al je Hak5 Gear te kunnen beheren middels een duidelijke en overzichtelijke interface. Door het samenbrengen van alle apparaten in een overzichtelijk interface worden er zelfs nieuwe scenario’s mogelijk. Denk eens aan een omgeving waar 20 WiFi Pineapple’s verspreid staan. Het zou dan vanuit het Cloud C2 Center met 1 druk op de knop mogelijk zijn om al deze apparaten te laten scannen waardoor de omgeving in kaart wordt gebracht. Door periodiek gezamenlijke scans uit te voeren kunnen bepaalde patronen van draadloze apparaten inzichtelijk worden gemaakt. Maar ook een grote gezamenlijke De-Auth behoort ineens tot de mogelijkheden.
Hak5 Cloud Command & Control Center is beschikbaar in 3 licentiemodellen. De community versie is helemaal gratis en ondersteund tot 10 Hak5 apparaten. Dit model is uiteraard voor niet-commercieel gebruik en beperkt het support tot community. De professionele variant kost 500 USB maar support tot 50 Hak5 apparaten, mag commercieel gebruikt worden en bied standaard support. Vervolgens bestaat er nog een business versie welke unlimited Hak5 apparaten ondersteund en premium support biedt. De business variant kent geen default pricing. Hiervoor moet een speciale quote aangevraagd worden.

Het Hak5 Cloud C2 Center is geen hosted Cloud service. Het Cloud C2 Center wordt geïnstalleerd op een eigen server. Er wordt nooit verkeer naar Hak5 of eventuele 3th party suppliers gestuurd. Al het verkeer vindt alleen plaats tussen de Hak5 apparaten en het Cloud C2 Center. Daarnaast heb je als administrator om dit onderlinge verkeer te versleutelen middels SSL (HTTPS) wat uiteraard een dikke aanrader is.
De basis setup ziet er als volgt uit:
- 1. Download de software.
- 2. Installeer de software.
- 3. Zorg dat het Cloud C2 Center te bereiken is via een publiek IP (als je de techniek remote wilt gebruiken, dit is uiteraard niet nodig voor interne tests).
- 4. Update de firmware van de apparaten welke gaan werken met het Cloud C2 Center.
- 5. Maak het nieuwe device aan in het Cloud C2 Center
- 6. Download de nieuwe config file voor de apparaten
- 7. SCP het bestand naar de /etc/ van het apparaat en reboot deze
- 8. Het apparaat komt binnen een paar minuten online en wordt zichtbaar in het Cloud C2 Center.
We wilde graag een kijkje nemen naar het Hak5 Cloud C2 Center dus nu gaan we hands-on aan de slag. Laten we beginnen bij punt 1 en we stoppen pas als we de WiFi Pineapple zichtbaar hebben in het C2 Center.
Hak5 Cloud C2 Center Downloaden
Deze stap is uiteraard de meest gemakkelijke stap, het downloaden van de software. Om de software te downloaden ga je naar de Cloud C2 pagina (https://hakshop.com/products/c2) en kies je ervoor om de community versie te downloaden of om een uitgebreidere versie te kopen. Nadat je de software in de winkelwagen hebt gestopt volg je het check-out process zoals je dat normaal ook zou doen voor een fysiek product.

Nadat de bestanden gedownload zijn pak je deze uit en vindt je het Cloud C2 Center voor Windows, Linux en Darwin.

Hak5 Cloud C2 Installeren
Nu is het zaak om het Hak5 Cloud Command & Control Center te installeren. Installatie verschilt uiteraard per type OS. Ongeacht welke versie je installeert, de binaries worden altijd geïnstalleerd via de command-line en de installatie is altijd afhankelijk van additionele flags. Beschikbare flags zijn:
- db %string% – Specificeer een pad naar de c2.db (als je een bestaande database wilt gebruiken of een alternatieve locatie wilt kiezen).
- hostname %string% – Specificeer hier de hostname van de server. Dit kan een DNS naam of een IP adres zijn.
- https – Enabled HTTPS (deze setting gebruikt zowel poort 80 als poort 443).
- listenip %string% – IP adres waar de software op luistert. Default is 0.0.0.0 (localhost loopback).
- listenport %string% – Poort van de HTTP server (webinterface). Default is 8080.
- sshport %string% – Poort van de SSH server (als je je apparaten over SSH wilt benaderen). Default SSH poort is 2022.

Een valide installatiecommando ziet er dan als volgt uit:
./c2_community-linux-64 -hostname hak-cloudc2-jarno.nl -https |

Als je de software alleen lokaal gebruikt in een testomgeving kun je hem starten zonder de “-https” flag en met een IP adres i.p.v. een domeinnaam waarna hij lokaal te bereiken is op poort 8080. Dus het volgende startcommando maakt het Cloud C2 Center lokaal bereikbaar op “192.168.1.100:8080”.
./c2_community-linux-64 -hostname 192.168.1.100 |
In het eerste voorbeeld is het uiteraard essentieel dat de domeinnaam “hak-cloudc2-jarno.nl” bestaat en dat poorten 80 en 443 (de HTTPS flag is opgegeven) openstaan en naar deze server wijzen. Optioneel moet ook SSH poort 2022 geforeward zijn naar de server. Deze SSH poort wordt gebruikt om te communiceren met de apparaten en om op die manier shell toegang te krijgen tot de apparaten.
Als het Hak5 Cloud C2 Center gestart is wordt er een setup token weergegeven. Schrijf deze goed op, want deze heb je nodig tijdens het activeren van de portal. Als je de setup token kwijtraakt kun je deze niet meer herstellen. De service laat deze eenmalig zien. In dat geval moet je de database (default aanwezig op dezelfde locatie als je service bestand) verwijderen. Als je na het verwijderen van de database de service weer start wordt er een nieuwe database aangemaakt en wordt er eveneens een nieuwe setup token gegenereerd.

Hou je setup token en je licentiesleutel paraat en navigeer je naar je host, in ons geval “https://hak-cloudc2-jarno.nl”. Je komt nu terecht op een webpagina waar je de activatie moet uitvoeren. Vul hier de token (YIIO-CMYR-PRMT-ENYC) en je licentiesleutel in. Vervolgens geef je de gebruikersnaam en het wachtwoord op waarmee je in de toekomst in wilt loggen op je Hak5 C2 Center. Needless to say…zorg ervoor dat je een veilig wachtwoord gebruikt!

Als alle gegevens succesvol zijn ingevoerd kun je inloggen op je eigen cloud omgeving:

Na het inloggen kom je op het (nog lege) dashboard:

Via het settings menu kun je een aantal zaken aanpassen. Zo kun je je dashboard upgraden naar de pro versie, kun je systeem logs bekijken en kun je je accountgegevens aanpassen evenals de refresh interval van je cloud.

Hak5 apparaat toevoegen aan het Cloud C2 Center
Nu het Cloud C2 Center online is wordt het zaak om onze Hak5 apparaten toe te voegen welke we willen beheren vanuit de Cloud. Momenteel worden alleen de WiFi Pineapple, Packet Squirrel en de LAN Turtle ondersteund. Om een van deze apparaten toe te voegen is het zaak om het apparaat eerst te updaten naar de nieuwste firmware zodat het apparaat gekoppeld kan worden met het Cloud C2 Center en zodat het apparaat kan communiceren met het platform. Het updaten is per apparaat anders. Volg hiervoor eventueel de update instructies op de Hak5 productpagina.
Als het apparaat geupdate is moet deze aangemaakt worden in de Hak5 Cloud. Ga hiervoor naar de “device overview” pagina en kies je ervoor om een apparaat toe te voegen.

Om het device toe te voegen geef je het apparaat een duidelijke naam. Gebruik hierbij eventueel de locatie waar het apparaat geplaatst word. Ook geef je het type apparaat op:

Vervolgens is het apparaat zichtbaar op de overview pagina.

Nu is het zaak dat we een speciaal configuratiebestand downloaden. Dit bestand verteld het apparaat met welke cloud omgeving deze moet verbinden (de locatie, credentials etc.). Om dit te doen klikken we op het apparaat waardoor we naar de detailpagina gaan:

Als we klikken op de blauwe “Setup” button wordt het configuratiebestand gedownload. Dit bestand moet vervolgens opgeslagen worden in de “/etc/’ folder van het apparaat. Gebruik b.v. WinSCP om het bestand middels SCP over te hevelen naar de juiste folder.
Nadat het bestand is opgeslagen en het apparaat is herstart komt deze meteen online in de cloud portal. Let op: het apparaat moet wel beschikking hebben over een internetsignaal. Zonder een internetsignaal kan het C2 Center natuurlijk nooit het apparaat bereiken. En dat vind ik meteen een van de grootste nadelen van het pakket. Uiteraard werkt een cloud-based omgeving nooit zonder een internetsignaal maar de meeste Hak5 apparaten bieden functies waarbij deze geen internetsignaal opbouwen. Denk b.v. aan een Rogue Access Point, hierbij is het niet noodzakelijk dat de PineApple een internetverbinding opbouwt. Maar zeker met een apparaat als de Packet Squirrel. Packet Captures, NMap scans en Exfiltration attacks bouwen vaak geen internetverbinding op. Test je payload dus goed voordat je deze deploys alvorens je “verwacht” je apparaat via de cloud interface te kunnen beheren. Internettoegang is dus vereist.
Maar als je Hak5 Gear internettoegang heeft dan ziet dit er als volgt uit:

Door op het apparaat te klikken krijg je verschillende configuratiemogelijkheden:

Let op, het Hak5 Cloud C2 Center geeft vele configuratiemogelijkheden maar niet alle mogelijkheden:

Zoals je ziet heb je geen toegang tot de modules, reporting en geavanceerde opties. Wel kun je de globale functies van het apparaat perfect besturen en wat opvalt is dat de communicatie erg snel is. Binnen 10 seconde is een instelling vanuit het C2 Center doorgevoerd op het apparaat. En wil je uitgebreide opties configureren dan kun je er altijd voor kiezen dit via de terminal te doen. Let op, hiervoor moet poort 2022 openstaan. Als de configuratie goed is kun je direct inloggen op de shell van het apparaat:

Overige opties die het Hak5 Cloud C2 Center je bieden is het rebooten van het apparaat, remote wissen van data en uiteraard het verwijderen van het apparaat uit het Cloud C2 Center of het hernoemen ervan.

Wat het Cloud C2 Center echt krachtig maakt is het duidelijke overzicht, goede statistieken en de mogelijkheid om alle apparaten aan te sturen vanuit 1 interface. Je ziet duidelijk welke apparaten online zijn, hoe ze performen en in de toekomst wordt het mogelijk om met 1 commando alle apparaten te besturen. Bijvoorbeeld om alle Pineapple’s een global scan uit te laten voeren.

Uiteraard heeft elk apparaat zijn eigen interface welke toegespitst is om dat specifieke apparaat te kunnen besturen. De interface van de Packet Squirrel ziet er als volgt uit:


En ter volledigheid, het Hak5 Cloud C2 Center kan ook een LAN Turtle aansturen. Dit ziet er als volgt uit:


Als je je apparaten wilt verwijderen uit de cloud kies je voor “Remove”. Je apparaat wordt dan uit het Hak5 Cloud C2 Center gehaald en komt hierin ook niet meer online. Om je apparaat weer online te krijgen in de C2 Cloud moet je een nieuw configuratiebestand downloaden en op het apparaat plaatsen. Het oude configuratiebestand is volledig overbodig en kan niet meer gebruikt worden.
Wil je je Hak5 Cloud C2 Center op een andere server hosten dan kopieer je simpelweg de database en al je configuratie wordt meegenomen.

Conclusie
Het Hak5 C2 Control Center is een mooie portal welke echt potentie heeft en een meerwaarde biedt voor het volledige Hak5 arsenaal. De interface ziet er goed uit, statistieken zijn duidelijk en het is fantastisch om alle apparaten aan te kunnen sturen vanuit 1 portal. Het Hak5 Cloud C2 Center is pas net gereleased en er zullen in de toekomst nog een groot scala functionaliteiten worden toegevoegd waardoor hij functioneel nog beter en handiger wordt. Op dit moment vind ik dat vooral de Hak5 Pineapple goed ondersteund wordt. De mogelijkheid om via SSH apparaten te benaderen is fantastisch en geeft feitelijk volledige controle. Ik zou graag zien dat ook de Bash Bunny ondersteund gaat worden en dat er vanuit de cloud web interface meer functionaliteiten beschikbaar komen (en dat gaat zeker gebeuren). Nu al is het Hak5 Cloud C2 Center een prachtig product en ik blijf de ontwikkeling van dichtbij volgen om te zien welke functionaliteiten er worden toegevoegd.