
Risolto CVE-2019-9053
Risolto grazie a https://tryhackme.com/room/easyctf :) buon divertimento Problemi critici risolti
Prima: print "string" Nuovo: print("string") Modificati tutti gli statement print in funzioni print() Aggiornata la formattazione delle stringhe per usare le f-string
Prima: import optparse Nuovo: import argparse Sostituito l'intero sistema di parsing delle opzioni con il moderno argparse Aggiunti testi di help appropriati e valori predefiniti
Prima: concatenazione di stringhe e vecchia formattazione % Nuovo: f-string ovunque (f"string {variable}") Più leggibile ed efficiente
Prima: la variabile flag globale poteva causare cicli infiniti Nuovo: il ciclo si interrompe quando non viene trovata alcuna corrispondenza di carattere Migliore logica di controllo del flusso
Prima: nessuna gestione degli errori per richieste di rete o operazioni sui file Nuovo: aggiunti blocchi try-except per:
requests.exceptions.RequestException FileNotFoundError KeyboardInterrupt Eccezioni generali
Prima: script procedurale con variabili globali Nuovo: approccio orientato agli oggetti con la classe CMSMSExploit
Migliore incapsulamento Più facile da mantenere e debuggare Componenti riutilizzabili
Prima: hex(ord(char))[2:] - soggetto a problemi di codifica Nuovo: format(ord(char), 'x') - più pulito e più affidabile
Aggiunto il parametro --time per ritardi configurabili (predefinito: 1 secondo) Migliore output del terminale con funzione di pulizia schermo Feedback di avanzamento ogni 100 parole durante il cracking Timeout appropriato per le richieste HTTP (10 secondi) Supporto alla codifica UTF-8 per la lettura delle wordlist Migliori informazioni di aiuto/uso