Merge branch 'remove-internet-access-check' into develop

PR #1420
This commit is contained in:
Mike Salvatore 2021-08-20 10:40:24 -04:00
commit 198fbd66f8
9 changed files with 7 additions and 48 deletions

View File

@ -6,6 +6,11 @@ The format is based on [Keep a
Changelog](https://keepachangelog.com/en/1.0.0/).
## [Unreleased]
### Removed
- Internet access check on agent start. #1402
- The "internal.monkey.internet_services" configuration option that enabled
internet access checks. #1402
### Fixed
- Misaligned buttons and input fields on exploiter and network configuration
pages. #1353

View File

@ -15,5 +15,4 @@ class BaseTemplate(ConfigTemplate):
],
"monkey.post_breach.post_breach_actions": [],
"internal.general.keep_tunnel_open_time": 0,
"internal.monkey.internet_services": [],
}

View File

@ -145,9 +145,6 @@ class Configuration(object):
# sets whether or not to retry failed hosts on next scan
retry_failed_explotation = True
# addresses of internet servers to ping and check if the monkey has internet acccess.
internet_services = ["updates.infectionmonkey.com", "www.google.com"]
keep_tunnel_open_time = 60
# Monkey files directory name

View File

@ -19,7 +19,7 @@ from common.common_consts.timeouts import (
SHORT_REQUEST_TIMEOUT,
)
from infection_monkey.config import GUID, WormConfiguration
from infection_monkey.network.info import check_internet_access, local_ips
from infection_monkey.network.info import local_ips
from infection_monkey.transport.http import HTTPConnectProxy
from infection_monkey.transport.tcp import TcpProxy
@ -40,7 +40,7 @@ class ControlClient(object):
proxies = {}
@staticmethod
def wakeup(parent=None, has_internet_access=None):
def wakeup(parent=None):
if parent:
LOG.debug("parent: %s" % (parent,))
@ -48,15 +48,11 @@ class ControlClient(object):
if not parent:
parent = GUID
if has_internet_access is None:
has_internet_access = check_internet_access(WormConfiguration.internet_services)
monkey = {
"guid": GUID,
"hostname": hostname,
"ip_addresses": local_ips(),
"description": " ".join(platform.uname()),
"internet_access": has_internet_access,
"config": WormConfiguration.as_dict(),
"parent": parent,
"launch_time": str(datetime.now().strftime(DEFAULT_TIME_FORMAT)),

View File

@ -2,10 +2,6 @@
"command_servers": [
"192.0.2.0:5000"
],
"internet_services": [
"monkey.guardicore.com",
"www.google.com"
],
"keep_tunnel_open_time": 60,
"subnet_scan_list": [

View File

@ -5,8 +5,6 @@ from random import randint # noqa: DUO102
import netifaces
import psutil
import requests
from requests import ConnectionError
from common.network.network_range import CidrRange
from infection_monkey.utils.environment import is_windows_os
@ -125,23 +123,6 @@ def get_free_tcp_port(min_range=1000, max_range=65535):
return None
def check_internet_access(services):
"""
Checks if any of the services are accessible, over HTTPS
:param services: List of IPs/hostnames
:return: boolean depending on internet access
"""
for host in services:
try:
requests.get("https://%s" % (host,), timeout=TIMEOUT, verify=False) # noqa: DUO123
return True
except ConnectionError:
# Failed connecting
pass
return False
def get_interfaces_ranges():
"""
Returns a list of IPs accessible in the host in each network interface, in the subnet.

View File

@ -38,7 +38,6 @@ class Monkey(Document):
dead = BooleanField()
description = StringField()
hostname = StringField()
internet_access = BooleanField()
ip_addresses = ListField(StringField())
launch_time = StringField()
keepalive = DateTimeField()

View File

@ -60,16 +60,6 @@ INTERNAL = {
"monkey propagating to "
"a high number of machines",
},
"internet_services": {
"title": "Internet services",
"type": "array",
"uniqueItems": True,
"items": {"type": "string"},
"default": ["monkey.guardicore.com", "www.google.com"],
"description": "List of internet services to try and communicate with to "
"determine internet"
" connectivity (use either ip or domain)",
},
"self_delete_in_cleanup": {
"title": "Self delete on cleanup",
"type": "boolean",

View File

@ -54,10 +54,6 @@
"monkey": {
"victims_max_find": 100,
"victims_max_exploit": 100,
"internet_services": [
"monkey.guardicore.com",
"www.google.com"
],
"self_delete_in_cleanup": true,
"use_file_logging": true,
"serialize_config": false,