Irritate bad actors by sending their exfiltration Telegram bots some encouraging messages.

Very easy to use. All you need is:

BOT API

CHAT ID

# OF MESSAGES

And then you can customize and/or add as many of your own messages to the messages variable in the code.


#!/usr/bin/python3

'''

Want to irritate attackers exfiltrating data via Telegram Bots?

Send them some encouragement with this script 🙃

'''

import sys, os, requests, time, random, json
from user_agent import generate_user_agent

version="365"
nombre="anonr00t"
tg=""
fp=1

def random_message():
	global nombre, version, tg
	if tg == None or tg == '':
		tg = version
	messages = [f"INTERPOL REPORT SUBMITTED v{version}  i love u - {nombre}", f"INTERPOL WARRANT: PENDING v{version}  i love u - {nombre}", f"low effort exfil...just quit v{version}  - {nombre}"]
	return random.choice(messages)
	#Use more than a few messages to avoid getting rate limit/blocked

def send_message(api, chat_id):
	global msg
	msg = random_message()
	headers = {'User-Agent': generate_user_agent(),'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8','Accept-Language': 'en-US,en;q=0.5','Connection': 'keep-alive','Upgrade-Insecure-Requests': '1','Pragma': 'no-cache','Cache-Control': 'no-cache','TE': 'Trailers'}

	if not 'bot' in api:
		api = 'bot'+str(api)
	r = requests.get(f"https://api.telegram.org/{api}/sendMessage?chat_id={chat_id}&text={msg}", headers=headers)

	if json.loads(r.content.decode()).get('description') == "Forbidden: bot was kicked from the supergroup chat" and r.status_code == 403:
		return 'KICKED'
	elif r.status_code == 400:
		if json.loads(r.content.decode()).get('description') == "Bad Request: Chat not found":
			return 'INVALID_CHAT'
		elif json.loads(r.content.decode()).get('description') == "Bad Request: Message text is empty":
			return 'TEXT_EMPTY'
	elif r.status_code == 403:
		if json.loads(r.content.decode()).get('description') == "Forbidden: Bot can't initiate":
			return 'CHAT_DENIED'
	elif r.status_code == 200:
		return 'SUCCESS'

def main():
	global msg, fp
	print(f"""\033[32;1m- - - - - - - - - - - - - - - - - - - - - - -\n\033[34m\n       Send Love To Telegram Exfil Bots 🙃\n\n Just insert Bot API, Chat ID, and the amount of love you want sent <3\n\033[32m\n- - - - - - - - - - - - - - - - - - - - - - -\n\033[0m""")
	api = input("\n\033[34m[*] \033[35mEnter Bot API:\033[37m ")
	chat_id = input("\033[34m[*] \033[35mEnter Chat ID:\033[37m ")
	times = input("\033[34m[*] \033[35mEnter How Much:\033[37m ")
	x = 0
	print('\n')
	while x < int(times)+1:
		try:
			send = send_message(api, chat_id)
			if send == 'KICKED':
				print(f"\033[34m(\033[31m{x}\033[34m/\033[31m{times}\033[34m) \033[31mBot was kicked from group \033[37m(\033[34m{chat_id}\033[37m)\033[0m")
				if fp:
					x += 1
			elif send == 'INVALID_CHAT':
				print(f"\033[34m(\033[31m{x}\033[34m/\033[31m{times}\033[34m) \033[31mInvalid Chat \033[37m(\033[34m{chat_id}\033[37m) \033[0m")
				if fp:
					x += 1
			elif send == 'TEXT_EMPTY':
				print(f"\033[34m(\033[31m{x}\033[34m/\033[31m{times}\033[34m) \033[31mInvalid Text \033[37m(\033[34m{msg}\033[37m) \033[0m")
				if fp:
					x += 1
			elif send == 'CHAT_DENIED':
				print(f"\033[34m(\033[31m{x}\033[34m/\033[31m{times}\033[34m) \033[31mSending Not Allowed \033[37m(\033[34m{chat_id}\033[37m) \033[0m")
				if fp:
					x += 1
			elif send == 'SUCCESS':
				print(f"\033[34m(\033[32m{x}\033[34m/\033[32m{times}\033[34m) \033[32mSent successfully : \033[37m(\033[34m{msg}\033[37m)\033[0m")
				time.sleep(1)
				x += 1
		except:
			print('SLEEPING')
			time.sleep(5)
			if fp:
				x += 1
			continue

main()