├── .env ├── .gitignore ├── Dockerfile ├── LICENSE ├── README.md ├── TODO.md ├── blueprints ├── access.py ├── assessment.py ├── assessment_export.py ├── assessment_import.py ├── assessment_utils.py ├── testcase.py └── testcase_utils.py ├── compose.yml ├── custom ├── knowledgebase │ └── T1003.yaml ├── reports │ └── sample.docx └── testcases.json ├── entrypoint.sh ├── flask.cfg ├── model.py ├── pops-backup.py ├── purpleops.py ├── requirements.txt ├── seeder.py ├── static ├── images │ ├── demo.gif │ ├── logo.ico │ └── logo.png ├── scripts │ ├── access.js │ ├── access.random_pass.js │ ├── assessment.js │ ├── assessment.stats.js │ ├── assessments.js │ ├── bootstrap-select.min.js │ ├── bootstrap-table-cookie.min.js │ ├── bootstrap-table-filter-control.min.js │ ├── bootstrap-table.min.js │ ├── bootstrap.bundle.min.js │ ├── jquery.min.js │ ├── popper.min.js │ └── testcase.js └── style │ ├── bootstrap-icons.css │ ├── bootstrap-select.min.css │ ├── bootstrap-table.min.css │ ├── bootstrap.min.css │ ├── bootstrap.min.css.map │ ├── bootstrappulse.min.css │ └── fonts │ └── bootstrap-icons.woff2 ├── templates ├── access.html ├── access_modals.html ├── assessment.html ├── assessment_hexagons.svg ├── assessment_modals.html ├── assessment_navigator.html ├── assessment_stats.html ├── assessments.html ├── assessments_modals.html ├── login.html ├── macros.html ├── master.html ├── master_modals.html ├── mfa_register.html ├── mfa_verify.html ├── password_change.html ├── testcase.html ├── testcase_blue.html ├── testcase_modals.html └── testcase_red.html └── utils.py /.env: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/.env -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/.gitignore -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/Dockerfile -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/README.md -------------------------------------------------------------------------------- /TODO.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/TODO.md -------------------------------------------------------------------------------- /blueprints/access.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/blueprints/access.py -------------------------------------------------------------------------------- /blueprints/assessment.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/blueprints/assessment.py -------------------------------------------------------------------------------- /blueprints/assessment_export.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/blueprints/assessment_export.py -------------------------------------------------------------------------------- /blueprints/assessment_import.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/blueprints/assessment_import.py -------------------------------------------------------------------------------- /blueprints/assessment_utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/blueprints/assessment_utils.py -------------------------------------------------------------------------------- /blueprints/testcase.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/blueprints/testcase.py -------------------------------------------------------------------------------- /blueprints/testcase_utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/blueprints/testcase_utils.py -------------------------------------------------------------------------------- /compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/compose.yml -------------------------------------------------------------------------------- /custom/knowledgebase/T1003.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/custom/knowledgebase/T1003.yaml -------------------------------------------------------------------------------- /custom/reports/sample.docx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/custom/reports/sample.docx -------------------------------------------------------------------------------- /custom/testcases.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/custom/testcases.json -------------------------------------------------------------------------------- /entrypoint.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/entrypoint.sh -------------------------------------------------------------------------------- /flask.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/flask.cfg -------------------------------------------------------------------------------- /model.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/model.py -------------------------------------------------------------------------------- /pops-backup.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/pops-backup.py -------------------------------------------------------------------------------- /purpleops.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/purpleops.py -------------------------------------------------------------------------------- /requirements.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/requirements.txt -------------------------------------------------------------------------------- /seeder.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/seeder.py -------------------------------------------------------------------------------- /static/images/demo.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/static/images/demo.gif -------------------------------------------------------------------------------- /static/images/logo.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/static/images/logo.ico -------------------------------------------------------------------------------- /static/images/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/static/images/logo.png -------------------------------------------------------------------------------- /static/scripts/access.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/static/scripts/access.js -------------------------------------------------------------------------------- /static/scripts/access.random_pass.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/static/scripts/access.random_pass.js -------------------------------------------------------------------------------- /static/scripts/assessment.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/static/scripts/assessment.js -------------------------------------------------------------------------------- /static/scripts/assessment.stats.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/static/scripts/assessment.stats.js -------------------------------------------------------------------------------- /static/scripts/assessments.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/static/scripts/assessments.js -------------------------------------------------------------------------------- /static/scripts/bootstrap-select.min.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/static/scripts/bootstrap-select.min.js -------------------------------------------------------------------------------- /static/scripts/bootstrap-table-cookie.min.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/static/scripts/bootstrap-table-cookie.min.js -------------------------------------------------------------------------------- /static/scripts/bootstrap-table-filter-control.min.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/static/scripts/bootstrap-table-filter-control.min.js -------------------------------------------------------------------------------- /static/scripts/bootstrap-table.min.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/static/scripts/bootstrap-table.min.js -------------------------------------------------------------------------------- /static/scripts/bootstrap.bundle.min.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/static/scripts/bootstrap.bundle.min.js -------------------------------------------------------------------------------- /static/scripts/jquery.min.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/static/scripts/jquery.min.js -------------------------------------------------------------------------------- /static/scripts/popper.min.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/static/scripts/popper.min.js -------------------------------------------------------------------------------- /static/scripts/testcase.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/static/scripts/testcase.js -------------------------------------------------------------------------------- /static/style/bootstrap-icons.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/static/style/bootstrap-icons.css -------------------------------------------------------------------------------- /static/style/bootstrap-select.min.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/static/style/bootstrap-select.min.css -------------------------------------------------------------------------------- /static/style/bootstrap-table.min.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/static/style/bootstrap-table.min.css -------------------------------------------------------------------------------- /static/style/bootstrap.min.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/static/style/bootstrap.min.css -------------------------------------------------------------------------------- /static/style/bootstrap.min.css.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/static/style/bootstrap.min.css.map -------------------------------------------------------------------------------- /static/style/bootstrappulse.min.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/static/style/bootstrappulse.min.css -------------------------------------------------------------------------------- /static/style/fonts/bootstrap-icons.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/static/style/fonts/bootstrap-icons.woff2 -------------------------------------------------------------------------------- /templates/access.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/templates/access.html -------------------------------------------------------------------------------- /templates/access_modals.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/templates/access_modals.html -------------------------------------------------------------------------------- /templates/assessment.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/templates/assessment.html -------------------------------------------------------------------------------- /templates/assessment_hexagons.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/templates/assessment_hexagons.svg -------------------------------------------------------------------------------- /templates/assessment_modals.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/templates/assessment_modals.html -------------------------------------------------------------------------------- /templates/assessment_navigator.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/templates/assessment_navigator.html -------------------------------------------------------------------------------- /templates/assessment_stats.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/templates/assessment_stats.html -------------------------------------------------------------------------------- /templates/assessments.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/templates/assessments.html -------------------------------------------------------------------------------- /templates/assessments_modals.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/templates/assessments_modals.html -------------------------------------------------------------------------------- /templates/login.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/templates/login.html -------------------------------------------------------------------------------- /templates/macros.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/templates/macros.html -------------------------------------------------------------------------------- /templates/master.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/templates/master.html -------------------------------------------------------------------------------- /templates/master_modals.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/templates/master_modals.html -------------------------------------------------------------------------------- /templates/mfa_register.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/templates/mfa_register.html -------------------------------------------------------------------------------- /templates/mfa_verify.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/templates/mfa_verify.html -------------------------------------------------------------------------------- /templates/password_change.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/templates/password_change.html -------------------------------------------------------------------------------- /templates/testcase.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/templates/testcase.html -------------------------------------------------------------------------------- /templates/testcase_blue.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/templates/testcase_blue.html -------------------------------------------------------------------------------- /templates/testcase_modals.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/templates/testcase_modals.html -------------------------------------------------------------------------------- /templates/testcase_red.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/templates/testcase_red.html -------------------------------------------------------------------------------- /utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CyberCX-STA/PurpleOps/HEAD/utils.py --------------------------------------------------------------------------------