diff --git a/modules/vulnerabilities/unix/ctf/python2_challenge_example/manifests/install.pp b/modules/vulnerabilities/unix/ctf/example/python2_challenge_example/manifests/install.pp
similarity index 100%
rename from modules/vulnerabilities/unix/ctf/python2_challenge_example/manifests/install.pp
rename to modules/vulnerabilities/unix/ctf/example/python2_challenge_example/manifests/install.pp
diff --git a/modules/vulnerabilities/unix/ctf/python2_challenge_example/python2_challenge_example.pp b/modules/vulnerabilities/unix/ctf/example/python2_challenge_example/python2_challenge_example.pp
similarity index 100%
rename from modules/vulnerabilities/unix/ctf/python2_challenge_example/python2_challenge_example.pp
rename to modules/vulnerabilities/unix/ctf/example/python2_challenge_example/python2_challenge_example.pp
diff --git a/modules/vulnerabilities/unix/ctf/python2_challenge_example/secgen_metadata.xml b/modules/vulnerabilities/unix/ctf/example/python2_challenge_example/secgen_metadata.xml
similarity index 100%
rename from modules/vulnerabilities/unix/ctf/python2_challenge_example/secgen_metadata.xml
rename to modules/vulnerabilities/unix/ctf/example/python2_challenge_example/secgen_metadata.xml
diff --git a/modules/vulnerabilities/unix/ctf/python3_challenge_example/manifests/install.pp b/modules/vulnerabilities/unix/ctf/example/python3_challenge_example/manifests/install.pp
similarity index 100%
rename from modules/vulnerabilities/unix/ctf/python3_challenge_example/manifests/install.pp
rename to modules/vulnerabilities/unix/ctf/example/python3_challenge_example/manifests/install.pp
diff --git a/modules/vulnerabilities/unix/ctf/python3_challenge_example/python3_challenge_example.pp b/modules/vulnerabilities/unix/ctf/example/python3_challenge_example/python3_challenge_example.pp
similarity index 100%
rename from modules/vulnerabilities/unix/ctf/python3_challenge_example/python3_challenge_example.pp
rename to modules/vulnerabilities/unix/ctf/example/python3_challenge_example/python3_challenge_example.pp
diff --git a/modules/vulnerabilities/unix/ctf/python3_challenge_example/secgen_metadata.xml b/modules/vulnerabilities/unix/ctf/example/python3_challenge_example/secgen_metadata.xml
similarity index 100%
rename from modules/vulnerabilities/unix/ctf/python3_challenge_example/secgen_metadata.xml
rename to modules/vulnerabilities/unix/ctf/example/python3_challenge_example/secgen_metadata.xml
diff --git a/modules/vulnerabilities/unix/ctf/ruby_challenge_example/manifests/install.pp b/modules/vulnerabilities/unix/ctf/example/ruby_challenge_example/manifests/install.pp
similarity index 100%
rename from modules/vulnerabilities/unix/ctf/ruby_challenge_example/manifests/install.pp
rename to modules/vulnerabilities/unix/ctf/example/ruby_challenge_example/manifests/install.pp
diff --git a/modules/vulnerabilities/unix/ctf/ruby_challenge_example/ruby_challenge_example.pp b/modules/vulnerabilities/unix/ctf/example/ruby_challenge_example/ruby_challenge_example.pp
similarity index 100%
rename from modules/vulnerabilities/unix/ctf/ruby_challenge_example/ruby_challenge_example.pp
rename to modules/vulnerabilities/unix/ctf/example/ruby_challenge_example/ruby_challenge_example.pp
diff --git a/modules/vulnerabilities/unix/ctf/ruby_challenge_example/secgen_metadata.xml b/modules/vulnerabilities/unix/ctf/example/ruby_challenge_example/secgen_metadata.xml
similarity index 100%
rename from modules/vulnerabilities/unix/ctf/ruby_challenge_example/secgen_metadata.xml
rename to modules/vulnerabilities/unix/ctf/example/ruby_challenge_example/secgen_metadata.xml
diff --git a/modules/vulnerabilities/unix/ctf/hidden_file/hidden_file.pp b/modules/vulnerabilities/unix/ctf/misc/hidden_file/hidden_file.pp
similarity index 100%
rename from modules/vulnerabilities/unix/ctf/hidden_file/hidden_file.pp
rename to modules/vulnerabilities/unix/ctf/misc/hidden_file/hidden_file.pp
diff --git a/modules/vulnerabilities/unix/ctf/hidden_file/manifests/install.pp b/modules/vulnerabilities/unix/ctf/misc/hidden_file/manifests/install.pp
similarity index 100%
rename from modules/vulnerabilities/unix/ctf/hidden_file/manifests/install.pp
rename to modules/vulnerabilities/unix/ctf/misc/hidden_file/manifests/install.pp
diff --git a/modules/vulnerabilities/unix/ctf/hidden_file/secgen_metadata.xml b/modules/vulnerabilities/unix/ctf/misc/hidden_file/secgen_metadata.xml
similarity index 99%
rename from modules/vulnerabilities/unix/ctf/hidden_file/secgen_metadata.xml
rename to modules/vulnerabilities/unix/ctf/misc/hidden_file/secgen_metadata.xml
index b50d124a8..7cf7e5290 100644
--- a/modules/vulnerabilities/unix/ctf/hidden_file/secgen_metadata.xml
+++ b/modules/vulnerabilities/unix/ctf/misc/hidden_file/secgen_metadata.xml
@@ -17,7 +17,6 @@
misc
information_gathering
-
challenge_name
leaked_filenames
strings_to_leak
diff --git a/modules/vulnerabilities/unix/ctf/hidden_file/templates/Crackme.java.erb b/modules/vulnerabilities/unix/ctf/misc/hidden_file/templates/Crackme.java.erb
similarity index 100%
rename from modules/vulnerabilities/unix/ctf/hidden_file/templates/Crackme.java.erb
rename to modules/vulnerabilities/unix/ctf/misc/hidden_file/templates/Crackme.java.erb
diff --git a/modules/vulnerabilities/unix/system/ssh_leaked_keys/manifests/account.pp b/modules/vulnerabilities/unix/ctf/pwn/ssh_leaked_keys/manifests/account.pp
similarity index 100%
rename from modules/vulnerabilities/unix/system/ssh_leaked_keys/manifests/account.pp
rename to modules/vulnerabilities/unix/ctf/pwn/ssh_leaked_keys/manifests/account.pp
diff --git a/modules/vulnerabilities/unix/system/ssh_leaked_keys/manifests/init.pp b/modules/vulnerabilities/unix/ctf/pwn/ssh_leaked_keys/manifests/init.pp
similarity index 100%
rename from modules/vulnerabilities/unix/system/ssh_leaked_keys/manifests/init.pp
rename to modules/vulnerabilities/unix/ctf/pwn/ssh_leaked_keys/manifests/init.pp
diff --git a/modules/vulnerabilities/unix/system/ssh_leaked_keys/secgen_metadata.xml b/modules/vulnerabilities/unix/ctf/pwn/ssh_leaked_keys/secgen_metadata.xml
similarity index 100%
rename from modules/vulnerabilities/unix/system/ssh_leaked_keys/secgen_metadata.xml
rename to modules/vulnerabilities/unix/ctf/pwn/ssh_leaked_keys/secgen_metadata.xml
diff --git a/modules/vulnerabilities/unix/system/ssh_leaked_keys/ssh_leaked_keys.pp b/modules/vulnerabilities/unix/ctf/pwn/ssh_leaked_keys/ssh_leaked_keys.pp
similarity index 100%
rename from modules/vulnerabilities/unix/system/ssh_leaked_keys/ssh_leaked_keys.pp
rename to modules/vulnerabilities/unix/ctf/pwn/ssh_leaked_keys/ssh_leaked_keys.pp
diff --git a/modules/vulnerabilities/unix/system/symlinks/files/prompt.c b/modules/vulnerabilities/unix/ctf/pwn/symlinks/files/prompt.c
similarity index 100%
rename from modules/vulnerabilities/unix/system/symlinks/files/prompt.c
rename to modules/vulnerabilities/unix/ctf/pwn/symlinks/files/prompt.c
diff --git a/modules/vulnerabilities/unix/system/symlinks/manifests/account.pp b/modules/vulnerabilities/unix/ctf/pwn/symlinks/manifests/account.pp
similarity index 100%
rename from modules/vulnerabilities/unix/system/symlinks/manifests/account.pp
rename to modules/vulnerabilities/unix/ctf/pwn/symlinks/manifests/account.pp
diff --git a/modules/vulnerabilities/unix/system/symlinks/manifests/init.pp b/modules/vulnerabilities/unix/ctf/pwn/symlinks/manifests/init.pp
similarity index 100%
rename from modules/vulnerabilities/unix/system/symlinks/manifests/init.pp
rename to modules/vulnerabilities/unix/ctf/pwn/symlinks/manifests/init.pp
diff --git a/modules/vulnerabilities/unix/system/symlinks/secgen_metadata.xml b/modules/vulnerabilities/unix/ctf/pwn/symlinks/secgen_metadata.xml
similarity index 100%
rename from modules/vulnerabilities/unix/system/symlinks/secgen_metadata.xml
rename to modules/vulnerabilities/unix/ctf/pwn/symlinks/secgen_metadata.xml
diff --git a/modules/vulnerabilities/unix/system/symlinks/symlinks.pp b/modules/vulnerabilities/unix/ctf/pwn/symlinks/symlinks.pp
similarity index 100%
rename from modules/vulnerabilities/unix/system/symlinks/symlinks.pp
rename to modules/vulnerabilities/unix/ctf/pwn/symlinks/symlinks.pp
diff --git a/modules/vulnerabilities/unix/system/two_shell_calls/files/shell.c b/modules/vulnerabilities/unix/ctf/pwn/two_shell_calls/files/shell.c
similarity index 100%
rename from modules/vulnerabilities/unix/system/two_shell_calls/files/shell.c
rename to modules/vulnerabilities/unix/ctf/pwn/two_shell_calls/files/shell.c
diff --git a/modules/vulnerabilities/unix/system/two_shell_calls/manifests/account.pp b/modules/vulnerabilities/unix/ctf/pwn/two_shell_calls/manifests/account.pp
similarity index 100%
rename from modules/vulnerabilities/unix/system/two_shell_calls/manifests/account.pp
rename to modules/vulnerabilities/unix/ctf/pwn/two_shell_calls/manifests/account.pp
diff --git a/modules/vulnerabilities/unix/system/two_shell_calls/manifests/init.pp b/modules/vulnerabilities/unix/ctf/pwn/two_shell_calls/manifests/init.pp
similarity index 100%
rename from modules/vulnerabilities/unix/system/two_shell_calls/manifests/init.pp
rename to modules/vulnerabilities/unix/ctf/pwn/two_shell_calls/manifests/init.pp
diff --git a/modules/vulnerabilities/unix/system/two_shell_calls/secgen_metadata.xml b/modules/vulnerabilities/unix/ctf/pwn/two_shell_calls/secgen_metadata.xml
similarity index 100%
rename from modules/vulnerabilities/unix/system/two_shell_calls/secgen_metadata.xml
rename to modules/vulnerabilities/unix/ctf/pwn/two_shell_calls/secgen_metadata.xml
diff --git a/modules/vulnerabilities/unix/system/two_shell_calls/two_shell_calls.pp b/modules/vulnerabilities/unix/ctf/pwn/two_shell_calls/two_shell_calls.pp
similarity index 100%
rename from modules/vulnerabilities/unix/system/two_shell_calls/two_shell_calls.pp
rename to modules/vulnerabilities/unix/ctf/pwn/two_shell_calls/two_shell_calls.pp
diff --git a/modules/vulnerabilities/unix/ctf/defcon_quals_2016/dc16_amadhj/dc16_amadhj.pp b/modules/vulnerabilities/unix/ctf/reverse/binary/defcon_quals_2016/dc16_amadhj/dc16_amadhj.pp
similarity index 100%
rename from modules/vulnerabilities/unix/ctf/defcon_quals_2016/dc16_amadhj/dc16_amadhj.pp
rename to modules/vulnerabilities/unix/ctf/reverse/binary/defcon_quals_2016/dc16_amadhj/dc16_amadhj.pp
diff --git a/modules/vulnerabilities/unix/ctf/defcon_quals_2016/dc16_amadhj/files/Makefile b/modules/vulnerabilities/unix/ctf/reverse/binary/defcon_quals_2016/dc16_amadhj/files/Makefile
similarity index 100%
rename from modules/vulnerabilities/unix/ctf/defcon_quals_2016/dc16_amadhj/files/Makefile
rename to modules/vulnerabilities/unix/ctf/reverse/binary/defcon_quals_2016/dc16_amadhj/files/Makefile
diff --git a/modules/vulnerabilities/unix/ctf/defcon_quals_2016/dc16_amadhj/files/amadhj.c b/modules/vulnerabilities/unix/ctf/reverse/binary/defcon_quals_2016/dc16_amadhj/files/amadhj.c
similarity index 100%
rename from modules/vulnerabilities/unix/ctf/defcon_quals_2016/dc16_amadhj/files/amadhj.c
rename to modules/vulnerabilities/unix/ctf/reverse/binary/defcon_quals_2016/dc16_amadhj/files/amadhj.c
diff --git a/modules/vulnerabilities/unix/ctf/defcon_quals_2016/dc16_amadhj/manifests/install.pp b/modules/vulnerabilities/unix/ctf/reverse/binary/defcon_quals_2016/dc16_amadhj/manifests/install.pp
similarity index 100%
rename from modules/vulnerabilities/unix/ctf/defcon_quals_2016/dc16_amadhj/manifests/install.pp
rename to modules/vulnerabilities/unix/ctf/reverse/binary/defcon_quals_2016/dc16_amadhj/manifests/install.pp
diff --git a/modules/vulnerabilities/unix/ctf/defcon_quals_2016/dc16_amadhj/secgen_metadata.xml b/modules/vulnerabilities/unix/ctf/reverse/binary/defcon_quals_2016/dc16_amadhj/secgen_metadata.xml
similarity index 100%
rename from modules/vulnerabilities/unix/ctf/defcon_quals_2016/dc16_amadhj/secgen_metadata.xml
rename to modules/vulnerabilities/unix/ctf/reverse/binary/defcon_quals_2016/dc16_amadhj/secgen_metadata.xml
diff --git a/modules/vulnerabilities/unix/ctf/defcon_quals_2016/dc16_b3s23/dc16_b3s23.pp b/modules/vulnerabilities/unix/ctf/reverse/binary/defcon_quals_2016/dc16_b3s23/dc16_b3s23.pp
similarity index 100%
rename from modules/vulnerabilities/unix/ctf/defcon_quals_2016/dc16_b3s23/dc16_b3s23.pp
rename to modules/vulnerabilities/unix/ctf/reverse/binary/defcon_quals_2016/dc16_b3s23/dc16_b3s23.pp
diff --git a/modules/vulnerabilities/unix/ctf/defcon_quals_2016/dc16_b3s23/files/Makefile b/modules/vulnerabilities/unix/ctf/reverse/binary/defcon_quals_2016/dc16_b3s23/files/Makefile
similarity index 100%
rename from modules/vulnerabilities/unix/ctf/defcon_quals_2016/dc16_b3s23/files/Makefile
rename to modules/vulnerabilities/unix/ctf/reverse/binary/defcon_quals_2016/dc16_b3s23/files/Makefile
diff --git a/modules/vulnerabilities/unix/ctf/defcon_quals_2016/dc16_b3s23/files/b3s23.c b/modules/vulnerabilities/unix/ctf/reverse/binary/defcon_quals_2016/dc16_b3s23/files/b3s23.c
similarity index 100%
rename from modules/vulnerabilities/unix/ctf/defcon_quals_2016/dc16_b3s23/files/b3s23.c
rename to modules/vulnerabilities/unix/ctf/reverse/binary/defcon_quals_2016/dc16_b3s23/files/b3s23.c
diff --git a/modules/vulnerabilities/unix/ctf/defcon_quals_2016/dc16_b3s23/files/config b/modules/vulnerabilities/unix/ctf/reverse/binary/defcon_quals_2016/dc16_b3s23/files/config
similarity index 100%
rename from modules/vulnerabilities/unix/ctf/defcon_quals_2016/dc16_b3s23/files/config
rename to modules/vulnerabilities/unix/ctf/reverse/binary/defcon_quals_2016/dc16_b3s23/files/config
diff --git a/modules/vulnerabilities/unix/ctf/defcon_quals_2016/dc16_b3s23/manifests/install.pp b/modules/vulnerabilities/unix/ctf/reverse/binary/defcon_quals_2016/dc16_b3s23/manifests/install.pp
similarity index 100%
rename from modules/vulnerabilities/unix/ctf/defcon_quals_2016/dc16_b3s23/manifests/install.pp
rename to modules/vulnerabilities/unix/ctf/reverse/binary/defcon_quals_2016/dc16_b3s23/manifests/install.pp
diff --git a/modules/vulnerabilities/unix/ctf/defcon_quals_2016/dc16_b3s23/secgen_metadata.xml b/modules/vulnerabilities/unix/ctf/reverse/binary/defcon_quals_2016/dc16_b3s23/secgen_metadata.xml
similarity index 100%
rename from modules/vulnerabilities/unix/ctf/defcon_quals_2016/dc16_b3s23/secgen_metadata.xml
rename to modules/vulnerabilities/unix/ctf/reverse/binary/defcon_quals_2016/dc16_b3s23/secgen_metadata.xml
diff --git a/modules/vulnerabilities/unix/ctf/defcon_quals_2016/dc16_feedme/dc16_feedme.pp b/modules/vulnerabilities/unix/ctf/reverse/binary/defcon_quals_2016/dc16_feedme/dc16_feedme.pp
similarity index 100%
rename from modules/vulnerabilities/unix/ctf/defcon_quals_2016/dc16_feedme/dc16_feedme.pp
rename to modules/vulnerabilities/unix/ctf/reverse/binary/defcon_quals_2016/dc16_feedme/dc16_feedme.pp
diff --git a/modules/vulnerabilities/unix/ctf/defcon_quals_2016/dc16_feedme/files/Makefile b/modules/vulnerabilities/unix/ctf/reverse/binary/defcon_quals_2016/dc16_feedme/files/Makefile
similarity index 100%
rename from modules/vulnerabilities/unix/ctf/defcon_quals_2016/dc16_feedme/files/Makefile
rename to modules/vulnerabilities/unix/ctf/reverse/binary/defcon_quals_2016/dc16_feedme/files/Makefile
diff --git a/modules/vulnerabilities/unix/ctf/defcon_quals_2016/dc16_feedme/files/main.c b/modules/vulnerabilities/unix/ctf/reverse/binary/defcon_quals_2016/dc16_feedme/files/main.c
similarity index 100%
rename from modules/vulnerabilities/unix/ctf/defcon_quals_2016/dc16_feedme/files/main.c
rename to modules/vulnerabilities/unix/ctf/reverse/binary/defcon_quals_2016/dc16_feedme/files/main.c
diff --git a/modules/vulnerabilities/unix/ctf/defcon_quals_2016/dc16_feedme/files/strip_all b/modules/vulnerabilities/unix/ctf/reverse/binary/defcon_quals_2016/dc16_feedme/files/strip_all
similarity index 100%
rename from modules/vulnerabilities/unix/ctf/defcon_quals_2016/dc16_feedme/files/strip_all
rename to modules/vulnerabilities/unix/ctf/reverse/binary/defcon_quals_2016/dc16_feedme/files/strip_all
diff --git a/modules/vulnerabilities/unix/ctf/defcon_quals_2016/dc16_feedme/manifests/install.pp b/modules/vulnerabilities/unix/ctf/reverse/binary/defcon_quals_2016/dc16_feedme/manifests/install.pp
similarity index 100%
rename from modules/vulnerabilities/unix/ctf/defcon_quals_2016/dc16_feedme/manifests/install.pp
rename to modules/vulnerabilities/unix/ctf/reverse/binary/defcon_quals_2016/dc16_feedme/manifests/install.pp
diff --git a/modules/vulnerabilities/unix/ctf/defcon_quals_2016/dc16_feedme/secgen_metadata.xml b/modules/vulnerabilities/unix/ctf/reverse/binary/defcon_quals_2016/dc16_feedme/secgen_metadata.xml
similarity index 100%
rename from modules/vulnerabilities/unix/ctf/defcon_quals_2016/dc16_feedme/secgen_metadata.xml
rename to modules/vulnerabilities/unix/ctf/reverse/binary/defcon_quals_2016/dc16_feedme/secgen_metadata.xml
diff --git a/modules/vulnerabilities/unix/ctf/java/java_decompile/java_decompile.pp b/modules/vulnerabilities/unix/ctf/reverse/java/java_decompile/java_decompile.pp
similarity index 100%
rename from modules/vulnerabilities/unix/ctf/java/java_decompile/java_decompile.pp
rename to modules/vulnerabilities/unix/ctf/reverse/java/java_decompile/java_decompile.pp
diff --git a/modules/vulnerabilities/unix/ctf/java/java_decompile/manifests/install.pp b/modules/vulnerabilities/unix/ctf/reverse/java/java_decompile/manifests/install.pp
similarity index 100%
rename from modules/vulnerabilities/unix/ctf/java/java_decompile/manifests/install.pp
rename to modules/vulnerabilities/unix/ctf/reverse/java/java_decompile/manifests/install.pp
diff --git a/modules/vulnerabilities/unix/ctf/java/java_decompile/secgen_metadata.xml b/modules/vulnerabilities/unix/ctf/reverse/java/java_decompile/secgen_metadata.xml
similarity index 100%
rename from modules/vulnerabilities/unix/ctf/java/java_decompile/secgen_metadata.xml
rename to modules/vulnerabilities/unix/ctf/reverse/java/java_decompile/secgen_metadata.xml
diff --git a/modules/vulnerabilities/unix/ctf/java/java_decompile/templates/Crackme.java.erb b/modules/vulnerabilities/unix/ctf/reverse/java/java_decompile/templates/Crackme.java.erb
similarity index 100%
rename from modules/vulnerabilities/unix/ctf/java/java_decompile/templates/Crackme.java.erb
rename to modules/vulnerabilities/unix/ctf/reverse/java/java_decompile/templates/Crackme.java.erb