Change default for victims_max_find

Move things around in config
This commit is contained in:
Itay Mizeretz 2017-10-04 14:57:56 +03:00
parent 70c4a99e83
commit 8ecb895244
4 changed files with 108 additions and 116 deletions

View File

@ -150,7 +150,7 @@ class Configuration(object):
] ]
# how many victims to look for in a single scan iteration # how many victims to look for in a single scan iteration
victims_max_find = 14 victims_max_find = 30
# how many victims to exploit before stopping # how many victims to exploit before stopping
victims_max_exploit = 7 victims_max_exploit = 7

View File

@ -89,5 +89,5 @@
"timeout_between_iterations": 10, "timeout_between_iterations": 10,
"use_file_logging": true, "use_file_logging": true,
"victims_max_exploit": 7, "victims_max_exploit": 7,
"victims_max_find": 14 "victims_max_find": 30
} }

View File

@ -126,23 +126,6 @@ SCHEMA = {
"title": "Basic", "title": "Basic",
"type": "object", "type": "object",
"properties": { "properties": {
"network": {
"title": "Network",
"type": "object",
"properties": {
"blocked_ips": {
"title": "Blocked IPs",
"type": "array",
"uniqueItems": True,
"items": {
"type": "string"
},
"default": [
],
"description": "List of IPs to not scan"
}
}
},
"credentials": { "credentials": {
"title": "Credentials", "title": "Credentials",
"type": "object", "type": "object",
@ -180,6 +163,80 @@ SCHEMA = {
} }
} }
}, },
"basic_network": {
"title": "Basic - Network",
"type": "object",
"properties": {
"general": {
"title": "General",
"type": "object",
"properties": {
"blocked_ips": {
"title": "Blocked IPs",
"type": "array",
"uniqueItems": True,
"items": {
"type": "string"
},
"default": [
],
"description": "List of IPs to not scan"
},
"local_network_scan": {
"title": "Local network scan",
"type": "boolean",
"default": True,
"description": "Determines whether monkey should scan its subnets additionally"
},
"depth": {
"title": "Depth",
"type": "integer",
"default": 2,
"description": "Amount of hops allowed for the monkey to spread"
}
}
},
"network_range": {
"title": "Network range",
"type": "object",
"properties": {
"range_class": {
"title": "Range class",
"type": "string",
"default": "FixedRange",
"enum": [
"FixedRange",
"RelativeRange",
"ClassCRange"
],
"enumNames": [
"FixedRange",
"RelativeRange",
"ClassCRange"
],
"description": "Determines which class to use to determine scan range"
},
"range_size": {
"title": "Relative range size",
"type": "integer",
"default": 1,
"description": "Determines the size of the RelativeRange - amount of IPs to include"
},
"range_fixed": {
"title": "Fixed range IP list",
"type": "array",
"uniqueItems": True,
"items": {
"type": "string"
},
"default": [
],
"description": "List of IPs to include when using FixedRange"
}
}
}
}
},
"monkey": { "monkey": {
"title": "Monkey", "title": "Monkey",
"type": "object", "type": "object",
@ -193,12 +250,6 @@ SCHEMA = {
"type": "boolean", "type": "boolean",
"default": True, "default": True,
"description": "Is the monkey alive" "description": "Is the monkey alive"
},
"depth": {
"title": "Depth",
"type": "integer",
"default": 2,
"description": "Amount of hops allowed from this monkey to spread"
} }
} }
}, },
@ -239,7 +290,7 @@ SCHEMA = {
"victims_max_find": { "victims_max_find": {
"title": "Max victims to find", "title": "Max victims to find",
"type": "integer", "type": "integer",
"default": 14, "default": 30,
"description": "Determines after how many discovered machines should the monkey stop scanning" "description": "Determines after how many discovered machines should the monkey stop scanning"
}, },
"victims_max_exploit": { "victims_max_exploit": {
@ -277,6 +328,12 @@ SCHEMA = {
"type": "string", "type": "string",
"default": "{2384ec59-0df8-4ab9-918c-843740924a28}", "default": "{2384ec59-0df8-4ab9-918c-843740924a28}",
"description": "The name of the mutex used to determine whether the monkey is already running" "description": "The name of the mutex used to determine whether the monkey is already running"
},
"collect_system_info": {
"title": "Collect system info",
"type": "boolean",
"default": True,
"description": "Determines whether to collect system info"
} }
} }
}, },
@ -449,6 +506,18 @@ SCHEMA = {
"description": "List of NTLM hashes to use on exploits using credentials" "description": "List of NTLM hashes to use on exploits using credentials"
} }
} }
},
"mimikatz": {
"title": "Mimikatz",
"type": "object",
"properties": {
"mimikatz_dll_name": {
"title": "Mimikatz DLL name",
"type": "string",
"default": "mk.dll",
"description": "Name of Mimikatz DLL (should be the same as in the monkey's pyinstaller spec file)"
}
}
} }
} }
}, },
@ -610,91 +679,10 @@ SCHEMA = {
} }
} }
}, },
"system_info": {
"title": "System info",
"type": "object",
"properties": {
"general": {
"title": "General",
"type": "object",
"properties": {
"collect_system_info": {
"title": "Collect system info",
"type": "boolean",
"default": True,
"description": "Determines whether to collect system info"
}
}
},
"mimikatz": {
"title": "Mimikatz",
"type": "object",
"properties": {
"mimikatz_dll_name": {
"title": "Mimikatz DLL name",
"type": "string",
"default": "mk.dll",
"description": "Name of Mimikatz DLL (should be the same as in the monkey's pyinstaller spec file)"
}
}
}
}
},
"network": { "network": {
"title": "Network", "title": "Network",
"type": "object", "type": "object",
"properties": { "properties": {
"general": {
"title": "General",
"type": "object",
"properties": {
"local_network_scan": {
"title": "Local network scan",
"type": "boolean",
"default": True,
"description": "Determines whether monkey should scan its subnets additionally"
}
}
},
"network_range": {
"title": "Network range",
"type": "object",
"properties": {
"range_class": {
"title": "Range class",
"type": "string",
"default": "FixedRange",
"enum": [
"FixedRange",
"RelativeRange",
"ClassCRange"
],
"enumNames": [
"FixedRange",
"RelativeRange",
"ClassCRange"
],
"description": "Determines which class to use to determine scan range"
},
"range_size": {
"title": "Relative range size",
"type": "integer",
"default": 1,
"description": "Determines the size of the RelativeRange - amount of IPs to include"
},
"range_fixed": {
"title": "Fixed range IP list",
"type": "array",
"uniqueItems": True,
"items": {
"type": "string"
},
"default": [
],
"description": "List of IPs to include when using FixedRange"
}
}
},
"tcp_scanner": { "tcp_scanner": {
"title": "TCP scanner", "title": "TCP scanner",
"type": "object", "type": "object",

View File

@ -8,6 +8,7 @@ class ConfigurePageComponent extends React.Component {
this.currentSection = 'basic'; this.currentSection = 'basic';
this.currentFormData = {}; this.currentFormData = {};
this.sectionsOrder = ['basic', 'basic_network', 'monkey', 'cnc', 'network', 'exploits', 'internal'];
// set schema from server // set schema from server
this.state = { this.state = {
@ -23,15 +24,18 @@ class ConfigurePageComponent extends React.Component {
componentDidMount() { componentDidMount() {
fetch('/api/configuration') fetch('/api/configuration')
.then(res => res.json()) .then(res => res.json())
.then(res => this.setState({ .then(res => {
schema: res.schema, let sections = [];
configuration: res.configuration, for (let sectionKey of this.sectionsOrder) {
sections: Object.keys(res.schema.properties) sections.push({key: sectionKey, title: res.schema.properties[sectionKey].title});
.map(key => { }
return {key: key, title: res.schema.properties[key].title} this.setState({
}), schema: res.schema,
selectedSection: 'basic' configuration: res.configuration,
})); sections: sections,
selectedSection: 'basic'
})
});
} }
onSubmit = ({formData}) => { onSubmit = ({formData}) => {