forked from p15670423/monkey
UI: Add fingerprinters to the schema
This commit is contained in:
parent
cb1360f5af
commit
1f3bffbabe
|
@ -25,6 +25,14 @@ export default function UiSchema(props) {
|
||||||
info_box: {
|
info_box: {
|
||||||
'ui:field': InfoBox
|
'ui:field': InfoBox
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
fingerprinters:{
|
||||||
|
classNames: 'config-template-no-header',
|
||||||
|
'ui:widget': AdvancedMultiSelect,
|
||||||
|
fingerprinter_classes: {
|
||||||
|
classNames: 'config-template-no-header'
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
|
@ -4,6 +4,7 @@ import {propagationConfigurationSchema} from './definitions/propagation.js';
|
||||||
import {bruteForceExploiters, vulnerabilityExploiters} from './definitions/exploiter_classes.js';
|
import {bruteForceExploiters, vulnerabilityExploiters} from './definitions/exploiter_classes.js';
|
||||||
import {credentialCollectors} from './definitions/credential_collectors.js';
|
import {credentialCollectors} from './definitions/credential_collectors.js';
|
||||||
import {postBreachActions} from './definitions/post_breach_actions.js';
|
import {postBreachActions} from './definitions/post_breach_actions.js';
|
||||||
|
import {fingerprinterClasses} from './definitions/fingerprinter_classes.js'
|
||||||
|
|
||||||
export const SCHEMA = {
|
export const SCHEMA = {
|
||||||
'title': 'Monkey',
|
'title': 'Monkey',
|
||||||
|
@ -12,7 +13,8 @@ export const SCHEMA = {
|
||||||
'brute_force_classes': bruteForceExploiters,
|
'brute_force_classes': bruteForceExploiters,
|
||||||
'vulnerability_classes': vulnerabilityExploiters,
|
'vulnerability_classes': vulnerabilityExploiters,
|
||||||
'credential_collectors_classes': credentialCollectors,
|
'credential_collectors_classes': credentialCollectors,
|
||||||
'post_breach_actions': postBreachActions
|
'post_breach_actions': postBreachActions,
|
||||||
|
'fingerprinter_classes': fingerprinterClasses
|
||||||
},
|
},
|
||||||
'properties': {
|
'properties': {
|
||||||
'propagation': propagationConfigurationSchema,
|
'propagation': propagationConfigurationSchema,
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
export const exploitationOptionsConfigurationSchema = {
|
export const exploitationOptionsConfigurationSchema = {
|
||||||
|
'title': 'Exploiters Options',
|
||||||
'type': 'object',
|
'type': 'object',
|
||||||
'properties': {
|
'properties': {
|
||||||
'http_ports': {
|
'http_ports': {
|
||||||
|
|
|
@ -0,0 +1,52 @@
|
||||||
|
export const fingerprinterClasses = {
|
||||||
|
'title': 'Fingerprinters',
|
||||||
|
'description': 'Fingerprint modules collect info about external services ' +
|
||||||
|
'Infection Monkey scans.',
|
||||||
|
'type': 'string',
|
||||||
|
'pluginDefs': {
|
||||||
|
'smb' : {'name':'smb', 'options':''},
|
||||||
|
'ssh' : {'name':'ssh', 'options':''},
|
||||||
|
'http' : {'name':'http', 'options':''},
|
||||||
|
'mssql' : {'name':'mssql', 'options':''},
|
||||||
|
'elastic' : {'name':'elastic', 'options':''}
|
||||||
|
},
|
||||||
|
'anyOf': [
|
||||||
|
{
|
||||||
|
'type': 'string',
|
||||||
|
'enum': ['smb'],
|
||||||
|
'title': 'SMB Fingerprinter',
|
||||||
|
'safe': true,
|
||||||
|
'info': 'Figures out if SMB is running and what\'s the version of it.'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'type': 'string',
|
||||||
|
'enum': ['ssh'],
|
||||||
|
'title': 'SSH Fingerprinter',
|
||||||
|
'safe': true,
|
||||||
|
'info': 'Figures out if SSH is running.'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'type': 'string',
|
||||||
|
'enum': ['http'],
|
||||||
|
'title': 'HTTP Fingerprinter',
|
||||||
|
'safe': true,
|
||||||
|
'info': 'Checks if host has HTTP/HTTPS ports open.'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'type': 'string',
|
||||||
|
'enum': ['mssql'],
|
||||||
|
'title': 'MSSQL Fingerprinter',
|
||||||
|
'safe': true,
|
||||||
|
'info': 'Checks if Microsoft SQL service is running and tries to gather ' +
|
||||||
|
'information about it.'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'type': 'string',
|
||||||
|
'enum': ['elastic'],
|
||||||
|
'title': 'Elastic Fingerprinter',
|
||||||
|
'safe': true,
|
||||||
|
'info': 'Checks if ElasticSearch is running and attempts to find it\'s version.'
|
||||||
|
}
|
||||||
|
]
|
||||||
|
|
||||||
|
}
|
|
@ -1,23 +1,18 @@
|
||||||
import {pluginConfigurationSchema} from './plugins.js';
|
|
||||||
import {icmpScanConfigurationSchema} from './icmp_scan.js';
|
import {icmpScanConfigurationSchema} from './icmp_scan.js';
|
||||||
import {scanTargetConfigurationSchema} from './scan_target.js';
|
import {scanTargetConfigurationSchema} from './scan_target.js';
|
||||||
import {tcpScanConfigurationSchema} from './tcp_scan.js';
|
import {tcpScanConfigurationSchema} from './tcp_scan.js';
|
||||||
|
|
||||||
export const networkScanConfigurationSchema = {
|
export const networkScanConfigurationSchema = {
|
||||||
|
'title': 'Network analysis',
|
||||||
'type': 'object',
|
'type': 'object',
|
||||||
'additionalProperties': false,
|
|
||||||
'properties': {
|
'properties': {
|
||||||
'fingerprinters': {
|
'fingerprinters': {
|
||||||
'title': 'Fingerprinters',
|
'title': 'Fingerprinters',
|
||||||
'type': 'array',
|
'type': 'array',
|
||||||
'items': pluginConfigurationSchema,
|
'uniqueItems': true,
|
||||||
'default': [
|
'items': {
|
||||||
{'name': 'SMBFinger', 'safe': true, 'options': {}},
|
'$ref': '#/definitions/fingerprinter_classes'
|
||||||
{'name': 'SSHFinger', 'safe': true, 'options': {}},
|
}
|
||||||
{'name': 'HTTPFinger', 'safe': true, 'options': {}},
|
|
||||||
{'name': 'MSSQLFinger', 'safe': true, 'options': {}},
|
|
||||||
{'name': 'ElasticFinger', 'safe': true, 'options': {}}
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
'icmp': icmpScanConfigurationSchema,
|
'icmp': icmpScanConfigurationSchema,
|
||||||
'targets': scanTargetConfigurationSchema,
|
'targets': scanTargetConfigurationSchema,
|
||||||
|
|
Loading…
Reference in New Issue