Updated Plugins (markdown)
parent
87bdcc079e
commit
587605e6bc
14
Plugins.md
14
Plugins.md
|
|
@ -1,17 +1,15 @@
|
|||
# Plugins
|
||||
|
||||
AutoRecon uses a plugin system to perform all port and service scanning. By default, plugins are located in the "plugins" directory. All plugins must be contained within files that have a .py extension. If a plugin file starts with an underscore, it will not get loaded by AutoRecon, making it easy to disable certain plugin files.
|
||||
AutoRecon uses a plugin system to perform all port and service scanning. By default, plugins are located in the "plugins" directory. All plugins must be contained within files that have a .py extension. If a plugin file starts with an underscore, it will not get loaded by AutoRecon, making it easy to disable certain plugin files. Each plugin file can contain multiple plugins, though by default, all plugins that come with AutoRecon have separate files.
|
||||
|
||||
Each plugin file can contain multiple plugins, and the plugin set which comes with AutoRecon groups plugins into files based on the service they run against (e.g. all the HTTP plugins are in plugins/http.py).
|
||||
|
||||
There are two types of plugin that AutoRecon supports: PortScan and ServiceScan. PortScan plugins are provided a Target object which represents a target being scanned by AutoRecon (e.g. 127.0.0.1). They are expected to perform a port / service identification scan and return a list of Service objects which represents the services running on the target. ServiceScan plugins are provided with a Service object and are expected to perform further service enumeration scans.
|
||||
There are three types of plugin that AutoRecon supports: PortScan, ServiceScan, and Report. PortScan plugins are provided a Target object which represents a target being scanned by AutoRecon (e.g. 127.0.0.1). They are expected to perform a port / service identification scan and return a list of Service objects which represents the services running on the target. ServiceScan plugins are provided with a Service object and are expected to perform further service enumeration scans. Report plugins are provided with a list of Target objects at the end of the entire scan, and can extract information about the commands run against each in order to create a report.
|
||||
|
||||
## PortScan Plugin
|
||||
|
||||
The following is an example PortScan plugin that scans the top 1000 TCP ports:
|
||||
|
||||
```python
|
||||
from autorecon import PortScan
|
||||
from autorecon.plugins import PortScan
|
||||
|
||||
class QuickTCPPortScan(PortScan):
|
||||
|
||||
|
|
@ -38,7 +36,7 @@ class QuickTCPPortScan(PortScan):
|
|||
Here is a breakdown:
|
||||
|
||||
```python
|
||||
from autorecon import PortScan
|
||||
from autorecon.plugins import PortScan
|
||||
```
|
||||
|
||||
This simply imports the PortScan class from AutoRecon, something that is required to write a valid PortScan plugin.
|
||||
|
|
@ -93,7 +91,7 @@ For this example, you do not need to worry about the Process object or stderr. I
|
|||
The following is an example ServiceScan plugin which performs a simple Curl request to a website:
|
||||
|
||||
```python
|
||||
from autorecon import ServiceScan
|
||||
from autorecon.plugins import ServiceScan
|
||||
|
||||
class Curl(ServiceScan):
|
||||
|
||||
|
|
@ -116,7 +114,7 @@ class Curl(ServiceScan):
|
|||
Here is a breakdown:
|
||||
|
||||
```python
|
||||
from autorecon import ServiceScan
|
||||
from autorecon.plugins import ServiceScan
|
||||
```
|
||||
|
||||
This simply imports the ServiceScan class from AutoRecon, something that is required to write a valid ServiceScan plugin.
|
||||
|
|
|
|||
Loading…
Reference in New Issue