Git Product home page Git Product logo

800-53-server's Introduction

800-53-server

Prototype of making fisma 800-53 controls interactive and visualizing control relationships.

A running version is http://800-53.govready.com

Examples:

Goal

Create a python class that generates basic information about a FISMA 800-53 security control including:

  • Full name of control
  • Who has responsibility for control (e.g., organization or information system)
  • Listing of control dependencies (e.g., precursor controls)
  • Visual depiction of control dependencies

Warning

This is early code. The graph methods may have errors.

Requirements

800-53 security control web server

Run 800-53-server.py from root of repo on local machine

python web/800-53-server.py

Open browser and visit your local URLs:

800-53 security control from command line

Run viz_control_precursor.py from root of repo.

python lib/viz_control_precursor.py

Example output:

Resolve which control? AU-7
====================================
AU-7 :  ['AU-2', 'AU-3', 'AU-8', 'AU-14']
AU-7 - AUDIT REDUCTION AND REPORT GENERATION (information system)
AU-2 - AUDIT EVENTS (organization)
RA-3 - RISK ASSESSMENT (organization)
PM-9 - RISK MANAGEMENT STRATEGY (organization)
AU-3 - CONTENT OF AUDIT RECORDS (information system)
AU-8 - TIME STAMPS (information system)
AU-14 - SESSION AUDIT (information system)
   
Rendering precursor graph
nodes:  ['AU-7', 'AU-2', 'RA-3', 'PM-9', 'AU-3', 'AU-8', 'AU-14']
edges:  [('AU-2', 'AU-7'), ('AU-3', 'AU-7'), ('AU-8', 'AU-7'), ('AU-14', 'AU-7'), ('RA-3', 'AU-2'), ('PM-9', 'RA-3'), ('AU-2', 'AU-3'), ('AU-2', 'AU-8'), ('AU-2', 'AU-14')]
image: output/img/AU-7-precursors.png

Testing

python tests/unittest_seccontrol.py 
python tests/unittest_seccontrolviz.py 

Files

Files Description
web/800-53-server.py Launches Cherrypy-based web server providing 800-53 control info
lib/viz_control_precursor.py Generates precursor list and graphviz of precursors for security control
lib/control2json.xsl XSL transformation that creates json version of control from 800-53.xml
lib/seccontrol.py Security Control class, provides information about a security control
lib/seccontrolviz.py Security Control Graph+Viz class, provides information about a security control dependencies
lib/parsedependencies.py (study) Produces dependencies of precursor security controls based on 800-53A Assessment docs
lib/vizgraph.py (study) Generates graphviz dot file and graphic from within python
tests/* unit tests files

Useful Links

Resource Link
800-53 v4 PDF http://dx.doi.org/10.6028/NIST.SP.800-53Ar4
800-53 v4 XML current https://nvd.nist.gov/static/feeds/xml/sp80053/rev4/800-53-controls.xml
800-53 A v4 XML 06-06-2015 https://nvd.nist.gov/static/feeds/xml/sp80053/rev4/800-53a-objectives.xml
800-53 Assessment Cases (2010) http://csrc.nist.gov/groups/SMA/fisma/assessment.html

800-53-server's People

Contributors

terwilligergreen avatar

Watchers

 avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.