Welcome to Mantis OpenIOC Importer’s documentation!¶
Contents:
Mantis OpenIOC Importer¶
A module implementing import of OpenIOC indicator XML files for the Mantis Cyber Threat Intelligence Mgmt. Framework.
Documentation¶
The full documentation is at http://django-mantis-openioc-importer.readthedocs.org.
Quickstart¶
Please refer to the quickstart information of MANTIS, available at http://django-mantis.readthedocs.org.
Once you are set up with MANTIS, you can use the Django manage.py to import OpenIOC indicators into your system as follows:
$ python manage.py mantis_openioc_import <xml-file> <xml-file> ... [--settings=<path_to_your_django_settings_module]
Here is the output of --help for mantis_openioc_import:
Usage: manage.py mantis_openioc_import [options] xml-file xml-file ... (you can use wildcards)
Imports OpenIOC XML indicator files of specified paths into DINGO
Options:
-v VERBOSITY, --verbosity=VERBOSITY
Verbosity level; 0=minimal output, 1=normal output, 2=verbose output, 3=very verbose output
--settings=SETTINGS The Python path to a settings module, e.g. "myproject.settings.main".
If this isn't provided, the DJANGO_SETTINGS_MODULE environment variable will be used.
--pythonpath=PYTHONPATH
A directory to add to the Python path, e.g. "/home/djangoprojects/myproject".
--traceback Print traceback on exception
-m MARKING_JSON, --marking_json=MARKING_JSON
File with json representation of information of marking to be associated with imports.
-p PLACEHOLDER_FILLERS, --marking_pfill=PLACEHOLDER_FILLERS
Key-value pairs used to fill in placeholders in marking as described in marking file.
-n IDENTIFIER_NS_URI, --id_namespace_uri=IDENTIFIER_NS_URI
URI of namespace used to qualify the identifiers of the created information objects.
--version show program's version number and exit
-h, --help show this help message and exit
Acknowledgments¶
The basic layout for this Django app with out-of-the-box configuration of setup.py for easy build, submission to PyPi, etc., and Sphinx documentation tree was generated with Audrey Roy’s excellent Cookiecutter and Daniel Greenfield’s cookiecutter-djangopackage template.
Installation¶
At the command line:
$ pip install django-mantis-openioc-importer
Once this is done, you can include mantis_openioc_importer as app in your Django settings, together with the apps dingos and mantis_core on which mantis_stix_importer depends:
INSTALLED_APPS_list = [
...,
'dingos',
'mantis_core',
'mantis_openioc_importer',
...
]
Usage¶
Run the Django help command to view the commands this app makes available via the command line. Doing --help on any of these commands provides you with additional information about each command.
Contributing¶
Contents
Contributions are welcome, and they are greatly appreciated! Every little bit helps, and credit will always be given.
You can contribute in many ways.
The issue tracker for the Django Mantis OpenIOC Importer¶
The further development of the Mantis OpenIOC importer will occur within the further development of the Django Mantis Cyber-Threat Intelligence Management Framework. So, please use https://github.com/siemens/django-mantis/issues as issue tracker for bugs, feature requests and other feedback regarding django-mantis-openioc-importer.
Types of Contributions¶
Report Bugs¶
Report bugs at https://github.com/siemens/django-mantis/issues.
If you are reporting a bug, please include:
- Your operating system name and version.
- Any details about your local setup that might be helpful in troubleshooting.
- Detailed steps to reproduce the bug.
Fix Bugs¶
Look through the GitHub issues (https://github.com/siemens/django-mantis/issues) for bugs. Anything tagged with “bug” is open to whoever wants to implement it.
Implement Features¶
Look through the GitHub issues (https://github.com/siemens/django-mantis/issues) for features. Anything tagged with “feature” is open to whoever wants to implement it.
Write Documentation¶
Mantis OpenIOC Importer could always use more documentation, whether as part of the official Mantis OpenIOC Importer docs, in docstrings, or even on the web in blog posts, articles, and such.
Submit Feedback¶
The best way to send feedback is to file an issue at https://github.com/siemens/django-mantis/issues.
If you are proposing a feature:
- Explain in detail how it would work.
- Keep the scope as narrow as possible, to make it easier to implement.
- Remember that this is a volunteer-driven project, and that contributions are welcome :)
Get Started!¶
Ready to contribute? Here’s how to set up django-mantis-openioc-importer for local development.
Fork the django-mantis-openioc-importer repo on GitHub.
Clone your fork locally:
$ git clone git@github.com:your_name_here/django-mantis-openioc-importer.git
Install your local copy into a virtualenv. Assuming you have virtualenvwrapper installed, this is how you set up your fork for local development:
$ mkvirtualenv django-mantis-openioc-importer $ cd django-mantis-openioc-importer/ $ python setup.py develop
Create a branch for local development:
$ git checkout -b name-of-your-bugfix-or-feature
Now you can make your changes locally.
Commit your changes and push your branch to GitHub:
$ git add . $ git commit -m "Your detailed description of your changes." $ git push origin name-of-your-bugfix-or-feature
Submit a pull request through the GitHub website.
Pull Request Guidelines¶
Before you submit a pull request, check that it meets these guidelines:
- The pull request should include tests.
- If the pull request adds functionality, the docs should be updated. Put your new functionality into a function with a docstring, and add the feature to the list in README.rst.
- The pull request should work for Python 2.7.
Credits¶
Development Lead¶
- Siemens <mantis.cert@siemens.com>
Contributors¶
None yet. Why not be the first?