Skip to content

Instantly share code, notes, and snippets.

View kmcquade's full-sized avatar

Kinnaird McQuade kmcquade

View GitHub Profile
@kmcquade
kmcquade / original.conf
Last active May 15, 2021 02:17
ZAP Full scan config
# zap-full-scan rule configuration file
# Change WARN to IGNORE to ignore rule or FAIL to fail if rule matches
# Active scan rules set to IGNORE will not be run which will speed up the scan
# Only the rule identifiers are used - the names are just for info
# You can add your own messages to each rule by appending them after a tab on each line.
0 WARN (Directory Browsing - Active/release)
10003 WARN (Vulnerable JS Library - Passive/release)
10010 WARN (Cookie No HttpOnly Flag - Passive/release)
10011 WARN (Cookie Without Secure Flag - Passive/release)
10015 WARN (Incomplete or No Cache-control Header Set - Passive/release)
resource "null_resource" "nuke" {
# Because we set this to timestamp, it *always* runs :D
triggers = {
party_like_its_jan_1_1970 = timestamp()
}
provisioner "local-exec" {
command = <<EOF
for sub in `az account list | jq -r '.[].id'`; do \
for rg in `az group list --subscription $sub | jq -r '.[].name'`; do \
#!/usr/bin/env bash
for sub in `az account list | jq -r '.[].id'`; do \
for rg in `az group list --subscription $sub | jq -r '.[].name'`; do \
az group delete --name ${rg} --subscription $sub --no-wait --yes; \
done; done;
{
"Statement": [
{
"Action": [
"appsync:ListApiKeys",
"chatbot:*",
"codecommit:GetFile",
"codecommit:GetCommit",
"codecommit:GetDifferences",
"codepipeline:PollForJobs",
{
"Statement": [
{
"Action": [
"appsync:ListApiKeys",
"chatbot:*",
"codecommit:GetFile",
"codecommit:GetCommit",
"codecommit:GetDifferences",
"cognito-idp:*",
@kmcquade
kmcquade / open-jira-ticket-v2.py
Created March 14, 2021 17:10
Revised script for Kittoh
from jira import JIRA
import click
import getpass
ISSUE_SUMMARY = "Overly permissive AWS IAM Policies in use"
ISSUE_DESCRIPTION = """As part of our security assessment, our team ran Cloudsplaining on your AWS account.
Cloudsplaining maps out the IAM risk landscape in a report, identifies where resource ARN constraints are not used, and
identifies other risks in IAM policies like Privilege Escalation, Data Exfiltration, and Resource Exposure.
{
"basics": {
"email": "[email protected]",
"image": "https://avatars.githubusercontent.com/u/3422255?s=400\u0026u=3aa6c1944134c93d3eb1500028e54826ce561f7f\u0026v=4",
"label": "Lead Security Engineer",
"location": {
"city": "San Francisco",
"countryCode": "US",
"region": "California"
},

This only works when you have the victim account ID. For this example, let's say that the victim account ID is 999988887777.

Create a test role

First, create a role that we can use for this demo. This role is in your own account.

aws iam create-role --role-name test-enumeration \
    --assume-role-policy-document '{"Version": "2012-10-17","Statement": [{"Effect": "Allow","Principal": {"Service": "ec2.amazonaws.com"},"Action": "sts:AssumeRole"}]}'
service_prefix name SOC PCI ISO FedRAMP_High FedRAMP_Moderate HIPAA HITRUST IRAP OSPAR FINMA
a4b Alexa for Business true
access-analyzer IAM Access Analyzer
account AWS Accounts true true true true true true true true true
acm AWS Certificate Manager true true true true true true true true true
acm-pca AWS Certificate Manager Private Certificate Authority
activate AWS Activate
airflow Amazon Managed Workflows for Apache Airflow
amplify AWS Amplify true true true true true true
amplifybackend AWS Amplify Admin true true true true true true
@kmcquade
kmcquade / git_clone_and_open_in_pycharm.py
Created January 9, 2021 20:32
git clones a repository into $HOME/Code/github.com/username/repository and then opens it in Pycharm, all in one command
#!/usr/bin/env python3
# git clones a repository into $HOME/Code/github.com/username/repository and then open it in Pycharm, all in one command
# Example:
"""
git_clone_open_in_pycharm.py -u [email protected]:pyupio/pyup.git
# This will create $HOME/Code/github.com/username/repository
"""
import os
import subprocess
import argparse