
Исправлена CVE-2019-9053
Исправлено из-за https://tryhackme.com/room/easyctf :) наслаждайтесь
Критические проблемы исправлены
Совместимость Python 2 с Python 3
Старое: print "string" Новое: print("string") Все операторы print заменены на функции print() Форматирование строк обновлено с использованием f-строк
Устаревшая библиотека optparse
Старое: import optparse Новое: import argparse Вся система разбора параметров заменена на современную argparse Добавлены корректный текст справки и значения по умолчанию
Проблемы с форматированием строк
Старое: Конкатенация строк и старый формат % Новое: Повсеместное использование f-строк (f"string {variable}") Более читаемый и эффективный код
Риск бесконечного цикла
Старое: Глобальная переменная флага могла вызывать бесконечные циклы Новое: Цикл прерывается, когда не найдено совпадение символов Улучшенная логика управления потоком
Обработка ошибок
Старое: Отсутствие обработки ошибок для сетевых запросов и операций с файлами Новое: Добавлены блоки try-except для:
Организация кода
Старое: Процедурный скрипт с глобальными переменными Новое: Объектно-ориентированный подход с классом CMSMSExploit
Преобразование в hex
Старое: hex(ord(char))[2:] - подвержено проблемам с кодировкой Новое: format(ord(char), 'x') - чище и надёжнее
Дополнительные улучшения