158 Commits

Author SHA1 Message Date
Z. Cliffe Schreuders
34be6e051f lab update 2017-11-09 10:06:02 +00:00
Z. Cliffe Schreuders
e78458c882 IDS lab 2017-10-20 16:52:17 +01:00
Z. Cliffe Schreuders
ce502abcdb Hackerbot, labs, and associated changes 2017-09-28 16:35:28 +01:00
thomashaw
cef610bf04 oVirt now uses VM memory allocation based on command line options. Added missing options to usage. Added default memory allocations for oVirt VMs based on base type. 2017-09-28 15:32:47 +01:00
thomashaw
d43fe74492 Vagrantfile: oVirt hostname, replace _ with - in full hostname string, rather than just system_name. Fixes error when prefix contains underscores. 2017-09-28 13:47:22 +01:00
thomashaw
01baa313fc ovirt-integration: reverting cloud-init change and included it in base template instead 2017-09-26 18:58:13 +01:00
thomashaw
8e38813db2 Updates: SecGen => oVirt Integration 2017-09-26 18:55:09 +01:00
thomashaw
0c13e77c23 Vagrantfile fix 2017-09-21 16:33:57 +01:00
thomashaw
3205338f67 renamed postgresql database from secgen_batch to batch_secgen for consistency 2017-09-21 15:58:53 +01:00
thomashaw
abc7e28893 ovirt integration: removed ovirt-vmname option + build the vm name based on prefix and <system_name> 2017-09-21 15:44:23 +01:00
thomashaw
3fa05c0889 batch_secgen.rb: adding --randomise-ips 2017-09-21 15:44:23 +01:00
thomashaw
f42555350b secgen.rb: adding --network-ranges 2017-09-21 15:44:23 +01:00
thomashaw
447059ce20 WIP: templates in bases 2017-09-21 15:44:23 +01:00
thomashaw
f58fb0d2b4 WIP: ovirt templates -> bases 2017-09-21 15:44:23 +01:00
Gajendra
4ac2cd3ddc oVirt provider spinup with multiple options - ovirturl, ovirtpass, ovirtuser, ovirt-vmname, ovirtcluster, ovirttemplate etc 2017-09-21 15:44:23 +01:00
thomashaw
889c620189 secgen_batch: updated db interactions 2017-09-17 12:03:46 +01:00
thomashaw
1a611e230b SecGen batch processing script (requires postgresql).
secgen.rb: added --shutdown flag for shutting down vm's after provisioning
2017-09-15 15:54:50 +01:00
thomashaw
fa5015918b corrected method call 2017-09-05 12:31:17 +01:00
thomashaw
705383e108 encoder/random_string_selector: cleaned up print_string output. other encoders: added encoding print string padding 2017-09-05 11:26:29 +01:00
thomashaw
f86025f343 access_element removed (redundant, use access='0' instead) 2017-08-30 16:11:01 +01:00
thomashaw
bbb82382f7 Puppetfile.erb: enforce puppetlabs-stdlib 4.18.0 due to undefined resource problem in version 4.19.0 2017-08-23 13:53:40 +01:00
Z. Cliffe Schreuders
d6ced69c31 Fix calling rubygem executable on some platforms 2017-08-18 23:31:57 -07:00
thomashaw
ed31b4bf0f print.rb: added .warn and bright_yellow text colouring 2017-08-16 13:11:33 +01:00
thomashaw
f7a34f6e83 bugfix: added cpu_word_size to scenario schema - can re-run scenarios again 2017-08-14 14:16:39 +01:00
thomashaw
ee83e5016e structured_content: initial work, created an organisation generator. Organisation based scenarios need updating to use this.
datastore access_json:  can now access individual structured_content elements
2017-08-14 14:09:29 +01:00
thomashaw
f44680051e more vagrantfile.erb whitespace updates 2017-06-30 22:56:07 +01:00
thomashaw
76d7fa08ab vagrantfile.erb whitespace updates 2017-06-30 22:53:49 +01:00
thomashaw
7a6334fb00 PR_90 changes: added cpu_word_size to differentiate between 32/64bit systems in bases, refactored vagrantfile.erb to include this, changed windows 'config.vm.network' settings to use the system name rather than config. 2017-06-30 22:46:54 +01:00
thomashaw
534a780726 Merge remote-tracking branch 'origin/pr/90'
# Conflicts:
#	README.md
#	lib/templates/Vagrantfile.erb
2017-06-30 15:21:22 +01:00
thomashaw
1a5649fddf hint improvements 2017-06-24 00:19:52 +01:00
thomashaw
8eddc7fc44 Marker generator: only matches "flag{"" at start of string. Exclude "vulnerable in terms of its" system||misc||ctf||local .
Now displays all secgen_metadata.xml <hint>'s
2017-06-23 23:27:38 +01:00
thomashaw
c3a092f680 unbounded maximum number of <hint>'s in metadata schemas 2017-06-21 18:54:03 +01:00
thomashaw
a0949b57e5 Parameterised port - service/vsftp (WIP) 2017-05-20 11:37:06 +01:00
thomashaw
66aa51dd9d Updating hints 2017-05-09 12:37:12 +01:00
thomashaw
455907842b marker.xml now picks up <hint> tags. edited a couple of the <hints> 2017-05-03 11:58:31 +01:00
thomashaw
8db4c6ab81 Image Generators no longer select from readme_gifs. Moved png's into /misc directory. 2017-05-02 16:54:59 +01:00
thomashaw
bacd0b5f78 Add <hint> links to generator and encoder challenge modules including schema change to include <hint> tags.
Added exif_metadata scenario.
2017-05-02 14:42:03 +01:00
Z. Cliffe Schreuders
4b6c3c2d37 update to work with newer versions of vagrant (where the gem exists but doesn't execute) and update readme with more information and with gifs 2017-04-19 00:12:46 +01:00
thomashaw
a62983a465 Fixing: generated scenario.xml in projects are now re-runnable 2017-04-12 20:28:38 +01:00
thomashaw
07eaad8199 Project Vagrantfile's now use relative paths. This enables distribution of project's without having to mess with paths. 2017-04-11 11:46:44 +01:00
thomashaw
d437d839df Provisioning via rsync rather than VirtualBox Shared Folders due to giving away selected modules 2017-04-11 11:14:39 +01:00
thomashaw
f0802b88e7 Merge branch 'unpick_ctf_mess' 2017-04-04 20:42:35 +01:00
thomashaw
8977559f8a exif metadata challenge + jpg converter/generator (cherry picked from commit e51347f) 2017-04-04 16:29:17 +01:00
thomashaw
839a69f5e1 FIX ME after the event: needed to comment out this exit due to github.com/cliffe/secgen/issues/94 2017-03-31 16:30:58 +01:00
Z. Cliffe Schreuders
18620f1ab3 some public domain messages and stories for flavour 2017-03-28 14:39:50 +01:00
Z. Cliffe Schreuders
f969cc8a42 fixed issue with passing a nested literal value into a default module input 2017-03-21 21:59:26 +00:00
Tom
0de7581a96 Merge pull request #88 from meehien/master
Some minor changes
2017-03-20 14:01:16 +00:00
Jjk422
7960914a79 Adds the Windows 2008 r2 server 64 bit basebox, allows for no license.
Will download ISO from microsoft site, will then build basebox (storing in VAGRANT_BASEBOX_STORAGE) and will then build with vagrant.
If Basebox is not present SecGen will prompt whether to use packer (requires download from packer website in README.md and for the binary to be in the system path) to build the Basebox.

*** Changes ***
constants.rb
51-57: Added the 2 constants PUPPET_VERSION: version of puppet to install on the newly generated system, and VAGRANT_BASEBOX_STORAGE which stores generated baseboxes (currently set to SecGen_root/.generated).

project_files_creator.rb
48-80: Added logic to check for existing basebox and to generate new basebox if not present.

base_metadata_schema.xsd
11: Added windows to platform options type
45-50: Added extra packer helper tags, packerfile_path (path to packer file in the layout of base_module_name/Packerfile_name) and product_key (will use a trial version if product key is not present)

vulnerability_metadata_schema.xsd
32: Added windows value to platformOptions type to allow for windows system implementation.

Vagrantfile.erb
21: Changed --hwvirtex to default of on without gui output, problems can occur if this is not set to on.
23,28,31: Removed - tags before ending %>, this was causing an error with the vagrantfile as the options were not being placed on different lines.
48-56: Added the use of winrm instead of the default ssh for the base module if the base module is windows.

puppet_install/LICENSE
Added Mozilla Public License Version 2.0 (GPL v3 compatable) that came with the puppet_install/windows.ps1 script, the script to install puppet can be rewritten with a more simple implementation, however this script should do error checking to add an extra level of stability to the puppet install.

puppet_install/windows.ps1
Will install puppet on the Windows machine.

virtualbox_guest_install/windows.bat
Will install the virtualbox guest additions on the Windows machine.

Autounattend.xml.erb
Aurounattend script that allows for setting out the system layout including system information, disk configuration and product keys.

Packerfile.erb
Packerfile that builds the machine via packer, was going to be fully parameterised with all options being in the SecGen metadata (it still can be converted to this easily) however this lead to a large SecGen_metadata file with multiple tags which were only used if the basebox is not present, therefore only the product_key and packerfile_path keys were added to the SecGen_metadata file. Although the product_key data may be moved to a central product_key file later on.

secgen_metadata.xml
SecGen metadata file for the new windows basebox.
2017-03-19 17:52:17 +00:00
Z. Cliffe Schreuders
25771b6344 unique_module_names for selectively ensuring a scenario doesn't repeat modules (currently only in the scenario for nested under an input) 2017-03-18 17:03:47 +00:00
Mihai Ordean
cb0f6ac289 Merge https://github.com/cliffe/SecGen 2017-03-16 14:04:00 +00:00