"Pipes are an advanced Scapy feature that aims sniffing, modifying and printing packets. The API provides several buildings blocks. All of them, have high entries and exits (>>) as well as low (>) ones.\n",
"\n",
"For example, the `CliFeeder` is used to send message from the Python command line to a low exit. It can be combined to the `InjectSink` that reads message on its low entry and inject them to the specified network interface. These blocks can be combined as follows:"
]
},
{
"cell_type": "raw",
"metadata": {},
"source": [
"# Instanciate the blocks\n",
"clf = CLIFeeder()\n",
"ijs = InjectSink(\"enx3495db043a28\")\n",
"\n",
"# Plug blocks together\n",
"clf > ijs\n",
"\n",
"# Create and start the engine\n",
"pe = PipeEngine(clf)\n",
"pe.start()"
]
},
{
"cell_type": "raw",
"metadata": {},
"source": [
"Packet can be sent using the following command on the prompt:\n",