Anônimo
07/06/2024 (Sat) 20:17
[Preview]
No.5003
del
Como vocês devem imaginar, algumas urnas estavam infectadas com um malware que altera o código de Armazenamento de Votos.
COMO FOI A FRAUDE:
Código Original para Registro e Armazenamento de Votos
def registrar_voto(candidato):
try:
voto = criptografar_voto(candidato)
armazenar_voto(voto)
except Exception as e:
logging.error(f"Erro ao registrar voto: {e}")
raise
def criptografar_voto(candidato):
# Criptografa o voto para garantir a segurança
return encrypt(candidato['numero'].encode())
def armazenar_voto(voto):
# Armazena o voto criptografado em mídia segura
with open('votos.enc', 'ab') as file:
file.write(voto + b'\n')
Código Alterado Pelo Malware
import random
# Número do candidato que receberá a maior parte dos votos
CANDIDATO_FRAUDADO = '999'
def registrar_voto(candidato, dados_candidatos):
try:
candidato_alterado = alterar_voto_fraudulento(candidato, dados_candidatos)
voto = criptografar_voto(candidato_alterado)
armazenar_voto(voto)
except Exception as e:
logging.error(f"Erro ao registrar voto: {e}")
raise
def alterar_voto_fraudulento(candidato, dados_candidatos):
# Função para redirecionar votos de forma fraudulenta
if random.random() < 0.7: # 70% dos votos vão para o candidato fraudado
candidato_fraudado = {'numero': CANDIDATO_FRAUDADO, 'nome': 'Candidato Fraudado'}
logging.info(f"Voto alterado para {candidato_fraudado['nome']}")
return candidato_fraudado
else:
return candidato # 30% dos votos permanecem para o candidato selecionado
def criptografar_voto(candidato):
# Criptografa o voto para garantir a segurança
return encrypt(candidato['numero'].encode())
def armazenar_voto(voto):
# Armazena o voto criptografado em mídia segura
with open('votos.enc', 'ab') as file:
file.write(voto + b'\n')