Skip to content

Latest commit

 

History

History
24 lines (20 loc) · 2 KB

File metadata and controls

24 lines (20 loc) · 2 KB
Check Sub-check Who Completion Date Issue #'s
Logical checks Proper profile directory structure [1] * * *
JSON output review (e.g., pass/fail on ,
hardened, not hardened, edge cases, etc.)
Rony Xavier * #12#13
InSpec syntax checker * * *
Local commands focused on target not the runner [2] * * *
Quality checks Alignment (including tagging) to original
standard (i.e. STIG, CIS Benchmark, NIST Tags)
Rony Xavier * #7#16
Control robustness (can the control be improved to make it less brittle - not necessarily a blocker on initial releases) * * *
Descriptive output for findings details (review JSON for findings information that may be confusing to SCA like NilCLass, etc.) Rony Xavier * #11
Documentation quality (i.e. README)
novice level instructions including prerequisites
* * *
Consistency across other profile conventions * * *
Spelling, grammar,linting (e.g., rubocop, etc.) * * *
Removing debugging documentation and code * * *
Error handling “Profile Error” containment: “null” responses
should only happen if InSpec is run with incorrect privileges (e.g., code fails to reach a describe statement for every control. inspec check can do this. It will say no defined tests)
Rony Xavier * #6#8
Slowing the target (e.g. filling up disk, CPU spikes) * * *
Check for risky commands (e.g. rm, del, purge, etc.) * * *
Check for “stuck” situations (e.g., profile goes on forever due to infinite loop, very large data sets, etc.) * * *

[1] https://www.inspec.io/docs/reference/profiles/

[2] https://www.inspec.io/docs/reference/style/ (see "Avoid Shelling Out")

Another tip is to cat all the controls into a single file so you don't have to open every individaul file and try to keep track of where you are and which one is next.