Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
informer — Ein Telegramm-Massenüberwachungs-Bot in Python | Kitploit
Tools/GitHubGitHub/paulpierre/informer
OSINT (Open-Source-Intelligence)Impersonations-ToolsDatenexfiltrationInformationsbeschaffungSocial EngineeringCrawler
GitHubpaulpierre/informer

informer

Ein Telegramm-Massenüberwachungs-Bot in Python

Repository anzeigen
1.7k243vor 10 MonatenVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen
Webseite

image

Informer – Telegram-Massenüberwachung

Update 10-20-2025

  • Sicherheit: Behobene kritische Sicherheitslücke CVE-2022-1941 in mysql-connector-python
  • Sicherheit: Migration von veraltetem oauth2client zu google-auth
  • Alle Abhängigkeiten auf die neuesten sicheren Versionen aktualisiert
  • Fehler im quick_start.sh-Skript behoben (venv-Erstellung und account_id-Parameter)
  • Fehler bei der MySQL-Verbindung in Docker für plattformübergreifende Kompatibilität behoben
  • Dokumentation zur Google Sheets-Einrichtung verbessert

Update 08-23-2021

  • Auf die neueste Telethon 1.23.0 aktualisiert
  • Datenbankprobleme durch Migration zu docker-compose behoben
  • Google Spreadsheets in der Einrichtung optional gemacht
  • Sichere ENV-Dateien für die Einrichtung
  • Einfachere Einrichtung
  • docker-compose anstelle von App Engine verwendet, weil AE schlecht ist

Über

Informer (TGInformer) ist eine Bot-Bibliothek, die es Ihnen ermöglicht, sich als mehrere ECHTE Benutzer auf Telegram auszugeben und 500+ Telegram-Kanäle pro Konto zu überwachen. Details werden in einer MySQL-Datenbank, einem privaten Google Sheet und Ihrem eigenen privaten Kanal zur Analyse protokolliert.

Dies ist ein funktionierendes Proof-of-Concept-Projekt mit bekannten Fehlern. Fühlen Sie sich frei, es zu forken, zu teilen und mir eine Nachricht zu schreiben.

image

Potenzielle Geschäftsanwendungen

  • Sockenpuppen-Einsatz zum Sturz eines despotischen Regimes
  • Markenüberwachung und Stimmungsanalyse
  • Kryptowährung zu günstigen Zeitpunkten bewerben, um finanziellen Gewinn zu erzielen
  • Beeinflussung der Stimmung zu aktuellen Themen
  • Frühzeitiges Mitbekommen von Kursbewegungen
  • Analyse eines Telegram-Kanals durchführen

Funktionen

  • Betreiben Sie all Ihre Bots in der Cloud, während Sie schlafen. Unterstützung für Docker Compose

image

  • Schreiben Sie alle Benachrichtigungen in ein privates Google Sheet

image

  • Unterstützt reguläre Ausdrücke zur Schlüsselwortfilterung

  • SQLAlchemy für anbieterunabhängige Datenpersistenz

image

  • Protokollierung von kontextuellen Nachrichten- und Kanaldaten in einem privaten Kanal und einer Datenbank

  • Speichert Metainformationen über den Nachrichtenabsender, den Kanal, die Anzahl der Teilnehmer im Kanal

image

  • Automatischer Beitritt zu Kanälen aus einer CSV-Liste mit Telegram-Kanal-URLs

image

  • Beibehaltung der Sitzung beigetretener Kanäle

  • Einmal anmelden, Bot bleibt für immer eingeloggt, ohne erneute 2FA-Authentifizierung

  • Bis zu 500 Kanäle pro Konto beitreten

image

  • Verwendet ECHTE Konten, um Bot-Erkennung zu vermeiden. DIES IST KEIN TELEGRAM-BOT, sondern ein echtes automatisiertes Benutzerkonto. Dies ist eine wichtige Unterscheidung, da die offizielle Bot-API eingeschränkt ist und Bots in öffentlichen Kanälen oft eingeschränkt werden.

Voraussetzungen

Betriebssystem / Infrastruktur

  • Python 3+
  • Docker (optional)
  • Telegram (Desktop, Web oder Mobile Download: https://www.telegram.org/)
  • Burner App

Python-Pakete

  • SQLAlchemy (1.4.54)
  • sqlalchemy-migrate (0.13.0)
  • Telethon (1.36.0)
  • mysql-connector-python (8.4.0)
  • gspread (6.1.4)
  • google-auth (2.37.0) – ersetzt veraltetes oauth2client
  • python-dotenv (1.0.1)

Schnellstart

Umgebungsvariablen einrichten

Bearbeiten Sie die Datei informer.env, die alle erforderlichen Umgebungsvariablen für Informer enthält.

Die notwendigen Telegram-bezogenen Informationen erhalten Sie hier:

Telegram-App einrichten

  1. Gehen Sie zu https://my.telegram.org/auth, um Ihr Konto zu authentifizieren, indem Sie eine Telefonnummer und den Bestätigungscode angeben, der an Ihre Telefonnummer (oder Telegram) gesendet wird. image

image

  1. Klicken Sie nach der Authentifizierung auf „API Development Tools“. image

  2. Erstellen Sie eine neue Anwendung, indem Sie das unten gezeigte Formular ausfüllen. image

  3. Sie sollten nun die erforderlichen Parameterwerte für die Felder TELEGRAM_API_HASH und TELEGRAM_API_APP_ID in der informer.env-Datei haben.

image

  1. Ersetzen Sie die Werte, einschließlich TELEGRAM_ACCOUNT_PHONE_NUMBER, und fahren Sie mit dem nächsten Abschnitt fort.

image

Ihre Telegram-ID ermitteln

Bisher haben wir, was Telethon und Informer benötigen, um auf die Telegram-APIs zuzugreifen. Als nächstes müssen wir die Kennungen für das Konto Ihres Bots ermitteln.

  1. Öffnen Sie Telegram und suchen Sie nach dem Benutzer userinfobot.

image

  1. Es werden mehrere angezeigt; stellen Sie sicher, dass Sie das korrekt geschriebene Konto auswählen.

image

  1. Klicken Sie auf den Benutzer. Unten sollte eine Dialogoption mit „Start“ erscheinen. Klicken Sie darauf.

image

  1. Der Bot hat einen einzigen Zweck: Ihnen die Informationen Ihres aktuellen Telegram-Kontos zurückzuspiegeln.

Sie sollten Ihren Telegram-Benutzernamen und Ihre Telegram-Konto-ID erhalten. Dies ist wichtig.

image

  1. Bearbeiten Sie die Datei informer.env und füllen Sie die Werte für TELEGRAM_ACCOUNT_ID (Ihre Telegram-Konto-ID aus dem vorherigen Schritt) und TELEGRAM_ACCOUNT_USER_NAME aus.

Optional können Sie TELEGRAM_NOTIFICATIONS_CHANNEL_ID mit Ihrem Benutzernamen oder einer Kanal-ID füllen.

  1. Stellen Sie sicher, dass TELEGRAM_ACCOUNT_PHONE_NUMBER ausgefüllt ist, da dies für die Generierung der Sitzung entscheidend ist. Informationen zum Erstellen mehrerer Konten finden Sie unten in der Burner App.

Sitzung initialisieren und authentifizieren

Stellen Sie sicher, dass Sie Python 3 ausführen, und führen Sie einfach ./quick_start.sh im Verzeichnis aus.

Sie müssen dies zuerst ausführen, um sich beim ersten Start bei Telegram zu authentifizieren und eine lokale Sitzungsdatei zu generieren.

Sie können später die Dateien für die verschiedenen Konten in app/session kopieren und über Docker bereitstellen, falls gewünscht.

image

Sie werden aufgefordert, den Authentifizierungscode einzugeben, den Sie entweder über Telegram (falls Sie sich zuvor angemeldet haben) oder per SMS erhalten haben.

image

Drücken Sie die Eingabetaste, und Ihre Sitzung sollte im Ordner app/session mit dem Dateinamen der von Ihnen angegebenen internationalen Telefonnummer und der Erweiterung .session generiert werden.

Fahren Sie mit dem nächsten Abschnitt fort, in dem wir mit Docker Compose eine Datenbank einrichten.

Benachrichtigungskanal einrichten

Dieser Schritt ist optional. Wenn Sie jedoch einen privaten Gruppenkanal erstellen und dessen Gruppen-ID erhalten möchten, gehen Sie wie folgt vor:

  • Erstellen Sie eine Gruppe (oder einen Kanal) und legen Sie sie als privat oder öffentlich fest.
  • Holen Sie sich die Telegram-URL. image

Setzen Sie die URL in der Datei informer.env unter dem Parameter TELEGRAM_NOTIFICATIONS_CHANNEL_URL.

Um die Kanal-ID zu erhalten, führen Sie einfach python3 bot.py <TELEGRAM_ACCOUNT_ID> im Verzeichnis app aus, wobei <TELEGRAM_ACCOUNT_ID> die zuvor generierte Konto-ID ist.

Wenn das Skript lädt, werden alle Kanäle angezeigt, in denen Sie sich befinden. Kopieren Sie diesen Wert und fügen Sie ihn in den Parameter TELEGRAM_NOTIFICATIONS_CHANNEL_ID der Datei informer.env ein. Beenden Sie dann das Skript. Sie sind jetzt bereit, Informer auszuführen.

Docker Compose ausführen

Nachdem Sie quick_start.sh ausgeführt haben, können Sie Docker Compose wie folgt ausführen:

  • Führen Sie ./start.sh aus, um die Docker-Container zu erstellen, die die MySQL-Datenbank enthalten.

image

  • Führen Sie ./stop.sh aus, um die Container zu stoppen.

  • Führen Sie ./clean.sh aus, um alle verwaisten Container und Volumes zu entfernen. HINWEIS: Dies setzt die Datenbank ZURÜCK und alle Daten gehen verloren.

Einige Dinge zu beachten:

Früher mussten Sie Ihre eigene MySQL-Instanz ausführen, was zu Problemen mit der Verbindungszeichenfolgen-Kompatibilität und Versionierung führte. In diesem Update wird sie einfach für Sie erstellt und auf der Festplatte gespeichert.

Außerdem wird Dozzle bereitgestellt, damit Sie Protokolle in Ihrem Browser anzeigen können. Gehen Sie einfach zu http://localhost:9999 und klicken Sie auf den Container app_informer.

Telegram-Konto mit Burner App erstellen

Wenn Sie Ihre eigene Telefonnummer nicht verwenden möchten und den Informer-Bot mit einem gewissen Maß an Anonymität betreiben möchten, können Sie die Burner App (verfügbar für iOS und Android) verwenden.

  1. Installieren Sie die Burner App

    • Android – https://play.google.com/store/apps/details?id=org.thunderdog.challegram&hl=en_US
    • iOS – https://apps.apple.com/us/app/telegram-x/id898228810

image

  1. Befolgen Sie die gleichen Schritte wie oben, indem Sie die neue Telefonnummer hier angeben: https://my.telegram.org/auth

  2. Verifizieren Sie mit Burner. Sie erhalten einen Authentifizierungscode per SMS, den Sie angeben müssen.

image

  1. Melden Sie sich bei Telegram an.

  2. Versuchen Sie, sich mit der App anzumelden, indem Sie

python3 bot.py <api_user_id> im Verzeichnis app ausführen.

  1. Da Sie sich mit Telethon anmelden, werden Sie wie zuvor nach Ihrem Authentifizierungscode im Terminal gefragt.

Dieser wurde per Telegram-Nachricht oder SMS gesendet.

Geben Sie diesen ein, und Ihre Sitzungsanmeldeinformationen werden in der unten erwähnten Sitzungsdatei gespeichert. Sie müssen sich nicht erneut authentifizieren, solange Sie die Sitzungsdatei gespeichert haben.

Sitzungen werden im Ordner app/session/ als <telefonnummer>.session gespeichert.

Wiederholen Sie den Vorgang, bis Sie alle erforderlichen Sitzungsdateien haben, und binden Sie diese einfach in Docker ein.

Skalierung von Telegram-Konten

Die Skalierung von Konten zu bewerkstelligen, war ein kleiner Albtraum, da ich einen automatisierten Prozess benötigte. Telegram verlangt die Verwendung einer echten Telefonnummer, die SMS von einer Kurzwahl empfangen kann.

Leider sind Dienste mit APIs wie Twilio aus Betrugsgründen daran gehindert, SMS von Kurzwahlen in den USA, Kanada und Großbritannien zu empfangen: https://support.twilio.com/hc/en-us/articles/223181668-Can-Twilio-numbers-receive-SMS-from-a-short-code- . Das wäre ideal gewesen – schade.

Ein ganzer Abend wurde mit diesem Vorhaben verschwendet, bis ich mich an eine großartige App erinnerte, die ich früher benutzt hatte: Burner (https://www.burnerapp.com/) – die zufälligerweise auch eine API hat (https://developer.burnerapp.com/api-documentation/incoming-webhooks/). Das bedeutet, dass Sie dynamisch Nummern generieren, ein neues Konto erstellen und alles über das Telegram-Client-SDK in Python (Telethon: https://docs.telethon.dev/en/latest/) authentifizieren können.

Das Beste daran ist, dass Burner-Nummern 14 Tage lang kostenlos sind. Telegram-Konten, die über die Client-API verbunden sind, müssen sich nur einmal anmelden und Sitzungen dauerhaft speichern. Ich habe keine Integration mit der Burner-API vorgenommen, aber der Prozess ist unkompliziert.

Telethon SDK

Der Bot basiert auf dem Telethon Python SDK (https://docs.telethon.dev/en/latest/).

Einige Dinge, die bei der Erstellung dieses Proof-of-Concept aufgefallen sind und Fallstricke:

  1. Ratenbegrenzung Telegram wendet eine strenge Ratenbegrenzung an, die FloodWaitErrors auslöst. Meine Recherchen haben ergeben, dass niemand den genauen Algorithmus kennt, aber Sie möchten, dass Ihre Backoff-Wartezeiten entsprechend skaliert werden, denn wenn Sie die unbekannte Ratenbegrenzung verletzen und überschreiten, werden die Wartezeiten exponentiell. Ich habe einen guten Mittelweg mit meinem Warteansatz gefunden.

FloodWaitErrors können auftreten, wenn Sie zu viele Anfragen an die API senden, sei es das Abfragen von Benutzerinformationen oder das Beitreten zu vielen Kanälen zu schnell.

  1. Telethon-Sitzungen Telethon erstellt eine Sitzungsdatei. Sie können den Namen der Sitzungsdatei festlegen, wenn Sie den Telethon-Client instanziieren:

TelegramClient(<sitzungsdateiname>, <api_user_id>, <api_user_hash>)

Diese Datei ist eine SQLite-Datenbank, mit der Sie eine Verbindung herstellen können. Sie fungiert als Cache und speichert historische Daten sowie Ihre Sitzungsauthentifizierungsinformationen, sodass Sie sich nicht erneut bei der 2FA von Telegram authentifizieren müssen. Beachten Sie, dass Sie sich beim ersten Gebrauch der API einmal anmelden und authentifizieren müssen.

Verwalten mehrerer Bot-Konten

Während der Bot läuft und Kanälen beitritt, sehen Sie, wie sich Ihr Client in Echtzeit aktualisiert und die neuen Kanäle anzeigt, denen Sie beigetreten sind.

image

TIPP: TelegramX ist bei weitem der bessere Client für diese Zwecke, da er mehrere Anmeldungen unterstützt. Hier herunterladen:

  • Android – https://play.google.com/store/apps/details?id=org.thunderdog.challegram&hl=en_US
  • iOS – https://apps.apple.com/us/app/telegram-x/id898228810

Google Sheets-Integration

Hinweis: Die Google Sheets-Integration ist vollständig OPTIONAL. Die Anwendung funktioniert auch ohne sie einwandfrei mit der MySQL-Datenbank.

Wenn Sie die Google Sheets-Protokollierung aktivieren möchten:

  1. Folgen Sie der detaillierten Einrichtungsanleitung in app/credentials/README.md
  2. Die Anleitung enthält aktualisierte Anweisungen zum Abrufen von Google Cloud-Dienstkonto-Anmeldeinformationen (JSON-Schlüsseldatei)
  3. Google stellt weiterhin JSON-Anmeldeinformationsdateien zur Verfügung – der Prozess hat sich seit 2020 nur geringfügig geändert

Kurzer Überblick:

  • Erstellen Sie ein Google Cloud-Projekt
  • Aktivieren Sie die Google Sheets API und Google Drive API
  • Erstellen Sie ein Dienstkonto und laden Sie den JSON-Schlüssel herunter
  • Platzieren Sie die JSON-Datei in app/credentials/google_credentials.json
  • Teilen Sie Ihr Google Sheet mit der Dienstkonto-E-Mail-Adresse

Dies ist optional, und der Bot funktioniert auch ohne.

Bekannte Fehler

  • Derzeit muss ein Kanal bereits beigetreten sein, um mit der Überwachung von Schlüsselwörtern zu beginnen. Es ist wahrscheinlich, dass Sie bot.py zweimal ausführen müssen: einmal, um Kanälen beizutreten, und ein weiteres Mal, um sie zu überwachen. Mir ist dieser offensichtliche Fehler bekannt und ich werde ihn in der nächsten Version beheben.

Offene Punkte (Todo)

  • Erstellen eines Benutzeroberflächen-Dashboards für die Bot-Verwaltung
    • Neue Konten erstellen
    • Kanäle hinzufügen/entfernen
    • Schlüsselwörter zur Überwachung hinzufügen/entfernen
    • Benachrichtigungen anzeigen
    • Web-Push-Benachrichtigungen empfangen
  • Automatisches Abfragen der Datenbank, um die zu überwachenden Schlüsselwörter im Speicher zu aktualisieren
  • Automatisierung der Erstellung von Telefonnummern über die Burner-API und den Authentifizierungscode-Prozess

Kontaktaufnahme

Fanden Sie dieses Projekt interessant? Bitte geben Sie ihm einen Stern, wenn ja.

Es wurde in zwei Tagen als Proof-of-Concept für einen Freund im Kryptowährungsbereich erstellt. Wenn Sie interessante oder lukrative Anwendungen finden, bin ich immer offen für eine Zusammenarbeit. Sie erreichen mich unter:

@paulpierre auf Twitter oder hi (at) paulpierre (dot) com

Die meisten meiner interessanten Projekte sind privat auf GitHub, aber schauen Sie sich gerne meine öffentlichen an: http://www.github.com/paulpierre oder frühere Arbeiten unter http://www.paulpierre.com

Open-Source-Lizenz


Copyright (c) 2020 Paul Pierre Hiermit wird jeder Person, die eine Kopie dieser Software und der zugehörigen Dokumentationsdateien (die „Software“) erhält, kostenlos die Erlaubnis erteilt, die Software ohne Einschränkung zu nutzen, einschließlich und ohne Einschränkung der Rechte zur Verwendung, Vervielfältigung, Änderung, Zusammenführung, Veröffentlichung, Verteilung, Unterlizenzierung und/oder zum Verkauf von Kopien der Software, und Personen, denen die Software zur Verfügung gestellt wird, dies unter den folgenden Bedingungen zu gestatten: Der obige Urheberrechtshinweis und dieser Genehmigungshinweis müssen in allen Kopien oder wesentlichen Teilen der Software enthalten sein. DIE SOFTWARE WIRD OHNE MÄNGELGEWÄHR UND OHNE JEGLICHE AUSDRÜCKLICHE ODER STILLSCHWEIGENDE GEWÄHRLEISTUNG BEREITGESTELLT, EINSCHLIESSLICH, ABER NICHT BESCHRÄNKT AUF DIE GEWÄHRLEISTUNG DER MARKTGÄNGIGKEIT, DER EIGNUNG FÜR EINEN BESTIMMTEN ZWECK UND DER NICHTVERLETZUNG VON RECHTEN DRITTER. IN KEINEM FALL SIND DIE AUTOREN ODER URHEBERRECHTSINHABER HAFTBAR FÜR JEGLICHE ANSPRÜCHE, SCHÄDEN ODER ANDERE VERPFLICHTUNGEN, OB AUS VERTRAG, UNERLAUBTER HANDLUNG ODER ANDERWEITIG, DIE SICH AUS ODER IM ZUSAMMENHANG MIT DER SOFTWARE ODER DER NUTZUNG ODER ANDEREN GESCHÄFTEN MIT DER SOFTWARE ERGEBEN.

Tool herunterladen