
same_srv_rate: The percentage of connections that were to the same port number, among the connections aggregated in Count.srv_count: Number of connections to the same port number as the current connection in the past two seconds.count: Number of connections to the same destination host as the current connection in the past two seconds.flowInterval: Time interval between flows in seconds.avg_flowDuration: Average flow duration in seconds.flowDuration: Flow duration in seconds.min_msg_size: minimum OPC UA message size.msg_size: OPC UA message transport size.status_errors: Number of status errors in OPC UA request responses.
service_errors: Number of service errors in OPC UA request responses. Actually, the OPC UA packets are converted to bidirectional communication flows, which are characterized by the following 32 features: Regarding the dataset generation, another python script, that implements Tshark (in this case Pyshark) was used to capture only OPC UA packets and export this traffic to a csv file format dataset. To perform the attacks mentioned, a python script is used, which implements the Scapy module for packet sniffing, injection and modification. Eavesdropping or Man-in-the-middle (MITM) attacks. The attacks selected for the malicious activities are: Anomalous behaviour is achieved with the malicious node, which injects attacks into the CPPS network, targeting one or more device nodes and the MES. This traffic includes both normal and anomalous behaviour. Also, connected to this network, is an attack node as it is assumed that the attacker already gained access to the CPPS network.Īfter setting up the CPPS testbed, a python implementation that implements Tshark was used to capture OPC UA packets and export this traffic to a csv file format dataset. On the other side, the MES only implements the OPC UA client, which subscribes all OPC UA variables from all devices in both production units. Each device implements both OPC UA server and client, where the server publish to a OPC UA variable updates regarding sensor readings and the client subscribes all OPC UA variables from all other devices in the same production unit. In this configuration, there are two production units, each one containing three devices, and one node representing a Manufacturing Execution System (MES). Regarding the CPPS testbed setup, it consists on seven nodes in the network.Each network node consist on a Raspberry Pi device, running the Python FreeOpcUa implementation. This CPPS uses OPC UA standard for horizontal and vertical communications. However, I also want to change the onclick method for the form submission button, but am running into some issues.The generation of the dataset containing OPC UA traffic was possible due to the setup and execution of a laboratory CPPS testbed.
Var amountInput = iframeDocument.getElementById("transaction_amount") ĪtAttribute("value", "100") I was easily able to populate one of the form fields using: var iframe = document.getElementById('my_iframe')
#Injecting an iframe using python mitmproxy code#
I do not have access to modify the "source", but do have access to inject code via Google Tag Manager. I am working with a page which includes an iframe containing a form.