• Курсы Академии Кодебай, стартующие в мае - июне, от команды The Codeby

    1. Цифровая криминалистика и реагирование на инциденты
    2. ОС Linux (DFIR) Старт: 16 мая
    3. Анализ фишинговых атак Старт: 16 мая Устройства для тестирования на проникновение Старт: 16 мая

    Скидки до 10%

    Полный список ближайших курсов ...

Статья Простой спаммер на Python - забавы лишь ради

Вечер в хату чуваки и тянки!

1. Предисловие

Сегодня будем писать простенький скрипт на Питоне, который будет проводить спам атаку в сторону нашей жертвы.
Механизм работы кода прост, он пишет выбранное нами слово и нажимая 'Enter' отправляет его нашей жертве.
Инструкция написана так, чтобы даже ребенок понимал каждый шаг, так что особых знаний тут не надо, кроме умения пользоваться мышкой и клавиатурой.

2. Подготовка

Сначала создадим папку и там же два блокнота, один с них сохраняем, дав название "script.py", второй называем, как "text.txt".
В первый файл будем писать наш код, в второй файл вставим текст на ваш выбор (ТОЛЬКО НА ЛАТИНИЦЕ).

3. Приступаем

Импортируем модули для автоматизации и заморозки сценария:

Python:
import time # Модуль для работы с временем.
import pyautogui # Модуль для управления мышью и клавиатурой, точнее главный модуль в нашем программном коде.

Модуль "Time" нужен нам для того, чтобы мы успели активировать поле ввода, прежде чем скрипт начнет спамить.

Теперь создаем первую функцию, роль которой "стрелять" одним сообщением N-ое количество раз:

Python:
def SendMessage():
    time.sleep(2) # Замораживает скрипт на 2 секунды, чтобы мы успели активировать поле ввода.
    message = "U ARE UGLY" # Сообщение которое мы хотим отправлять пишем в кавычках.
    iterations = 1000 # 1000 раз отправляет данное сообщение.

    for i in range(iterations):
        pass

    while iterations > 0:
        iterations -= 1
 
        pyautogui.typewrite(message.strip()) # Пишет слово/текст написанный в переменной "message"
        pyautogui.press('enter') # и нажимая Enter, отправляет его нашей "жертве".
    print("Вся обойма попала в нашу жертву!")

Затем создаем вторую функцию, которая уже отправляет текст вписанный в наш блокнот:

Python:
def SendText():
    time.sleep(2)
    with open('text.txt') as f: # Открывает блокнот с названием text.txt (документ с содержанием того, что мы хотим отправлять).
        lines = f.readlines()
    for line in lines:
        pyautogui.typewrite(line.strip()) # В этой функции оно будет писать текст с каждой строки
        pyautogui.typewrite('enter') # и так же отправлять его "жертве".
    print("Дело сделано, осталось успокоить нашу жертву ^_^")

Подходим уже к концу, осталось лишь добавить "панель управления":

Python:
print('~'*50)
print("[1] ===> Стрелять одним сообщением указанным в переменной ")
print("[2] ===> Отправлять строки из блокнота ")
print('~'*50)
option = input("[Выбирай функцию]===> ")

if option == "1":
    SendMessage()
elif option == "2":
    SendText()
else:
    print('Выбирай функция 1 или 2!')

4. Заканчиваем

Осталось лишь найти текст песни/стих или что-то там еще на английском языке и вставить его в наш "text.txt".

Для тех кому лень найти:

They say, oh my god, I see the way you shine
Take your hands, my dear, and place them both in mine
You know you stopped me dead while I was passing by
And now I beg to see you dance just one more time
Ooh I see you, see you, see you every time
And, oh my, I, I, I like your style
You, you make me, make me, make me wanna cry
And now I beg to see you dance just one more time
So they say
Dance for me
Dance for me
Dance for me oh oh oh
I've never seen anybody do the things you do before
They say
Move for me
Move for me
Move for me ay ay ay
And when you're done, I'll make you do it all again
I said, oh my god, I see you walking by
Take my hands, my dear, and look me in my eyes
Just like a monkey I've been dancing my whole life
But you just beg to see me dance just one more time
Ooh I see you, see you, see you every time
And, oh my, I, I, I,
I like your style
You, you make me, make me, make me wanna cry
And now I beg to see you dance just one more time
So they say
Dance for me
Dance for me
Dance for me oh oh oh
I've never seen anybody do the things you do before
They say
Move for me
Move for me
Move for me ay ay ay
And when you're done I'll make you do it all again
They say
Dance for me
Dance for me
Dance for me oh oh oh
I've never seen anybody do the things you do before
They say
Move for me
Move for me
Move for me ay ay ay
And when you're done I'll make you do it all again
They say
Dance for me
Dance for me
Dance for me oh oh oh
I've never seen anybody do the things you do before
They say
Move for me
Move for me
Move for me ay ay ay
And when you're done I'll make you do it all again
They say
Dance for me
Dance for me
Dance for me oh oh oh
I've never seen anybody do the things you do before
They say
Move for me
Move for me
Move for me ay ay ay
And when you're done I'll make you do it all again
All again

По неизвестным мне причинам, скрипт НЕ пишет слова или текст на кириллице, только на латинском.
Чтобы остановить работу нашей машины, нажмите на командую строку и выполните комбинацию Ctrl + C, либо просто закройте командую строку.

Какой-то серьезной опасности или важной опции данный скриптик не выполняет, больше предназначен для забавы.
Идею написания такого я взял у одного иностранца которого именно уже не помню, а сам выполняемый файл был написан мной, так что эта статья её первоисточник :D

Также приложил видео с обзором работы скрипта:


Это моя первая статья и в Python'e я лишь новичок, так что строго не судите.

"Цветная" версия скриптика:

Python:
from termcolor import colored
import subprocess
import time
import pyautogui
subprocess.call('', shell=True)

def SendMessage():
    time.sleep(2)
    # The message you want to send
    message = "U ARE UGLY"
    # How many times do i send a message?
    iterations = 5

    for i in range(iterations):
        pass

    while iterations > 0:
        iterations -= 1

        pyautogui.typewrite(message.strip())
        pyautogui.press('enter')

    print('Done, high five')
def SendScript():
    time.sleep(2)
    with open('script.txt') as f:
        lines = f.readlines()
    for line in lines:
        pyautogui.typewrite(line.strip())
        pyautogui.press('enter')

    print('It was hard, but we did it, high five.')

print(colored('~'*50, 'red'))
print(colored('Welcome bro \(O V O)/', 'green'))
print(colored("Let's make fun of someone?", 'green'))
print(colored('~'*50, 'red'))


print(colored("\t[1] ===> Resend the same message (─__─)", 'magenta' ))
print(colored("\t[2] ===> Send titles from the script \(v _ v)/", 'magenta'))

print(colored('~'*50, 'red'))
print('\n')
option = input(colored('[Choose an option]==> ', 'cyan'))

if option == "1":
    SendMessage()
elif option == "2":
    SendScript()
else:
    print(colored('Choose a function! ¯\_(-_-)_/¯', 'red'))
 
Последнее редактирование модератором:

DeathDay

Green Team
18.04.2019
159
1 118
BIT
181
Благодарю, а как мне привести его в читабельный вид? Что-то не нашел как его редактировать.

Правила оформления статей

Добавьте скриншотов, разделите на абзацы и всё прочее. Инструкции можете найти по ссылочке, что вверху. Посмотрите, как оформляют другие авторы ,не обязательно следовать чётко шлаблону, главное , дабы всё было читабельно и эстетично красиво. Авторство в первую очередь подразумевает полёт фантазии во время создания своего творения, индивидуальность, творите, созидайте - эволюцюонируйте.
 
Последнее редактирование:

Amigos_luckin

New member
03.05.2022
1
0
BIT
0
Привет, я весьма не опытный пользователь питона или python`a кому как удобнее. Я попробовал написать данный скрипт но почему то стока выдает ошибку No module named 'pyautogui' как это исправить ?
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!