Moved JSON parsing to exploit.py

This commit is contained in:
Shay Nehmad 2019-09-02 11:40:22 +03:00
parent 2269e78888
commit fec0791c7b
2 changed files with 10 additions and 14 deletions

View File

@ -4,6 +4,7 @@ import dateutil
from monkey_island.cc.database import mongo from monkey_island.cc.database import mongo
from monkey_island.cc.encryptor import encryptor from monkey_island.cc.encryptor import encryptor
from monkey_island.cc.models import Monkey
from monkey_island.cc.services.edge import EdgeService from monkey_island.cc.services.edge import EdgeService
from monkey_island.cc.services.node import NodeService from monkey_island.cc.services.node import NodeService
from monkey_island.cc.services.telemetry.processing.utils import get_edge_by_scan_or_exploit_telemetry from monkey_island.cc.services.telemetry.processing.utils import get_edge_by_scan_or_exploit_telemetry
@ -11,11 +12,17 @@ from monkey_island.cc.services.telemetry.zero_trust_tests.machine_exploited impo
def process_exploit_telemetry(telemetry_json): def process_exploit_telemetry(telemetry_json):
edge = get_edge_by_scan_or_exploit_telemetry(telemetry_json)
encrypt_exploit_creds(telemetry_json) encrypt_exploit_creds(telemetry_json)
edge = get_edge_by_scan_or_exploit_telemetry(telemetry_json)
update_edge_info_with_new_exploit(edge, telemetry_json) update_edge_info_with_new_exploit(edge, telemetry_json)
update_node_credentials_from_successful_attempts(edge, telemetry_json) update_node_credentials_from_successful_attempts(edge, telemetry_json)
test_machine_exploited(telemetry_json)
test_machine_exploited(
current_monkey=Monkey.get_single_monkey_by_guid(telemetry_json['monkey_guid']),
exploit_successful=telemetry_json['data']['result'],
exploiter=telemetry_json['data']['exploiter'],
target_ip=telemetry_json['data']['machine']['ip_addr'],
timestamp=telemetry_json['timestamp'])
def update_node_credentials_from_successful_attempts(edge, telemetry_json): def update_node_credentials_from_successful_attempts(edge, telemetry_json):

View File

@ -1,20 +1,9 @@
from common.data.zero_trust_consts import * from common.data.zero_trust_consts import *
from monkey_island.cc.models import Monkey
from monkey_island.cc.models.zero_trust.event import Event from monkey_island.cc.models.zero_trust.event import Event
from monkey_island.cc.models.zero_trust.finding import Finding from monkey_island.cc.models.zero_trust.finding import Finding
def test_machine_exploited(telemetry_json): def test_machine_exploited(current_monkey, exploit_successful, exploiter, target_ip, timestamp):
current_monkey = Monkey.get_single_monkey_by_guid(telemetry_json['monkey_guid'])
target_ip = telemetry_json['data']['machine']['ip_addr']
exploiter = telemetry_json['data']['exploiter']
timestamp = telemetry_json['timestamp']
exploit_successful = telemetry_json['data']['result']
create_findings_from_exploit_data(current_monkey, exploit_successful, exploiter, target_ip, timestamp)
def create_findings_from_exploit_data(current_monkey, exploit_successful, exploiter, target_ip, timestamp):
events = [ events = [
Event.create_event( Event.create_event(
title="Exploit attempt", title="Exploit attempt",