diff --git a/cheatsheets/OtherTools.md b/cheatsheets/OtherTools.md index 89e885a..9ac04b1 100644 --- a/cheatsheets/OtherTools.md +++ b/cheatsheets/OtherTools.md @@ -237,16 +237,30 @@ for d in prowler-output-*.json ; do tail $d -n +1 | jq -r '.[] | select (.Severi done ``` -Sort all services in Prowler output for looping to pull criticals for each individually +Sort all services in Prowler output for looping to pull risk ratings for each individually ``` -for d in prowler-output-*.json ; do tail $d -n +1 | jq -r '.[].ServiceName' | sort -u >> servicesunsorted.txt; done +for d in prowler-output-*.json ; do tail $d -n +1 | jq -r '.[].resources[].group.name' | sort -u >> servicesunsorted.txt; done sort -u servicesunsorted.txt > services.txt while read -r p; do for d in prowler-output-*.json; do echo $p; echo $d - tail "$d" -n +1 | jq -r --arg service "$p" '.[] | select(.ServiceName == $service and .Severity == "critical")' >> "$p-criticals.txt" + tail "$d" -n +1 | jq -r --arg service "$p" '.[] | select(.resources[].group.name == $service and .severity == "Critical")' >> "$p-criticals.txt" + done +done < services.txt + +while read -r p; do + for d in prowler-output-*.json; do + echo $p; echo $d + tail "$d" -n +1 | jq -r --arg service "$p" '.[] | select(.resources[].group.name == $service and .severity == "High")' >> "$p-high.txt" + done +done < services.txt + +while read -r p; do + for d in prowler-output-*.json; do + echo $p; echo $d + tail "$d" -n +1 | jq -r --arg service "$p" '.[] | select(.resources[].group.name == $service and .severity == "Medium")' >> "$p-medium.txt" done done < services.txt ```