forked from p15670423/monkey
Fix powershell credential generation tests to use AuthOptions class
This commit is contained in:
parent
aedc666e8f
commit
47393b2d55
|
@ -1,72 +1,50 @@
|
||||||
from infection_monkey.exploit.powershell_utils import utils
|
from infection_monkey.exploit.powershell_utils import utils
|
||||||
|
from infection_monkey.exploit.powershell_utils.auth_options import AuthOptions
|
||||||
|
from infection_monkey.exploit.powershell_utils.credential_generation import get_credentials
|
||||||
from infection_monkey.model.host import VictimHost
|
from infection_monkey.model.host import VictimHost
|
||||||
|
|
||||||
TEST_USERS = ["user1", "user2"]
|
TEST_USERNAMES = ["user1", "user2"]
|
||||||
TEST_PASSWORDS = ["p1", "p2"]
|
TEST_PASSWORDS = ["p1", "p2"]
|
||||||
|
|
||||||
|
|
||||||
def test_get_credentials__empty_windows_true():
|
def test_get_credentials__empty_windows_true():
|
||||||
credentials = utils.get_credentials([], [], True)
|
credentials = get_credentials([], [], True, True)
|
||||||
|
|
||||||
assert len(credentials) == 1
|
assert len(credentials) == 1
|
||||||
assert credentials[0] == (None, None)
|
assert credentials[0] == AuthOptions(username=None, password=None, is_https=False)
|
||||||
|
|
||||||
|
|
||||||
def test_get_credentials__empty_windows_false():
|
def test_get_credentials__empty_windows_false():
|
||||||
credentials = utils.get_credentials([], [], False)
|
credentials = get_credentials([], [], False, True)
|
||||||
|
|
||||||
assert len(credentials) == 0
|
assert len(credentials) == 0
|
||||||
|
|
||||||
|
|
||||||
def test_get_credentials__username_only_windows_true():
|
def test_get_credentials__username_only_windows_true():
|
||||||
credentials = utils.get_credentials(TEST_USERS, [], True)
|
credentials = get_credentials(TEST_USERNAMES, [], True, True)
|
||||||
|
|
||||||
assert len(credentials) == 5
|
assert len(credentials) == 5
|
||||||
assert (TEST_USERS[0], "") in credentials
|
assert AuthOptions(username=TEST_USERNAMES[0], password="", is_https=False) in credentials
|
||||||
assert (TEST_USERS[1], "") in credentials
|
assert AuthOptions(username=TEST_USERNAMES[1], password="", is_https=False) in credentials
|
||||||
assert (TEST_USERS[0], None) in credentials
|
assert AuthOptions(username=TEST_USERNAMES[0], password=None, is_https=True) in credentials
|
||||||
assert (TEST_USERS[1], None) in credentials
|
assert AuthOptions(username=TEST_USERNAMES[1], password=None, is_https=True) in credentials
|
||||||
|
|
||||||
|
|
||||||
def test_get_credentials__username_only_windows_false():
|
def test_get_credentials__username_only_windows_false():
|
||||||
credentials = utils.get_credentials(TEST_USERS, [], False)
|
credentials = get_credentials(TEST_USERNAMES, [], False, True)
|
||||||
|
|
||||||
assert len(credentials) == 2
|
assert len(credentials) == 2
|
||||||
assert (TEST_USERS[0], "") in credentials
|
assert AuthOptions(username=TEST_USERNAMES[0], password="", is_https=False) in credentials
|
||||||
assert (TEST_USERS[1], "") in credentials
|
assert AuthOptions(username=TEST_USERNAMES[1], password="", is_https=False) in credentials
|
||||||
|
|
||||||
|
|
||||||
def test_get_credentials__username_password_windows_true():
|
def test_get_credentials__username_password_windows_true():
|
||||||
credentials = utils.get_credentials(TEST_USERS, TEST_PASSWORDS, True)
|
credentials = get_credentials(TEST_USERNAMES, TEST_PASSWORDS, True, True)
|
||||||
|
|
||||||
assert len(credentials) == 9
|
assert len(credentials) == 9
|
||||||
for user in TEST_USERS:
|
for user in TEST_USERNAMES:
|
||||||
for password in TEST_PASSWORDS:
|
for password in TEST_PASSWORDS:
|
||||||
assert (user, password) in credentials
|
assert AuthOptions(username=user, password=password, is_https=True) in credentials
|
||||||
|
|
||||||
|
|
||||||
def test_get_powershell_client_params__password_none():
|
|
||||||
(ssl, auth, encryption) = utils.get_powershell_client_params(None)
|
|
||||||
|
|
||||||
assert ssl is True
|
|
||||||
assert auth == utils.AUTH_NEGOTIATE
|
|
||||||
assert encryption == utils.ENCRYPTION_AUTO
|
|
||||||
|
|
||||||
|
|
||||||
def test_get_powershell_client_params__password_str():
|
|
||||||
(ssl, auth, encryption) = utils.get_powershell_client_params("1234")
|
|
||||||
|
|
||||||
assert ssl is True
|
|
||||||
assert auth == utils.AUTH_NEGOTIATE
|
|
||||||
assert encryption == utils.ENCRYPTION_AUTO
|
|
||||||
|
|
||||||
|
|
||||||
def test_get_powershell_client_params__password_empty():
|
|
||||||
(ssl, auth, encryption) = utils.get_powershell_client_params("")
|
|
||||||
|
|
||||||
assert ssl is False
|
|
||||||
assert auth == utils.AUTH_BASIC
|
|
||||||
assert encryption == utils.ENCRYPTION_NEVER
|
|
||||||
|
|
||||||
|
|
||||||
def test_build_monkey_execution_command():
|
def test_build_monkey_execution_command():
|
||||||
|
|
Loading…
Reference in New Issue