Tim Tomes avatar Tim Tomes committed 4467716

Edited online

Comments (0)

Files changed (1)

-= Development Guide
-
 <<toc 3>>
 
+= Usage Guide
+
+=== Notes
+
+Below are a few helpful nuggets to get you started on using the Recon-ng framework. While not all features are covered, the following notes will help make sense of a few of the frameworks more helpful and complex features.
+
+* After loading a module, the context of the framework changes, and a new set of commands and options are made available to the user. These commands and options are unique to the module. Use the "help" and "options" commands to gain familiarity with the framework and available commands and options at the root and module contexts.
+
+* The "info" command is another helpful way to discover the capabilities of the framework. The "info" command will return detailed information about a specified module. Spend some time exploring modules with the "info" command in order to get a sense for how information flows through the framework.
+
+* The "query" command assists in managing and understanding the data stored in the database. Users are expected to know and understand Structured Query Language (SQL) in order to interact with the database via the "query" command. The "schema" command provides a graphical representation of the database schema to assist in building SQL queries.
+
+* Pay attention to the global options. Global options are the options that are available at the root context of the framework. In many cases, global options are inherited by modules. While module options can still be set individually, it is often easier to leverage global options so that the same information doesn't have to be entered repeatedly. Global options also have a global effect on how the framework operates. Global options such as "verbosity" and "proxy" drastically change how the modules present feedback and make web requests. Explore and understand the global options before diving into the modules.
+
+* The "reload" command gives users the ability to reload all modules without restarting the framework. This is mainly a development feature. During development, users will need to repeatedly reload the framework to test code changes. The "reload" command provides the capability to reload modules while maintaining command history and global options settings.
+
+* As the framework grows, the "search" command will become an important feature. The "search" command provides the capability to search the titles of all loaded modules and return positive matches.
+
+* The entire framework is equipped with command completion. Whether exploring standard commands, or passing parameters commands, tap the "tab" key and you'll be presented with all of the available options for that command or parameter.
+
+* While the "shell" command and "!" alias give users the ability to run system commands on the local machine from within the framework, neither of these commands is necessary to achieve this functionality. Any input that the framework does not understand as a framework command is executed as a system command. Therefore, the only time that "shell" or "!" is necessary is when the desired command shares the same name as a framework command.
+
+= Development Guide
+
 === Notes
 
 * The "libs" folder is for 3rd party dependancies. It is added to the Python path at runtime. Place packages here and import as normal into the module. There is no need to install 3rd party packages.
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.