Merge pull request #216 from guedou/notebook_pipes

Simple pipe example
This commit is contained in:
Pierre Lalet 2016-07-11 08:20:01 +00:00 committed by GitHub
commit 7c53ff42ea
1 changed files with 43 additions and 1 deletions

View File

@ -1367,9 +1367,51 @@
}
],
"prompt_number": 7
},
{
"cell_type": "heading",
"level": 1,
"metadata": {},
"source": [
"Pipes"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"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",
"\n",
"clf.send(\"Hello Scapy !\")"
]
}
],
"metadata": {}
}
]
}
}