mirror of
https://github.com/cliffe/SecGen.git
synced 2026-02-20 13:50:45 +00:00
Ensure all nic IP addresses are defined sequentially in scenarios so we can detect them reliably
This commit is contained in:
78
lib/test/check_nic_sequences.rb
Normal file
78
lib/test/check_nic_sequences.rb
Normal file
@@ -0,0 +1,78 @@
|
||||
puts "SecGen nic definitions that use the special IP_addresses datastore should define networks in the same sequence, so that we can automatically identify IP addrs for VMs"
|
||||
|
||||
directory_path = ARGV[0]
|
||||
|
||||
# Ensure directory path is provided
|
||||
if directory_path.nil?
|
||||
puts "Please provide as an argument the directory path to recursively test scenario xml files."
|
||||
exit
|
||||
end
|
||||
|
||||
# Retrieve all XML files in the directory
|
||||
xml_files = Dir.glob("#{directory_path}/**/*.xml")
|
||||
|
||||
# Regular expression pattern to match network sections
|
||||
network_regex = /<network\b[^>]*>(.*?)<\/network>/m
|
||||
|
||||
# Initialize counters
|
||||
processed_files_count = 0
|
||||
out_of_sequence_count = 0
|
||||
|
||||
# Iterate over each XML file
|
||||
xml_files.each do |file_path|
|
||||
puts "Processing file: #{file_path}"
|
||||
processed_files_count += 1
|
||||
|
||||
begin
|
||||
file_contents = File.read(file_path)
|
||||
|
||||
# Check for sequential access numbers across all the network sections
|
||||
sequential = true
|
||||
last_access = -1
|
||||
lines_with_access_numbers = []
|
||||
|
||||
file_contents.scan(network_regex) do |network_match|
|
||||
network_section = network_match[0]
|
||||
network_lines = network_section.split("\n")
|
||||
|
||||
network_lines.each do |line|
|
||||
match = line.match(/<datastore\s+access="(\d+)">.*?<\/datastore>/)
|
||||
next unless match
|
||||
|
||||
access_number = match[1].to_i
|
||||
|
||||
lines_with_access_numbers << line.strip
|
||||
|
||||
if access_number != last_access + 1
|
||||
puts " \e[31mWarning:\e[0m Access numbers are not sequential in #{file_path}. Expected #{last_access + 1}, got #{access_number}"
|
||||
sequential = false
|
||||
out_of_sequence_count += 1
|
||||
break
|
||||
end
|
||||
|
||||
last_access = access_number
|
||||
end
|
||||
|
||||
if !sequential
|
||||
break
|
||||
end
|
||||
end
|
||||
|
||||
if sequential
|
||||
lines_with_access_numbers = []
|
||||
end
|
||||
|
||||
unless lines_with_access_numbers.empty?
|
||||
puts "Lines with access numbers:"
|
||||
lines_with_access_numbers.each { |line| puts " #{line}" }
|
||||
end
|
||||
|
||||
rescue StandardError => e
|
||||
puts "Error processing file #{file_path}: #{e.message}"
|
||||
end
|
||||
|
||||
puts "-" * 40
|
||||
end
|
||||
|
||||
puts "Processed files: #{processed_files_count}"
|
||||
puts "Out of sequence files: #{out_of_sequence_count}"
|
||||
@@ -45,6 +45,14 @@
|
||||
<system_name>server</system_name>
|
||||
<base distro="Debian 10" type="desktop" name="KDE" />
|
||||
|
||||
<input into_datastore="IP_addresses">
|
||||
<!-- 0 attack_vm -->
|
||||
<value>172.16.0.2</value>
|
||||
<!-- 1 hackme_server -->
|
||||
<value>172.16.0.3</value>
|
||||
</input>
|
||||
|
||||
|
||||
<vulnerability module_path=".*/jenkins_cli">
|
||||
<input into="strings_to_leak">
|
||||
<generator type="flag_generator" />
|
||||
@@ -62,7 +70,7 @@
|
||||
|
||||
<network type="private_network">
|
||||
<input into="IP_address">
|
||||
<datastore access="1">IP_addresses</datastore>
|
||||
<datastore access="0">IP_addresses</datastore>
|
||||
</input>
|
||||
</network>
|
||||
</system>
|
||||
@@ -71,13 +79,6 @@
|
||||
<system_name>attack_vm</system_name>
|
||||
<base distro="Kali" name="MSF" />
|
||||
|
||||
<input into_datastore="IP_addresses">
|
||||
<!-- 0 attack_vm -->
|
||||
<value>172.16.0.2</value>
|
||||
<!-- 1 hackme_server -->
|
||||
<value>172.16.0.3</value>
|
||||
</input>
|
||||
|
||||
<utility module_path=".*/iceweasel">
|
||||
<input into="accounts">
|
||||
<value>
|
||||
@@ -95,7 +96,7 @@
|
||||
|
||||
<network type="private_network">
|
||||
<input into="IP_address">
|
||||
<datastore access="0">IP_addresses</datastore>
|
||||
<datastore access="1">IP_addresses</datastore>
|
||||
</input>
|
||||
</network>
|
||||
</system>
|
||||
|
||||
@@ -37,32 +37,6 @@
|
||||
<keyword>cyber kill chain</keyword>
|
||||
</CyBOK>
|
||||
|
||||
<system>
|
||||
<system_name>server</system_name>
|
||||
<base distro="Debian 10" type="desktop" name="KDE" />
|
||||
|
||||
<vulnerability module_path=".*/apache_spark_rce">
|
||||
<input into="strings_to_leak">
|
||||
<generator type="flag_generator" />
|
||||
</input>
|
||||
<input into="strings_to_pre_leak">
|
||||
<encoder type="^(ascii|alpha)_reversible$" difficulty="low">
|
||||
<input into="strings_to_encode">
|
||||
<generator type="flag_generator" />
|
||||
</input>
|
||||
</encoder>
|
||||
</input>
|
||||
</vulnerability>
|
||||
|
||||
<vulnerability module_path="*./chkrootkit"></vulnerability>
|
||||
|
||||
<network type="private_network">
|
||||
<input into="IP_address">
|
||||
<datastore access="1">IP_addresses</datastore>
|
||||
</input>
|
||||
</network>
|
||||
</system>
|
||||
|
||||
<system>
|
||||
<system_name>attack_vm</system_name>
|
||||
<base distro="Kali" name="MSF" />
|
||||
@@ -96,4 +70,32 @@
|
||||
</network>
|
||||
</system>
|
||||
|
||||
<system>
|
||||
<system_name>server</system_name>
|
||||
<base distro="Debian 10" type="desktop" name="KDE" />
|
||||
|
||||
<vulnerability module_path=".*/apache_spark_rce">
|
||||
<input into="strings_to_leak">
|
||||
<generator type="flag_generator" />
|
||||
</input>
|
||||
<input into="strings_to_pre_leak">
|
||||
<encoder type="^(ascii|alpha)_reversible$" difficulty="low">
|
||||
<input into="strings_to_encode">
|
||||
<generator type="flag_generator" />
|
||||
</input>
|
||||
</encoder>
|
||||
</input>
|
||||
</vulnerability>
|
||||
|
||||
<vulnerability module_path="*./chkrootkit"></vulnerability>
|
||||
|
||||
<network type="private_network">
|
||||
<input into="IP_address">
|
||||
<datastore access="1">IP_addresses</datastore>
|
||||
</input>
|
||||
</network>
|
||||
</system>
|
||||
|
||||
|
||||
|
||||
</scenario>
|
||||
@@ -42,33 +42,6 @@
|
||||
<keyword>Attacks against SUID</keyword>
|
||||
</CyBOK>
|
||||
|
||||
|
||||
<system>
|
||||
<system_name>server</system_name>
|
||||
<base distro="Debian 10" type="desktop" name="KDE" />
|
||||
|
||||
<vulnerability module_path=".*/apache_couchdb">
|
||||
<input into="strings_to_leak">
|
||||
<generator type="flag_generator" />
|
||||
</input>
|
||||
<input into="strings_to_pre_leak">
|
||||
<encoder type="^(ascii|alpha)_reversible$" difficulty="low">
|
||||
<input into="strings_to_encode">
|
||||
<generator type="flag_generator" />
|
||||
</input>
|
||||
</encoder>
|
||||
</input>
|
||||
</vulnerability>
|
||||
|
||||
<vulnerability module_path=".*/sudo_root_vi"></vulnerability>
|
||||
|
||||
<network type="private_network">
|
||||
<input into="IP_address">
|
||||
<datastore access="1">IP_addresses</datastore>
|
||||
</input>
|
||||
</network>
|
||||
</system>
|
||||
|
||||
<system>
|
||||
<system_name>attack_vm</system_name>
|
||||
<base distro="Kali" name="MSF" />
|
||||
@@ -102,4 +75,30 @@
|
||||
</network>
|
||||
</system>
|
||||
|
||||
<system>
|
||||
<system_name>server</system_name>
|
||||
<base distro="Debian 10" type="desktop" name="KDE" />
|
||||
|
||||
<vulnerability module_path=".*/apache_couchdb">
|
||||
<input into="strings_to_leak">
|
||||
<generator type="flag_generator" />
|
||||
</input>
|
||||
<input into="strings_to_pre_leak">
|
||||
<encoder type="^(ascii|alpha)_reversible$" difficulty="low">
|
||||
<input into="strings_to_encode">
|
||||
<generator type="flag_generator" />
|
||||
</input>
|
||||
</encoder>
|
||||
</input>
|
||||
</vulnerability>
|
||||
|
||||
<vulnerability module_path=".*/sudo_root_vi"></vulnerability>
|
||||
|
||||
<network type="private_network">
|
||||
<input into="IP_address">
|
||||
<datastore access="1">IP_addresses</datastore>
|
||||
</input>
|
||||
</network>
|
||||
</system>
|
||||
|
||||
</scenario>
|
||||
@@ -41,31 +41,6 @@
|
||||
<keyword>Attacks against SUDO</keyword>
|
||||
</CyBOK>
|
||||
|
||||
<system>
|
||||
<system_name>server</system_name>
|
||||
<base distro="Debian 10" type="desktop" name="KDE" />
|
||||
|
||||
<vulnerability module_path=".*/apache_druid_rce">
|
||||
<input into="strings_to_leak">
|
||||
<generator type="flag_generator" />
|
||||
</input>
|
||||
<input into="strings_to_pre_leak">
|
||||
<encoder type="^(ascii|alpha)_reversible$" difficulty="low">
|
||||
<input into="strings_to_encode">
|
||||
<generator type="flag_generator" />
|
||||
</input>
|
||||
</encoder>
|
||||
</input>
|
||||
</vulnerability>
|
||||
|
||||
<vulnerability module_path=".*/sudo_root_more"></vulnerability>
|
||||
|
||||
<network type="private_network">
|
||||
<input into="IP_address">
|
||||
<datastore access="1">IP_addresses</datastore>
|
||||
</input>
|
||||
</network>
|
||||
</system>
|
||||
|
||||
<system>
|
||||
<system_name>attack_vm</system_name>
|
||||
@@ -100,4 +75,30 @@
|
||||
</network>
|
||||
</system>
|
||||
|
||||
<system>
|
||||
<system_name>server</system_name>
|
||||
<base distro="Debian 10" type="desktop" name="KDE" />
|
||||
|
||||
<vulnerability module_path=".*/apache_druid_rce">
|
||||
<input into="strings_to_leak">
|
||||
<generator type="flag_generator" />
|
||||
</input>
|
||||
<input into="strings_to_pre_leak">
|
||||
<encoder type="^(ascii|alpha)_reversible$" difficulty="low">
|
||||
<input into="strings_to_encode">
|
||||
<generator type="flag_generator" />
|
||||
</input>
|
||||
</encoder>
|
||||
</input>
|
||||
</vulnerability>
|
||||
|
||||
<vulnerability module_path=".*/sudo_root_more"></vulnerability>
|
||||
|
||||
<network type="private_network">
|
||||
<input into="IP_address">
|
||||
<datastore access="1">IP_addresses</datastore>
|
||||
</input>
|
||||
</network>
|
||||
</system>
|
||||
|
||||
</scenario>
|
||||
@@ -44,8 +44,6 @@
|
||||
<input into_datastore="IP_addresses">
|
||||
<value>172.16.0.2</value>
|
||||
<value>172.16.0.3</value>
|
||||
<value>172.16.0.4</value>
|
||||
<value>172.16.0.5</value>
|
||||
</input>
|
||||
|
||||
<utility module_path=".*/iceweasel">
|
||||
@@ -130,7 +128,7 @@
|
||||
|
||||
<network type="private_network">
|
||||
<input into="IP_address">
|
||||
<datastore access="2">IP_addresses</datastore>
|
||||
<datastore access="1">IP_addresses</datastore>
|
||||
</input>
|
||||
</network>
|
||||
<build type="cleanup">
|
||||
|
||||
@@ -45,8 +45,6 @@
|
||||
<input into_datastore="IP_addresses">
|
||||
<value>172.16.0.2</value>
|
||||
<value>172.16.0.3</value>
|
||||
<value>172.16.0.4</value>
|
||||
<value>172.16.0.5</value>
|
||||
</input>
|
||||
|
||||
<utility module_path=".*/iceweasel">
|
||||
@@ -101,7 +99,7 @@
|
||||
|
||||
<network type="private_network">
|
||||
<input into="IP_address">
|
||||
<datastore access="3">IP_addresses</datastore>
|
||||
<datastore access="1">IP_addresses</datastore>
|
||||
</input>
|
||||
</network>
|
||||
<build type="cleanup">
|
||||
|
||||
@@ -47,10 +47,8 @@
|
||||
<value>172.16.0.2</value>
|
||||
<!-- 1 server -->
|
||||
<value>172.16.0.3</value>
|
||||
<!-- 2 hackerbot_server -->
|
||||
<value>172.16.0.4</value>
|
||||
<!-- 3 kali_cracker -->
|
||||
<value>172.16.0.5</value>
|
||||
<value>172.16.0.4</value>
|
||||
</input>
|
||||
|
||||
<!-- generate some usernames to use -->
|
||||
@@ -319,7 +317,7 @@
|
||||
|
||||
<network type="private_network" >
|
||||
<input into="IP_address">
|
||||
<datastore access="3">IP_addresses</datastore>
|
||||
<datastore access="2">IP_addresses</datastore>
|
||||
</input>
|
||||
</network>
|
||||
</system>
|
||||
|
||||
@@ -34,31 +34,6 @@
|
||||
<keyword>FILE - TRANSFER PROTOCOL (FTP)</keyword>
|
||||
</CyBOK>
|
||||
|
||||
<system>
|
||||
<system_name>server</system_name>
|
||||
<base distro="Debian 10" type="desktop" name="KDE" />
|
||||
|
||||
<vulnerability module_path=".*/glpi_php_injection">
|
||||
<input into="strings_to_leak">
|
||||
<generator type="flag_generator" />
|
||||
</input>
|
||||
<input into="strings_to_pre_leak">
|
||||
<encoder type="^(ascii|alpha)_reversible$" difficulty="low">
|
||||
<input into="strings_to_encode">
|
||||
<generator type="flag_generator" />
|
||||
</input>
|
||||
</encoder>
|
||||
</input>
|
||||
</vulnerability>
|
||||
|
||||
<vulnerability module_path=".*/vsftpd_234_backdoor" />
|
||||
|
||||
<network type="private_network">
|
||||
<input into="IP_address">
|
||||
<datastore access="1">IP_addresses</datastore>
|
||||
</input>
|
||||
</network>
|
||||
</system>
|
||||
|
||||
<system>
|
||||
<system_name>attack_vm</system_name>
|
||||
@@ -93,4 +68,31 @@
|
||||
</network>
|
||||
</system>
|
||||
|
||||
<system>
|
||||
<system_name>server</system_name>
|
||||
<base distro="Debian 10" type="desktop" name="KDE" />
|
||||
|
||||
<vulnerability module_path=".*/glpi_php_injection">
|
||||
<input into="strings_to_leak">
|
||||
<generator type="flag_generator" />
|
||||
</input>
|
||||
<input into="strings_to_pre_leak">
|
||||
<encoder type="^(ascii|alpha)_reversible$" difficulty="low">
|
||||
<input into="strings_to_encode">
|
||||
<generator type="flag_generator" />
|
||||
</input>
|
||||
</encoder>
|
||||
</input>
|
||||
</vulnerability>
|
||||
|
||||
<vulnerability module_path=".*/vsftpd_234_backdoor" />
|
||||
|
||||
<network type="private_network">
|
||||
<input into="IP_address">
|
||||
<datastore access="1">IP_addresses</datastore>
|
||||
</input>
|
||||
</network>
|
||||
</system>
|
||||
|
||||
|
||||
</scenario>
|
||||
|
||||
@@ -48,6 +48,41 @@
|
||||
<keyword>cyber kill chain</keyword>
|
||||
</CyBOK>
|
||||
|
||||
|
||||
<system>
|
||||
<system_name>attack_vm</system_name>
|
||||
<base distro="Kali" name="MSF" />
|
||||
|
||||
<input into_datastore="IP_addresses">
|
||||
<!-- 0 attack_vm -->
|
||||
<value>172.16.0.2</value>
|
||||
<!-- 1 hackme_server -->
|
||||
<value>172.16.0.3</value>
|
||||
</input>
|
||||
|
||||
<utility module_path=".*/iceweasel">
|
||||
<input into="accounts">
|
||||
<value>
|
||||
{"username":"root","password":"toor","super_user":"","strings_to_leak":[],"leaked_filenames":[]}</value>
|
||||
</input>
|
||||
<input into="autostart">
|
||||
<value>false</value>
|
||||
</input>
|
||||
</utility>
|
||||
|
||||
<utility module_path=".*/kali_web" />
|
||||
<utility module_path=".*/metasploit_framework" />
|
||||
<utility module_path=".*/nmap" />
|
||||
<utility module_path=".*/handy_cli_tools" />
|
||||
<utility module_path=".*/kali_pwtools" />
|
||||
|
||||
<network type="private_network">
|
||||
<input into="IP_address">
|
||||
<datastore access="0">IP_addresses</datastore>
|
||||
</input>
|
||||
</network>
|
||||
</system>
|
||||
|
||||
<system>
|
||||
<system_name>server</system_name>
|
||||
<base distro="Debian 10" type="desktop" name="KDE" />
|
||||
@@ -86,38 +121,4 @@
|
||||
</network>
|
||||
</system>
|
||||
|
||||
<system>
|
||||
<system_name>attack_vm</system_name>
|
||||
<base distro="Kali" name="MSF" />
|
||||
|
||||
<input into_datastore="IP_addresses">
|
||||
<!-- 0 attack_vm -->
|
||||
<value>172.16.0.2</value>
|
||||
<!-- 1 hackme_server -->
|
||||
<value>172.16.0.3</value>
|
||||
</input>
|
||||
|
||||
<utility module_path=".*/iceweasel">
|
||||
<input into="accounts">
|
||||
<value>
|
||||
{"username":"root","password":"toor","super_user":"","strings_to_leak":[],"leaked_filenames":[]}</value>
|
||||
</input>
|
||||
<input into="autostart">
|
||||
<value>false</value>
|
||||
</input>
|
||||
</utility>
|
||||
|
||||
<utility module_path=".*/kali_web" />
|
||||
<utility module_path=".*/metasploit_framework" />
|
||||
<utility module_path=".*/nmap" />
|
||||
<utility module_path=".*/handy_cli_tools" />
|
||||
<utility module_path=".*/kali_pwtools" />
|
||||
|
||||
<network type="private_network">
|
||||
<input into="IP_address">
|
||||
<datastore access="0">IP_addresses</datastore>
|
||||
</input>
|
||||
</network>
|
||||
</system>
|
||||
|
||||
</scenario>
|
||||
@@ -34,10 +34,8 @@ It is important for organisations to manage the security of their systems and fo
|
||||
<input into_datastore="IP_addresses">
|
||||
<!-- 0 linux server -->
|
||||
<value>172.16.0.2</value>
|
||||
<!-- 1 not used -->
|
||||
<value>172.16.0.3</value>
|
||||
<!-- 1 kali -->
|
||||
<value>172.16.0.4</value>
|
||||
<value>172.16.0.3</value>
|
||||
</input>
|
||||
|
||||
<!-- DirtyCOW vulnerability module leaves the debian 7 bases unpatched by default. -->
|
||||
@@ -93,7 +91,7 @@ It is important for organisations to manage the security of their systems and fo
|
||||
|
||||
<network type="private_network" >
|
||||
<input into="IP_address">
|
||||
<datastore access="2">IP_addresses</datastore>
|
||||
<datastore access="1">IP_addresses</datastore>
|
||||
</input>
|
||||
</network>
|
||||
</system>
|
||||
|
||||
@@ -198,34 +198,18 @@ Diner's Club 3000 0000 0000 04</value>
|
||||
<datastore access="0">IP_addresses</datastore>
|
||||
</input>
|
||||
</network>
|
||||
|
||||
<!-- an admin account only for spoilers/administration of the challenge -->
|
||||
<input into_datastore="spoiler_admin_pass">
|
||||
<generator type="strong_password_generator"/>
|
||||
</input>
|
||||
<build type="cleanup">
|
||||
<input into="root_password">
|
||||
<datastore>spoiler_admin_pass</datastore>
|
||||
</input>
|
||||
</build>
|
||||
</system>
|
||||
|
||||
<!--<system>-->
|
||||
<!--<system_name>server</system_name>-->
|
||||
<!--<base platform="linux" distro="Debian 7.8"/>-->
|
||||
|
||||
<!--<utility module_path=".*/parameterised_accounts">-->
|
||||
<!--<input into="accounts">-->
|
||||
<!--<datastore>accounts</datastore>-->
|
||||
<!--</input>-->
|
||||
<!--</utility>-->
|
||||
|
||||
<!--<vulnerability module_path=".*/ssh_root_login">-->
|
||||
<!--<input into="root_password">-->
|
||||
<!--<value>randompassword</value>-->
|
||||
<!--</input>-->
|
||||
<!--</vulnerability>-->
|
||||
|
||||
<!--<!–TODO: parameterise with business details–>-->
|
||||
<!--<!–TODO: weechat config–>-->
|
||||
<!--<utility module_path=".*/weechat"/>-->
|
||||
|
||||
<!--<service module_path="services/unix/http/parameterised_website"/>-->
|
||||
<!--<service type="ftp"/>-->
|
||||
|
||||
<!--<network type="private_network" range="172.16.0.0"/>-->
|
||||
<!--</system>-->
|
||||
|
||||
<system>
|
||||
<system_name>hackerbot_server</system_name>
|
||||
<base distro="Kali" name="MSF"/>
|
||||
@@ -259,7 +243,7 @@ Diner's Club 3000 0000 0000 04</value>
|
||||
|
||||
<build type="cleanup">
|
||||
<input into="root_password">
|
||||
<generator type="strong_password_generator"/>
|
||||
<datastore>spoiler_admin_pass</datastore>
|
||||
</input>
|
||||
</build>
|
||||
</system>
|
||||
|
||||
@@ -215,34 +215,18 @@ Diner's Club 3000 0000 0000 04</value>
|
||||
<datastore access="0">IP_addresses</datastore>
|
||||
</input>
|
||||
</network>
|
||||
|
||||
<!-- an admin account only for spoilers/administration of the challenge -->
|
||||
<input into_datastore="spoiler_admin_pass">
|
||||
<generator type="strong_password_generator"/>
|
||||
</input>
|
||||
<build type="cleanup">
|
||||
<input into="root_password">
|
||||
<datastore>spoiler_admin_pass</datastore>
|
||||
</input>
|
||||
</build>
|
||||
</system>
|
||||
|
||||
<!--<system>-->
|
||||
<!--<system_name>server</system_name>-->
|
||||
<!--<base platform="linux" distro="Debian 7.8"/>-->
|
||||
|
||||
<!--<utility module_path=".*/parameterised_accounts">-->
|
||||
<!--<input into="accounts">-->
|
||||
<!--<datastore>accounts</datastore>-->
|
||||
<!--</input>-->
|
||||
<!--</utility>-->
|
||||
|
||||
<!--<vulnerability module_path=".*/ssh_root_login">-->
|
||||
<!--<input into="root_password">-->
|
||||
<!--<value>randompassword</value>-->
|
||||
<!--</input>-->
|
||||
<!--</vulnerability>-->
|
||||
|
||||
<!--<!–TODO: parameterise with business details–>-->
|
||||
<!--<!–TODO: weechat config–>-->
|
||||
<!--<utility module_path=".*/weechat"/>-->
|
||||
|
||||
<!--<service module_path="services/unix/http/parameterised_website"/>-->
|
||||
<!--<service type="ftp"/>-->
|
||||
|
||||
<!--<network type="private_network" range="172.16.0.0"/>-->
|
||||
<!--</system>-->
|
||||
|
||||
<system>
|
||||
<system_name>hackerbot_server</system_name>
|
||||
<base distro="Kali" name="MSF"/>
|
||||
@@ -274,11 +258,13 @@ Diner's Club 3000 0000 0000 04</value>
|
||||
</input>
|
||||
</network>
|
||||
|
||||
<!-- an admin account only for spoilers/administration of the challenge -->
|
||||
<build type="cleanup">
|
||||
<input into="root_password">
|
||||
<generator type="strong_password_generator"/>
|
||||
<datastore>spoiler_admin_pass</datastore>
|
||||
</input>
|
||||
</build>
|
||||
|
||||
</system>
|
||||
|
||||
</scenario>
|
||||
|
||||
@@ -212,6 +212,16 @@
|
||||
<datastore access="0">IP_addresses</datastore>
|
||||
</input>
|
||||
</network>
|
||||
|
||||
<!-- an admin account only for spoilers/administration of the challenge -->
|
||||
<input into_datastore="spoiler_admin_pass">
|
||||
<generator type="strong_password_generator"/>
|
||||
</input>
|
||||
<build type="cleanup">
|
||||
<input into="root_password">
|
||||
<datastore>spoiler_admin_pass</datastore>
|
||||
</input>
|
||||
</build>
|
||||
</system>
|
||||
|
||||
<system>
|
||||
@@ -230,14 +240,18 @@
|
||||
</input>
|
||||
</vulnerability>
|
||||
|
||||
<!-- TODO: weechat config -->
|
||||
<!-- <utility module_path=".*/weechat"/> -->
|
||||
|
||||
<network type="private_network" >
|
||||
<input into="IP_address">
|
||||
<datastore access="1">IP_addresses</datastore>
|
||||
</input>
|
||||
</network>
|
||||
|
||||
<!-- an admin account only for spoilers/administration of the challenge -->
|
||||
<build type="cleanup">
|
||||
<input into="root_password">
|
||||
<datastore>spoiler_admin_pass</datastore>
|
||||
</input>
|
||||
</build>
|
||||
</system>
|
||||
|
||||
<system>
|
||||
@@ -274,11 +288,13 @@
|
||||
</input>
|
||||
</network>
|
||||
|
||||
<!-- an admin account only for spoilers/administration of the challenge -->
|
||||
<build type="cleanup">
|
||||
<input into="root_password">
|
||||
<generator type="strong_password_generator"/>
|
||||
<datastore>spoiler_admin_pass</datastore>
|
||||
</input>
|
||||
</build>
|
||||
|
||||
</system>
|
||||
|
||||
</scenario>
|
||||
|
||||
@@ -227,6 +227,16 @@
|
||||
<datastore access="0">IP_addresses</datastore>
|
||||
</input>
|
||||
</network>
|
||||
|
||||
<!-- an admin account only for spoilers/administration of the challenge -->
|
||||
<input into_datastore="spoiler_admin_pass">
|
||||
<generator type="strong_password_generator"/>
|
||||
</input>
|
||||
<build type="cleanup">
|
||||
<input into="root_password">
|
||||
<datastore>spoiler_admin_pass</datastore>
|
||||
</input>
|
||||
</build>
|
||||
</system>
|
||||
|
||||
<system>
|
||||
@@ -266,6 +276,13 @@
|
||||
<datastore access="1">IP_addresses</datastore>
|
||||
</input>
|
||||
</network>
|
||||
|
||||
<!-- an admin account only for spoilers/administration of the challenge -->
|
||||
<build type="cleanup">
|
||||
<input into="root_password">
|
||||
<datastore>spoiler_admin_pass</datastore>
|
||||
</input>
|
||||
</build>
|
||||
</system>
|
||||
|
||||
<system>
|
||||
@@ -280,8 +297,6 @@
|
||||
|
||||
<vulnerability module_path=".*/distcc_exec"/>
|
||||
|
||||
<!--TODO: FIXME ftp modules are currently broken-->
|
||||
<!--<service module_path=".*/vsftpd"/>-->
|
||||
|
||||
<!--TODO: Fix the apache module -->
|
||||
<service type="httpd" module_path=".*/apache.*"/>
|
||||
@@ -303,6 +318,13 @@
|
||||
<datastore access="2">IP_addresses</datastore>
|
||||
</input>
|
||||
</network>
|
||||
|
||||
<!-- an admin account only for spoilers/administration of the challenge -->
|
||||
<build type="cleanup">
|
||||
<input into="root_password">
|
||||
<datastore>spoiler_admin_pass</datastore>
|
||||
</input>
|
||||
</build>
|
||||
</system>
|
||||
|
||||
<system>
|
||||
@@ -345,9 +367,10 @@
|
||||
</input>
|
||||
</network>
|
||||
|
||||
<!-- an admin account only for spoilers/administration of the challenge -->
|
||||
<build type="cleanup">
|
||||
<input into="root_password">
|
||||
<generator type="strong_password_generator"/>
|
||||
<datastore>spoiler_admin_pass</datastore>
|
||||
</input>
|
||||
</build>
|
||||
</system>
|
||||
|
||||
@@ -182,6 +182,58 @@
|
||||
</network>
|
||||
</system>
|
||||
|
||||
|
||||
<system>
|
||||
<system_name>hackerbot_server</system_name>
|
||||
<base distro="Kali" name="MSF"/>
|
||||
|
||||
<service type="ircd"/>
|
||||
|
||||
<utility module_path=".*/metasploit_framework"/>
|
||||
<utility module_path=".*/handy_cli_tools"/>
|
||||
<utility module_path=".*/nmap"/>
|
||||
|
||||
<service type="httpd"/>
|
||||
|
||||
<utility module_path=".*/hackerbot">
|
||||
<input into="hackerbot_configs" into_datastore="hackerbot_instructions">
|
||||
<generator module_path=".*/live_analysis_v2">
|
||||
<input into="accounts">
|
||||
<datastore>accounts</datastore>
|
||||
</input>
|
||||
<input into="root_password">
|
||||
<datastore>hackerbot_access_root_password</datastore>
|
||||
</input>
|
||||
|
||||
<input into="hackerbot_server_ip">
|
||||
<datastore access="1">IP_addresses</datastore>
|
||||
</input>
|
||||
<input into="compromised_server_ip">
|
||||
<datastore access="2">IP_addresses</datastore>
|
||||
</input>
|
||||
<input into="hidden_port">
|
||||
<datastore>nc_port</datastore>
|
||||
</input>
|
||||
<input into="hidden_string">
|
||||
<datastore>hidden_string</datastore>
|
||||
</input>
|
||||
</generator>
|
||||
</input>
|
||||
</utility>
|
||||
|
||||
<network type="private_network" >
|
||||
<input into="IP_address">
|
||||
<datastore access="1">IP_addresses</datastore>
|
||||
</input>
|
||||
</network>
|
||||
<build type="cleanup">
|
||||
<input into="root_password">
|
||||
<generator type="strong_password_generator"/>
|
||||
</input>
|
||||
</build>
|
||||
</system>
|
||||
|
||||
|
||||
<system>
|
||||
<system_name>compromised_server</system_name>
|
||||
<base distro="Debian 10" type="desktop" name="KDE"/>
|
||||
@@ -276,56 +328,4 @@
|
||||
</network>
|
||||
</system>
|
||||
|
||||
|
||||
<system>
|
||||
<system_name>hackerbot_server</system_name>
|
||||
<base distro="Kali" name="MSF"/>
|
||||
|
||||
<service type="ircd"/>
|
||||
|
||||
<utility module_path=".*/metasploit_framework"/>
|
||||
<utility module_path=".*/handy_cli_tools"/>
|
||||
<utility module_path=".*/nmap"/>
|
||||
|
||||
<service type="httpd"/>
|
||||
|
||||
<utility module_path=".*/hackerbot">
|
||||
<input into="hackerbot_configs" into_datastore="hackerbot_instructions">
|
||||
<generator module_path=".*/live_analysis_v2">
|
||||
<input into="accounts">
|
||||
<datastore>accounts</datastore>
|
||||
</input>
|
||||
<input into="root_password">
|
||||
<datastore>hackerbot_access_root_password</datastore>
|
||||
</input>
|
||||
|
||||
<input into="hackerbot_server_ip">
|
||||
<datastore access="1">IP_addresses</datastore>
|
||||
</input>
|
||||
<input into="compromised_server_ip">
|
||||
<datastore access="2">IP_addresses</datastore>
|
||||
</input>
|
||||
<input into="hidden_port">
|
||||
<datastore>nc_port</datastore>
|
||||
</input>
|
||||
<input into="hidden_string">
|
||||
<datastore>hidden_string</datastore>
|
||||
</input>
|
||||
</generator>
|
||||
</input>
|
||||
</utility>
|
||||
|
||||
<network type="private_network" >
|
||||
<input into="IP_address">
|
||||
<datastore access="1">IP_addresses</datastore>
|
||||
</input>
|
||||
</network>
|
||||
<build type="cleanup">
|
||||
<input into="root_password">
|
||||
<generator type="strong_password_generator"/>
|
||||
</input>
|
||||
</build>
|
||||
</system>
|
||||
|
||||
|
||||
</scenario>
|
||||
|
||||
@@ -251,29 +251,6 @@
|
||||
</network>
|
||||
</system>
|
||||
|
||||
<!--<system>-->
|
||||
<!--<system_name>backup_server</system_name>-->
|
||||
<!--<base platform="linux" distro="Debian 7.8"/>-->
|
||||
|
||||
<!--<utility module_path=".*/parameterised_accounts">-->
|
||||
<!--<input into="accounts">-->
|
||||
<!--<datastore>accounts</datastore>-->
|
||||
<!--</input>-->
|
||||
<!--</utility>-->
|
||||
|
||||
<!--<vulnerability module_path=".*/ssh_root_login">-->
|
||||
<!--<input into="root_password">-->
|
||||
<!--<datastore>hackerbot_access_root_password</datastore>-->
|
||||
<!--</input>-->
|
||||
<!--</vulnerability>-->
|
||||
|
||||
<!--<network type="private_network" >-->
|
||||
<!--<input into="IP_address">-->
|
||||
<!--<datastore access="1">IP_addresses</datastore>-->
|
||||
<!--</input>-->
|
||||
<!--</network>-->
|
||||
<!--</system>-->
|
||||
|
||||
|
||||
<system>
|
||||
<system_name>web_server</system_name>
|
||||
@@ -287,8 +264,6 @@
|
||||
|
||||
<vulnerability module_path=".*/distcc_exec"/>
|
||||
|
||||
<!--TODO: FIXME ftp modules are currently broken-->
|
||||
<!--<service module_path=".*/vsftpd"/>-->
|
||||
|
||||
<service type="pop3"/>
|
||||
|
||||
|
||||
@@ -88,15 +88,6 @@
|
||||
</input>
|
||||
</utility>
|
||||
|
||||
<!-- <utility module_path=".*/pidgin">
|
||||
<input into="server_ip">
|
||||
<datastore access="2">IP_addresses</datastore>
|
||||
</input>
|
||||
<input into="accounts">
|
||||
<datastore access="0">user_accounts</datastore>
|
||||
</input>
|
||||
</utility> -->
|
||||
|
||||
<vulnerability module_path=".*/ssh_root_login">
|
||||
<input into="root_password">
|
||||
<datastore>desktop_root_password</datastore>
|
||||
@@ -112,65 +103,6 @@
|
||||
</network>
|
||||
</system>
|
||||
|
||||
|
||||
<system>
|
||||
<system_name>staff_desktop</system_name>
|
||||
<base distro="Debian 10" type="desktop" name="KDE"/>
|
||||
|
||||
<!--Create the users-->
|
||||
<utility module_path=".*/parameterised_accounts">
|
||||
<input into="accounts">
|
||||
<datastore>user_accounts</datastore>
|
||||
</input>
|
||||
</utility>
|
||||
|
||||
<utility module_path=".*/kde_minimal">
|
||||
<input into="accounts">
|
||||
<datastore>user_accounts</datastore>
|
||||
</input>
|
||||
<input into="autostart_konsole">
|
||||
<value>true</value>
|
||||
</input>
|
||||
</utility>
|
||||
<utility module_path=".*/handy_cli_tools"/>
|
||||
<utility module_path=".*/hash_tools"/>
|
||||
<utility module_path=".*/pam_modules"/>
|
||||
|
||||
<utility module_path=".*/iceweasel">
|
||||
<input into="accounts">
|
||||
<datastore>user_accounts</datastore>
|
||||
</input>
|
||||
<input into="autostart">
|
||||
<value>true</value>
|
||||
</input>
|
||||
<input into="start_page">
|
||||
<datastore access="1">IP_addresses</datastore>
|
||||
</input>
|
||||
</utility>
|
||||
|
||||
<!-- <utility module_path=".*/pidgin">
|
||||
<input into="server_ip">
|
||||
<datastore access="2">IP_addresses</datastore>
|
||||
</input>
|
||||
<input into="accounts">
|
||||
<datastore access="0">user_accounts</datastore>
|
||||
</input>
|
||||
</utility> -->
|
||||
|
||||
<vulnerability module_path=".*/ssh_root_login">
|
||||
<input into="root_password">
|
||||
<datastore>desktop_root_password</datastore>
|
||||
</input>
|
||||
</vulnerability>
|
||||
<vulnerability type="access_control_misconfiguration"/>
|
||||
|
||||
<network type="private_network">
|
||||
<input into="IP_address">
|
||||
<datastore access="3">IP_addresses</datastore>
|
||||
</input>
|
||||
</network>
|
||||
</system>
|
||||
|
||||
<system>
|
||||
<system_name>server</system_name>
|
||||
<base distro="Debian 10" type="desktop"/>
|
||||
@@ -216,6 +148,72 @@
|
||||
</network>
|
||||
</system>
|
||||
|
||||
<system>
|
||||
<system_name>staff_desktop</system_name>
|
||||
<base distro="Debian 10" type="desktop" name="KDE"/>
|
||||
|
||||
<!--Create the users-->
|
||||
<utility module_path=".*/parameterised_accounts">
|
||||
<input into="accounts">
|
||||
<datastore>user_accounts</datastore>
|
||||
</input>
|
||||
</utility>
|
||||
|
||||
<utility module_path=".*/kde_minimal">
|
||||
<input into="accounts">
|
||||
<datastore>user_accounts</datastore>
|
||||
</input>
|
||||
<input into="autostart_konsole">
|
||||
<value>true</value>
|
||||
</input>
|
||||
</utility>
|
||||
<utility module_path=".*/handy_cli_tools"/>
|
||||
<utility module_path=".*/hash_tools"/>
|
||||
<utility module_path=".*/pam_modules"/>
|
||||
|
||||
<utility module_path=".*/iceweasel">
|
||||
<input into="accounts">
|
||||
<datastore>user_accounts</datastore>
|
||||
</input>
|
||||
<input into="autostart">
|
||||
<value>true</value>
|
||||
</input>
|
||||
<input into="start_page">
|
||||
<datastore access="1">IP_addresses</datastore>
|
||||
</input>
|
||||
</utility>
|
||||
|
||||
<system>
|
||||
<system_name>win7_desktop</system_name>
|
||||
<base platform="windows" distro="7"/>
|
||||
|
||||
<utility module_path=".*/parameterised_accounts" platform="windows">
|
||||
<input into="accounts">
|
||||
<datastore>user_accounts</datastore>
|
||||
</input>
|
||||
</utility>
|
||||
|
||||
<network type="private_network">
|
||||
<input into="IP_address">
|
||||
<datastore access="2">IP_addresses</datastore>
|
||||
</input>
|
||||
</network>
|
||||
</system>
|
||||
|
||||
<vulnerability module_path=".*/ssh_root_login">
|
||||
<input into="root_password">
|
||||
<datastore>desktop_root_password</datastore>
|
||||
</input>
|
||||
</vulnerability>
|
||||
<vulnerability type="access_control_misconfiguration"/>
|
||||
|
||||
<network type="private_network">
|
||||
<input into="IP_address">
|
||||
<datastore access="3">IP_addresses</datastore>
|
||||
</input>
|
||||
</network>
|
||||
</system>
|
||||
|
||||
<system>
|
||||
<system_name>auth_server</system_name>
|
||||
<base distro="Debian 10" type="desktop"/>
|
||||
@@ -255,62 +253,4 @@
|
||||
</network>
|
||||
</system>
|
||||
|
||||
|
||||
<system>
|
||||
<system_name>win7_desktop</system_name>
|
||||
<base platform="windows" distro="7"/>
|
||||
|
||||
<utility module_path=".*/parameterised_accounts" platform="windows">
|
||||
<input into="accounts">
|
||||
<datastore>user_accounts</datastore>
|
||||
</input>
|
||||
</utility>
|
||||
|
||||
<network type="private_network">
|
||||
<input into="IP_address">
|
||||
<datastore access="6">IP_addresses</datastore>
|
||||
</input>
|
||||
</network>
|
||||
</system>
|
||||
<!-- <system>
|
||||
<system_name>sec_spec_server</system_name>
|
||||
<base distro="Kali" name="MSF"/>
|
||||
|
||||
<service type="ircd"/>
|
||||
|
||||
<utility module_path=".*/metasploit_framework"/>
|
||||
<utility module_path=".*/nmap"/>
|
||||
<utility module_path=".*/handy_cli_tools"/>
|
||||
|
||||
<service type="httpd"/>
|
||||
|
||||
<utility module_path=".*/hackerbot">
|
||||
<input into="hackerbot_configs" into_datastore="hackerbot_instructions">
|
||||
<generator module_path=".*/hb_assignment_spec">
|
||||
<input into="accounts">
|
||||
<datastore>user_accounts</datastore>
|
||||
</input>
|
||||
<input into="root_password">
|
||||
<datastore>desktop_root_password</datastore>
|
||||
</input>
|
||||
<input into="server_ip">
|
||||
<datastore access="1">IP_addresses</datastore>
|
||||
</input>
|
||||
</generator>
|
||||
</input>
|
||||
</utility>
|
||||
|
||||
<network type="private_network" >
|
||||
<input into="IP_address">
|
||||
<datastore access="2">IP_addresses</datastore>
|
||||
</input>
|
||||
</network>
|
||||
|
||||
<build type="cleanup">
|
||||
<input into="root_password">
|
||||
<generator type="strong_password_generator"/>
|
||||
</input>
|
||||
</build>
|
||||
</system> -->
|
||||
|
||||
</scenario>
|
||||
|
||||
@@ -55,8 +55,6 @@
|
||||
|
||||
<input into_datastore="IP_addresses">
|
||||
<value>172.16.0.2</value>
|
||||
<value>172.16.0.3</value>
|
||||
<value>172.16.0.4</value>
|
||||
</input>
|
||||
|
||||
<input into_datastore="kali_root_account">
|
||||
@@ -92,7 +90,7 @@
|
||||
|
||||
<network type="private_network" >
|
||||
<input into="IP_address">
|
||||
<datastore access="1">IP_addresses</datastore>
|
||||
<datastore access="0">IP_addresses</datastore>
|
||||
</input>
|
||||
</network>
|
||||
</system>
|
||||
|
||||
@@ -151,33 +151,6 @@
|
||||
<utility module_path=".*/handy_cli_tools"/>
|
||||
<utility module_path=".*/nmap"/>
|
||||
|
||||
<!--<utility module_path=".*/iceweasel">-->
|
||||
<!--<input into="accounts">-->
|
||||
<!--<datastore>accounts</datastore>-->
|
||||
<!--</input>-->
|
||||
<!--<input into="autostart">-->
|
||||
<!--<value>true</value>-->
|
||||
<!--</input>-->
|
||||
<!--<input into="start_page">-->
|
||||
<!--<datastore access="3">IP_addresses</datastore>-->
|
||||
<!--</input>-->
|
||||
<!--</utility>-->
|
||||
|
||||
<!--<utility module_path=".*/pidgin">-->
|
||||
<!--<input into="server_ip">-->
|
||||
<!--<datastore access="3">IP_addresses</datastore>-->
|
||||
<!--</input>-->
|
||||
<!--<input into="accounts">-->
|
||||
<!--<datastore access="0">accounts</datastore>-->
|
||||
<!--</input>-->
|
||||
<!--</utility>-->
|
||||
|
||||
<!--<vulnerability module_path=".*/ssh_root_login">-->
|
||||
<!--<input into="root_password">-->
|
||||
<!--<datastore>hackerbot_access_root_password</datastore>-->
|
||||
<!--</input>-->
|
||||
<!--</vulnerability>-->
|
||||
|
||||
<network type="private_network" >
|
||||
<input into="IP_address">
|
||||
<datastore access="0">IP_addresses</datastore>
|
||||
@@ -189,12 +162,6 @@
|
||||
<system_name>web_server</system_name>
|
||||
<base distro="Debian 9" type="desktop" name="KDE"/>
|
||||
|
||||
<!--<utility module_path=".*/parameterised_accounts">-->
|
||||
<!--<input into="accounts">-->
|
||||
<!--<datastore>accounts</datastore>-->
|
||||
<!--</input>-->
|
||||
<!--</utility>-->
|
||||
|
||||
<vulnerability module_path=".*/unrealirc_3281_backdoor">
|
||||
<input into="strings_to_leak">
|
||||
<datastore>desktop_username</datastore>
|
||||
@@ -213,11 +180,6 @@
|
||||
</input>
|
||||
</service>
|
||||
|
||||
<!--<vulnerability module_path=".*/ssh_root_login">-->
|
||||
<!--<input into="root_password">-->
|
||||
<!--<datastore>hackerbot_access_root_password</datastore>-->
|
||||
<!--</input>-->
|
||||
<!--</vulnerability>-->
|
||||
|
||||
<network type="private_network" >
|
||||
<input into="IP_address">
|
||||
@@ -226,53 +188,6 @@
|
||||
</network>
|
||||
</system>
|
||||
|
||||
<!--<system>-->
|
||||
<!--<system_name>hackerbot_server</system_name>-->
|
||||
<!--<base distro="Kali" name="MSF"/>-->
|
||||
|
||||
<!--<service type="ircd"/>-->
|
||||
|
||||
<!--<utility module_path=".*/metasploit_framework"/>-->
|
||||
<!--<utility module_path=".*/handy_cli_tools"/>-->
|
||||
<!--<utility module_path=".*/nmap"/>-->
|
||||
|
||||
<!--<service type="httpd"/>-->
|
||||
|
||||
<!--<utility module_path=".*/hackerbot">-->
|
||||
<!--<input into="hackerbot_configs" into_datastore="hackerbot_instructions">-->
|
||||
<!--<generator module_path=".*/ids_exfiltration">-->
|
||||
<!--<input into="accounts">-->
|
||||
<!--<datastore>accounts</datastore>-->
|
||||
<!--</input>-->
|
||||
<!--<input into="root_password">-->
|
||||
<!--<datastore>hackerbot_access_root_password</datastore>-->
|
||||
<!--</input>-->
|
||||
<!--<input into="ids_server_ip">-->
|
||||
<!--<datastore access="1">IP_addresses</datastore>-->
|
||||
<!--</input>-->
|
||||
<!--<input into="web_server_ip">-->
|
||||
<!--<datastore access="2">IP_addresses</datastore>-->
|
||||
<!--</input>-->
|
||||
<!--<input into="hackerbot_server_ip">-->
|
||||
<!--<datastore access="3">IP_addresses</datastore>-->
|
||||
<!--</input>-->
|
||||
<!--</generator>-->
|
||||
<!--</input>-->
|
||||
<!--</utility>-->
|
||||
|
||||
<!--<network type="private_network" >-->
|
||||
<!--<input into="IP_address">-->
|
||||
<!--<datastore access="3">IP_addresses</datastore>-->
|
||||
<!--</input>-->
|
||||
<!--</network>-->
|
||||
|
||||
<!--<build type="cleanup">-->
|
||||
<!--<input into="root_password">-->
|
||||
<!--<generator type="strong_password_generator"/>-->
|
||||
<!--</input>-->
|
||||
<!--</build>-->
|
||||
<!--</system>-->
|
||||
|
||||
<system>
|
||||
<system_name>kali</system_name>
|
||||
<base distro="Kali" name="MSF"/>
|
||||
@@ -283,9 +198,6 @@
|
||||
|
||||
<utility module_path=".*/armitage"/>
|
||||
|
||||
<!--TODO: REMOVE ME - THIS SHOULD BE IN THE KALI TEMPLATE-->
|
||||
<!-- <utility module_path=".*/ovirt_agents"/> -->
|
||||
|
||||
<network type="private_network" >
|
||||
<input into="IP_address">
|
||||
<datastore access="2">IP_addresses</datastore>
|
||||
|
||||
Reference in New Issue
Block a user