Agent: Make MSSQLExploiter interruptible

This commit is contained in:
Mike Salvatore 2022-03-17 14:28:46 -04:00
parent 0ffe023a9f
commit df5a0fe119
1 changed files with 12 additions and 1 deletions

View File

@ -15,6 +15,7 @@ from infection_monkey.model import DROPPER_ARG
from infection_monkey.transport import LockedHTTPServer
from infection_monkey.utils.brute_force import generate_identity_secret_pairs
from infection_monkey.utils.commands import build_monkey_commandline
from infection_monkey.utils.threading import interruptable_iter
logger = logging.getLogger(__name__)
@ -72,6 +73,9 @@ class MSSQLExploiter(HostExploiter):
)
return self.exploit_result
if self.is_interrupted():
return self.exploit_result
try:
# Create dir for payload
self.create_temp_dir()
@ -209,7 +213,14 @@ class MSSQLExploiter(HostExploiter):
"""
# Main loop
# Iterates on users list
for user, password in users_passwords_pairs_list:
credentials_iterator = interruptable_iter(
users_passwords_pairs_list,
self.interrupt,
"MSSQL exploiter has been interrupted",
logging.INFO,
)
for user, password in credentials_iterator:
try:
# Core steps
# Trying to connect