Déchiffrage d'un code python

-
Bonjour,

Je voudrais comprendre ce que ce code fait s'il vous plait.
J'ai compris qu'il ouvre une connexion avec une machine en créant un socket dans lequel il va utiliser un ip et port puis il va envoyer un message à cette machine. Mais ce que je comprend pas. C'est le msg.

Ce message comprend une valeur qui sera décodée en hexa mais pourquoi ce message va faire qu'en l’envoyant à cette machine, cette dernière sera bloquée. Autrement dit ce message va créer un déni de service un DOS sur la machine.
   # socket setup
    s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    s.connect((rhost, rport))
    msg = "00000000000a005a002800300000ff00".decode('hex')
    s.send(msg)
    s.close()
Afficher la suite 

1 réponse

Messages postés
27495
Date d'inscription
mercredi 2 mai 2007
Statut
Modérateur
Dernière intervention
10 décembre 2019
5726
Merci de votre retour.

C'est de ce site que j'ai pris le code mais j'aurais voulu comprendre ce que fait que la machine se bloque quand on lui envoie le msg
msg = "00000000000a005a002800300000ff00".decode('hex')
jee pee
Messages postés
27495
Date d'inscription
mercredi 2 mai 2007
Statut
Modérateur
Dernière intervention
10 décembre 2019
5726 > salwaalem -
c'est écrit, et c'est un bug, corrigé, qui n'affecte que cette machine automate particulière

When a UMAS command is sent using function code 0x28, it is possible to make the device enter a non-recoverable fault state, causing a denial-of-service condition. This can be completed by specifying certain block numbers and providing a large value.

The known affected block numbers are 0x00 and 0x30-0x3f

In the non-recoverable fault state the CPU has entered an error mode where all remote communications have been stopped, process logic stops execution, and the device requires a physical power cycle to regain functionality.
Ah Ok. Je comprend mieux.
Merci beaucoup
Commenter la réponse de jee pee