• [^] # Re: Je pense que tu confonds les cas où c'est nécessaire

    Posté par . En réponse au journal Genèse d'un journal. Évalué à -2.

    De nouveau non tu ne comprends rien, le checksum ou le marqueur ne changent rien

    A) Si je veux t'attaquer, je peux t'envoyer un fichier avec un mauvais champs longueur et une checksum correcte. Mais c'est de toute facon pas important parce que si le format du fichier ne comprend pas de checksum ou de marqueur, ben voila, tu ne peux pas en rajouter, tout simplement car le format n'en a pas et tu aurais des lors un fichier non conforme.

    b) Ecraser le buffer n'est pas le probleme

    [taille: 100'000][buffer compresse de 50'000 octets, qui disons va etre decompresse a 120'000 octets]
    
    

    Rien ne t'empeche de traiter ca correctement, tu sais que tu as alloue 100'000 bytes, suffit de t'assurer que tu n'ecris pas plus de 100'000 bytes quand tu decompresses et retourner une erreur si il y a des donnees restantes.

    [taille: 1'900'000'000][buffer compresse de 50'000 octets, qui disons va etre decompresse a 120'000 octets]
    
    

    Ici, avant meme de commencer a decompresser, ton malloc a de tres grandes chances de retourner NULL sur x86 et tu vas exploser immediatement si tu ne verifies pas la valeur de retour.