Erstellung eines gefälschten Wi-Fi-Netzwerks zum Abfangen von Passwörtern

Wir erinnern uns – das Gesetz ist alles, und die Einhaltung gesetzlicher Vorgaben ist notwendig. Das bedeutet, dass alles, was unten beschrieben wird, nur für Testzwecke gedacht ist und nur mit Erlaubnis des Netzwerkeigentümers durchgeführt werden darf. Also los!

Jeden Tag tauchen neue Methoden zum Hacken von Wi-Fi-Netzwerken auf, was die Besitzer dazu zwingt, mehr Wert auf Sicherheit zu legen. Ein Tool, das hilft, die Schwachstellen Ihres Wi-Fi-Netzwerks zu überprüfen, ist Wifiphisher.

Wifiphisher – Was ist das?

Wifiphisher ist eine leistungsstarke Open-Source-Bibliothek, die für die Sicherheitsprüfung von Wi-Fi-Netzwerken durch Social-Engineering-Angriffe entwickelt wurde. Lassen Sie uns verstehen, wie dieses Tool funktioniert, welche Szenarien es unterstützt und wie es verwendet werden kann.

Hauptfunktionen von Wifiphisher

  • Erstellung von gefälschten Zugangspunkten (Fake AP):
    Wifiphisher kann gefälschte Wi-Fi-Netzwerke erstellen, die echte imitieren. Dies hilft zu überprüfen, wie geneigt Benutzer sind, sich mit unsicheren Netzwerken zu verbinden.
  • Evil-Twin-Angriff:
    Das Tool trennt Benutzer von ihrem aktuellen Wi-Fi-Netzwerk und leitet sie zu einem gefälschten Zugangspunkt weiter, wo der Angreifer Daten sammeln kann.
  • Phishing-Seiten:
    Wifiphisher bietet die Möglichkeit, gefälschte Login-Seiten einzurichten, um sicherzustellen, dass Benutzer ihre Passwörter nicht auf unsicheren Ressourcen eingeben.
  • Flexibilität in der Konfiguration:
    Die Bibliothek unterstützt verschiedene Angriffsmuster und Szenarien, die an spezifische Bedürfnisse angepasst werden können.

Wie installiert man Wifiphisher?

Die Installation von Wifiphisher ist relativ einfach, aber wichtig zu beachten: Das Tool funktioniert nur unter Linux. Hier sind die grundlegenden Schritte:

  • Stellen Sie sicher, dass Python 3 und der Paketmanager pip auf Ihrem Gerät installiert sind.
  • Klonen Sie das Wifiphisher-Repository von GitHub:
    git clone https://github.com/wifiphisher/wifiphisher.git
  • Wechseln Sie in den Projektordner und installieren Sie die Abhängigkeiten:
    cd wifiphisher
    sudo python3 setup.py install
  • Starten Sie das Tool:
    sudo wifiphisher

Anwendungsbeispiele von Wifiphisher

Szenario 1: Überprüfung der Netzwerksicherheit gegen Evil-Twin-Angriffe

  • Starten Sie Wifiphisher mit dem Schlüssel für den Evil-Twin-Angriff:
    sudo wifiphisher --essid "MyHomeWiFi" --channel 6
  • Benutzer, die mit dem echten Netzwerk verbunden sind, werden getrennt und zu Ihrem gefälschten Zugangspunkt weitergeleitet.
  • Richten Sie eine Phishing-Seite ein, um sicherzustellen, dass Benutzer ihre Daten nicht auf unsicheren Ressourcen eingeben. Zum Beispiel, um eine benutzerdefinierte Login-Seite zu erstellen, verwenden Sie:
    sudo wifiphisher --phishing-page-name "credentials"

Szenario 2: Erstellung eines offenen, gefälschten Zugangspunkts

  • Starten Sie Wifiphisher im Fake-AP-Modus:
    sudo wifiphisher --essid "FreeWiFi" --channel 11
  • Beobachten Sie in Echtzeit, wie viele Benutzer sich mit Ihrem gefälschten Zugangspunkt verbinden, indem Sie die Logs überwachen:
    tail -f /var/log/wifiphisher.log
  • Benötigen Sie eine detailliertere Analyse der gesammelten Daten? Verwenden Sie integrierte Plugins:
    sudo wifiphisher --plugin "plugin_name"

Szenario 3: Abfangen von Daten über eine Phishing-Seite

Zusätzlich zu den integrierten Vorlagen von Wifiphisher können Sie Ihre eigene benutzerdefinierte Seite zum Abfangen von Passwörtern erstellen. Hier ist ein Beispiel für einfachen HTML-Code einer Anmeldeseite, die Anmeldedaten sammelt und an Telegram sendet (eine Anleitung finden Sie hier):











Fazit

Es ist wichtig zu verstehen, dass Wifiphisher nur für ethisches Hacking gedacht ist 🙂 Die Verwendung zur Überprüfung fremder Netzwerke ohne Zustimmung des Eigentümers verstößt gegen das Gesetz. Das Tool wurde entwickelt, um Cybersicherheitsexperten zu helfen, Schwachstellen zu erkennen und potenzielle Angriffe zu verhindern.

Vielen Dank für Ihre Aufmerksamkeit. Wie immer – bei Fragen schreiben Sie bitte an meine E-Mail oder in Telegram.

Python Telebot – Abfrage der Telefonnummer des Benutzers

Hallo zusammen! Eigentlich ist die Essenz des Problems im Titel des Beitrags angegeben: wie man das Telefon eines Benutzers mit Python und Telebot-Bibliothek zu bekommen. Let’s figure it out 😉

Unten finden Sie ein Beispiel für ein funktionierendes Jahr, das Ihnen hoffentlich helfen wird 🙂 Wenn du Fragen hast, kannst du sie gerne an email oder Telegram stellen.

import telebot #Connected the Telebot library - to work with Telegram
from telebot import types #Verbundene Add-ons
import config #Angeschlossen die Bibliothek Config, mit deren Hilfe wir das Token nicht im Code des Programms ;) sondern in der Datei config.py speichern können. Wichtig: diese Datei muss sich im gleichen Verzeichnis wie der Code befinden!
bot = telebot.TeleBot(config.token) #Verbinden des Tokens
@bot.message_handler(commands=['number']) #Deklariert eine Verzweigung, um mit dem number Befehl zu arbeiten
def phone(message):
keyboard = types.ReplyKeyboardMarkup(row_width=1, resize_keyboard=True) #Tastatur anhängen
button_phone = types.KeyboardButton(text="Telefon senden", request_contact=True) #Bestimmen Sie den Namen der Schaltfläche, die dem Benutzer angezeigt wird
keyboard.add(button_phone) #Hinzufügen dieser Schaltfläche
bot.send_message(message.chat.id, 'Telefonnummer', reply_markup=keyboard) #Duplizieren Sie mit einer Nachricht, dass der Benutzer nun seine Telefonnummer an den Bot sendet (nur für den Fall, aber es ist nicht notwendig).
@bot.message_handler(content_types=['contact']) #Deklariert den Zweig, in dem wir die Logik für den Fall schreiben, dass der Benutzer sich entscheidet, die Telefonnummer zu senden :)
def contact(nachricht):
if message.contact is not None: #Wenn das gesendete Kontakt Objekt nicht null ist
print(message.contact) #Kontaktdaten in unserem Panel anzeigen. Und im Allgemeinen kann man sie zum Beispiel speichern oder etwas anderes tun.

Speziell für Sie – ein Video mit einer visuelleren Anleitung:

Wie Sie sehen können – alles ist sehr, sehr einfach 🙂
Vielen Dank für Ihre Aufmerksamkeit!

P.S. Auf meinem Youtube-Kanal stellte einer meiner Abonnenten eine interessante Frage: Wie kann man die Tastatur ausblenden, nachdem man eine Telefonnummer gesendet hat? Ich wusste keine Antwort auf die Frage 🙁 Aber einen Tag später gab mir der Abonnent eine Lösung, die ich hier teile:

Tastatur = types.ReplyKeyboardRemove()
bot.send_message(message.chat.id, msg, reply_markup=keyboard)

P.P.S. Vor nicht allzu langer Zeit tauchte eine Frage auf – wie kann man z.B. die Telefonnummer, die man von einem Benutzer erhalten hat, in verdaulicher Form irgendwo in einer Gruppe versenden? Das ist ganz einfach:
1. Fügen Sie einen Bot hinzu, der die erhaltenen Informationen an die gewünschte Gruppe mit Administrator-Rechten senden soll
2. Nehmen Sie im Code des Bots die folgenden Änderungen an der Funktion def contact(message) vor:

@bot.message_handler(content_types=['contact'])
def contact(message):
Wenn message.contact nicht None ist:
print(nachricht.kontakt)
print(type(nachricht.kontakt))
print('Name: ' + str(message.contact.first_name))
text = 'Benutzer: ' + message.contact.first_name + ': Telefon: ' + message.contact.phone_number
bot.send_message(id_channel, text)

Eigentlich können Sie alles ausgeben, was Sie wollen – verwenden Sie einfach den Namen des erforderlichen Feldes im Schema:

'phone_number': '***', 'first_name': '***', 'last_name': '***', 'user_id': '***', 'vcard': '***'

wobei die Sternchen die vollständigen Kontaktangaben des Nutzers verbergen.