import datetime import requests import json import os def allowlistexechistories(url, outputjson: bool): endpoint = url + '/v1/group' print("[+] Grabbing All Policies") payload = {} headers = { "X-APIKey": os.getenv('APIKEY') } response = requests.request("POST", endpoint, headers=headers, data=payload, verify=False) parse_text = json.loads(response.text) policiesnames = [] policyids = [] for index, list in enumerate(parse_text['response']['groups'], start=1): print(f"{index}. {list['name']}") policiesnames.append(list['name']) policyids.append(list['groupid']) choice = input("Select Policy Group: ") choice = int(choice) - 1 endpoint = url + '/v1/logging/exechistories' payload_dict = { "type":[1, 2, 6, 7], "checkpoint":"68a153c23963989b484541b4", "policy": [policiesnames[choice]] } payload = json.dumps(payload_dict) print(payload) response = requests.request("POST", endpoint, headers=headers, data=payload, verify=False) if outputjson == True: return response parse_text = json.loads(response.text) for item in parse_text['response']['exechistories']: print(item['checkpoint']) print(item['datetime']) print(item['hostname']) print(item['filename']) # checkpoint_stomper(item['checkpoint'], endpoint, headers, policiesnames[choice]) def checkpoint_stomper(checkpoint, endpoint, headers, policyname): print(checkpoint) payload_dict = { "type":[1,2,6,7], "checkpoint": checkpoint, "policy":[policyname] } payload = json.dumps(payload_dict) response = requests.request("POST", endpoint, headers=headers, data=payload, verify=False) parse_text = json.loads(response.text) # Send Whole JSON Response for item in parse_text['response']['exechistories']: print("test")