Jump to content
YOUR-AD-HERE
HOSTING
TOOLS
SERVICE

Search the Community

Showing results for tags 'shellcode'.

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Staff Control
    • Staff Announcements
  • General doubts | News
    • General doubts
    • News
  • Hacking | Remote Administration | Bugs & Exploits
    • Hacking
    • Remote Administration
    • Bugs & Exploits
  • Programming | Web | SEO | Prefabricated applications
    • General Programming
    • Web Programming
    • Prefabricated Applications
    • SEO
  • Pentesting Zone
    • Pentesting Accounts
    • Reverse Engineering
  • Security & Anonymity
    • Security
    • Wireless Security
    • Web Security
    • Anonymity
  • Operating Systems | Hardware | Programs
    • Operating systems
    • Hardware
    • PC programs
    • iOS
    • Android
  • Graphic Design
    • Graphic Design
  • vBCms Comments
  • live stream tv
    • live stream tv
  • Marketplace
    • Sell
    • Services
    • Request
  • Pentesting Premium
    • Pentesting Accounts
  • Modders Section
    • Source Codes
    • Manuals | Videos
    • Tools
    • Others
  • PRIV8-Section
    • Exploits
    • Accounts|Dumps
    • Crypter|Binder|Bots
    • Tutorials|Videos
    • Cracked Tools
    • Make Money
    • More Tools
    • Databeses
    • Ebooks
  • Pentesting Zone PRIV8
    • Pentesting Accounts
    • Reverse Engineering
    • Cracker Preview Area
  • Carding Zone PRIV8
    • Carding
    • Phishing
    • Defacing
    • Doxing
    • Special User Premium Preview Area
  • Recycle Bin
    • Recycle
  • Null3D's Nulled Group

Product Groups

  • PRIV8
  • Advertising
  • Access Basic
  • Seller
  • Services

Categories

  • Files
  • Online Book
  • Services

Categories

  • Hacking

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


About Me

  1. SHAREM is intended to be the ultimate Windows shellcode tool, with support to emulate over 12,000 WinAPIs, virtually all user-mode Windows syscalls, and SHAREM provides numerous new features. SHAREM was released on September 29, 2022, at Virus Bulletin, the top malware conference globally. SHAREM contains an emulator, a disassembler, timeless debugging, brute-force deobfuscation, and many other features. SHAREM’s emulator can also display complete structures (or even structures within structures) and it can allow encoded shellcode to deobfuscate itself. SHAREM logs output from all WinAPIs and Windows syscalls analyzed, and it also breaks each into many categories and subcategories. SHAREM’s complete code coverage also allows it to discover unreachable functionality. SHAREM’s disassembler is able to integrate discovered functions into the disassembly, labeling each in the disassembler. SHAREM also will display the decrypted form of the encoded shellcode in the disassembler, so it is not necessary to debug the shellcode. [hide][Hidden Content]]
  2. laZzzy is a shellcode loader that demonstrates different execution techniques commonly employed by malware. laZzzy was developed using different open-source header-only libraries. Features Direct syscalls and native (Nt*) functions (not all functions but most) Import Address Table (IAT) evasion Encrypted payload (XOR and AES) Randomly generated key Automatic padding (if necessary) of payload with NOPS (\x90) Byte-by-byte in-memory decryption of the payload XOR-encrypted strings PPID spoofing Blocking of non-Microsoft-signed DLLs (Optional) Cloning of PE icon and attributes (Optional) Code signing with spoofed cert [hide][Hidden Content]]
  3. MD5-Monomorphic Shellcode Packer – all payloads have the same MD5 hash What does it do? It packs up to 4KB of compressed shellcode into an executable binary, near-instantly. The output file will always have the same MD5 hash: 3cebbe60d91ce760409bbe513593e401 Currently, only Linux x86-64 is supported. It would be trivial to port this technique to other platforms, although each version would end up with a different MD5. It would also be possible to use a multi-platform polyglot file like APE. Example usage: $ python3 monomorph.py bin/monomorph.linux.x86-64.benign bin/monomorph.linux.x86-64.meterpreter sample_payloads/bin/linux.x64.meterpreter.bind_tcp.bin How does it work? For every bit we want to encode, a colliding MD5 block has been pre-calculated using FastColl. As summarised here, each collision gives us a pair of blocks that we can swap out without changing the overall MD5 hash. The loader checks which block was chosen at runtime, to decode the bit. To encode 4KB of data, we need to generate 4*1024*8 collisions (which takes a few hours), taking up 4MB of space in the final file. To speed this up, I made some small tweaks to FastColl to make it even faster in practice, enabling it to be run in parallel. I’m sure there are smarter ways to parallelise it, but my naive approach is to start N instances simultaneously and wait for the first one to complete, then kill all the others. Since I’ve already done the pre-computation, reconfiguring the payload can be done near-instantly. Swapping the state of the pre-computed blocks is done using a technique implemented by Ange Albertini. Is it detectable? Yes. It’s not very stealthy at all, nor does it try to be. You can detect the collision blocks using detectcoll. Download [hide][Hidden Content]]
  4. The more predictable you are, the less you get detected A technique of hiding malicious shellcode based on low-entropy via Shannon encoding. Entropy is the measure of the randomness in a set of data (here: shellcode). The higher the entropy, the more random the data is. Shannon Entropy is an algorithm that will produce a result between 0 and 8, where 8 means there is no pattern in the data, thereby it's very random and 0 means data follows a pattern. [hide][Hidden Content]]
  5. Converts PE so that it can be then injected just like a normal shellcode. (At the same time, the output file remains to be a valid PE). Supports both 32 and 64-bit PEs Objective: The goal of this project is to provide a possibility to generate PE files that can be injected with minimal effort. It is inspired by Stephen Fewer’s ReflectiveDLLInjection – but the difference is that with pe2shc you can add the reflective loading stub post-compilation. Also, the header of the PE file is modified in such a way, that you can start executing the injected buffer from the very beginning – just like you would do with a shellcode. It will automatically find the stub and continue loading the full PE. Changelog v1.1 BUGFIX Stub cleanup: do not clobber RBX/EBX registers REFACT Removed some useless instructions from 32 bit stub Small cleanup in the loader v2 The package contains: pe2shc.exe – PE to shellcode converter (supports both 32 and 64 bit PEs) a utility to run/test shellcode (loads and deploys): runshc32.exe – for 32-bit shellcodes runshc64.exe – for 64-bit shellcodes a utility to inject shellcode into a given process: injector32.exe – for 32-bit shellcodes injector64.exe – for 64-bit shellcodes [hide][Hidden Content]]
  6. Converts PE so that it can be then injected just like a normal shellcode. (At the same time, the output file remains to be a valid PE). Supports both 32 and 64-bit PEs Objective: The goal of this project is to provide a possibility to generate PE files that can be injected with minimal effort. It is inspired by Stephen Fewer’s ReflectiveDLLInjection – but the difference is that with pe2shc you can add the reflective loading stub post-compilation. Also, the header of the PE file is modified in such a way, that you can start executing the injected buffer from the very beginning – just like you would do with a shellcode. It will automatically find the stub and continue loading the full PE. Changelog v1.0 FEATURE Added new loaders (old loaders still available with a CMake option), containing: improved stability of the 64 bit loader support for the executables with TLS callbacks (callbacks are run before the Entry Point) support DLLs (DllMain is run cleanly) fixed preserving return values The shellcode runner (runshc) checks if the payload has compatibile bitness The package contains: pe2shc.exe – PE to shellcode converter (supports both 32 and 64 bit PEs) a utility to run/test shellcode (loads and deploys): runshc32.exe – for 32-bit shellcodes runshc64.exe – for 64-bit shellcodes a utility to inject shellcode into a given process: injector32.exe – for 32-bit shellcodes injector64.exe – for 64-bit shellcodes [hide][Hidden Content]]
  7. NimPackt is a Nim-based packer for .NET (C#) executables and shellcode targeting Windows. It automatically wraps the payload in a Nim binary that is compiled to Native C and as such harder to detect and reverse engineer. There are two main execution methods: Execute-Assembly re-packs a .NET executable and runs it, optionally applying evasive measures such as API unhooking, AMSI patching, or disabling ETW. Shinject takes raw a .bin file with raw, position-independent shellcode and executes it locally or in a remote process, optionally using direct syscalls to trigger the shellcode or patching API hooks to evade EDR. Currently, NimPackt has the following features. Uses static syscalls to patch execute to evade EDR Unhooks user-mode APIs for the spawned thread by refreshing NTDLL.dll using ShellyCoat Patches Event Tracing for Windows (ETW) Patches the Anti-Malware Scan Interface (AMSI) AES-encrypts payload with a random key to preventing static analysis or fingerprinting Compiles to exe or dll Supports cross-platform compilation (from both Linux and Windows) Integrates with CobaltStrike for ezpz payload generation 😎 A great source for C#-based binaries for offensive tooling can be found here. It is highly recommended to compile the C# binaries yourself. Even though embedded binaries are encrypted, you should obfuscate sensitive binaries (such as Mimikatz) to lower the risk of detection. [hide][Hidden Content]]
  8. Shellcode Template An easily modifiable shellcode template for Windows x64/x86 How does it work? This template is heavily based on Austin Hudson’s (aka SecIdiot) TitanLdr It compiles the project into a PE Executable and extracts the .text section. Example The entrypoint of the shellcode looks like this. Of course, this can be changed for your need. First, we need to initialize needed libraries and functions by using our custom written GetModuleHandle and GetProcAddress. [hide][Hidden Content]]
  9. PELoader implement various shellcode injection techniques, and use libpeconv library to load encrypted PE files instead of injecting shellcode into remote thread. Following techniques were implemented: Module Stomping (LoadLibrary) Module Stomping (NtMapViewOfSection) Transacted Hollowing Ghostly Hollowing NtMapViewOfSection (RWX-RW-RX) NtAllocateVirtualMemory (RW-RX) Credits: most of my work was based on @hasherezade's PoC scripts. [hide][Hidden Content]]
  10. Bluffy is a utility which was used in experiments to bypass Anti-Virus products (statically) by formatting shellcode into realistic looking data formats. Proof-of-concept tools, such as 0xBoku's Ninja_UUID_Runner and ChoiSG's UuidShellcodeExec, inspired the initial concept for Bluffy. So far, we implemented: UUID CLSID SVG CSS CSV [hide][Hidden Content]]
  11. Bluffy is a utility which was used in experiments to bypass Anti-Virus products (statically) by formatting shellcode into realistic-looking data formats. So far, we implemented: UUID CLSID SVG CSS CSV [hide][Hidden Content]]
  12. A simple shellcode encryptor/decryptor/executor to bypass anti-virus. [hide][Hidden Content]]
  13. Jektor Toolkit v1.0 This utility focuses on shellcode injection techniques to demonstrate methods that malware may use to execute shellcode on a victim system Dynamically resolves API functions to evade IAT inclusion Includes usage of undocumented NT Windows API functions Supports local shellcode execution via CreateThread Supports remote shellcode execution via CreateRemoteThread Supports local shellcode injection via QueueUserAPC Supports local shellcode injection via EnumTimeFormatsEx Supports local shellcode injection via CreateFiber [hide][Hidden Content]]
  14. Open-Source Shellcode & PE Packer [hide][Hidden Content]]
  15. Beaconator is an aggressor script for Cobalt Strike used to generate either staged or stageless shellcode and packing the generated shellcode using your tool of choice Currently, it supports the following tools: Staged Beacon Generator Alaris: Alaris is a new and sneaky shellcode loader capable of bypassing most EDR systems as of today (02/28/2021). It uses several known TTP’s that help protect the malware and it’s execution flow. Stageless Beacon Generator PEzor: Open-Source Shellcode & PE Packer ScareCrow: ScareCrow is a payload creation framework for sideloading (not injecting) into a legitimate Windows process (bypassing Application Whitelisting controls). Once the DLL loader is loaded into memory, it utilizes a technique to flush an EDR’s hook out of the system DLLs running in the process’s memory. This works because we know the EDR’s hooks are placed when a process is spawned. ScareCrow can target these DLLs and manipulate them in memory by using the API function VirtualProtect, which changes a section of a process’ memory permissions to a different value, specifically from Execute–Read to Read-Write-Execute. [hide][Hidden Content]]
  16. go-shellcode is a repository of Windows Shellcode runners and supporting utilities. The applications load and execute Shellcode using various API calls or techniques. [hide][Hidden Content]]
  17. Sharperner is a tool written in CSharp that generate .NET dropper with AES and XOR obfuscated shellcode. Generated executable can possibly bypass signature check but I cant be sure it can bypass heuristic scanning. Features PE binary Process Hollowing PPID Spoofing Random generated AES key and iv Final Shellcode, Key and IV are translated to morse code :) .NET binary AES + XOR encrypted shellcode APC Process Injection (explorer.exe) Random function names Random generated AES key and iv Final Shellcode, Key and IV are translated to morse code :) [hide][Hidden Content]]
  18. Sharperner Sharperner is a tool written in CSharp that generates a .NET dropper with AES and XOR obfuscated shellcode. A generated executable can possibly bypass signature check but I can’t be sure it can bypass heuristic scanning. Features PE binary Process Hollowing PPID Spoofing Random generated AES key and iv Final Shellcode, Key, and IV are translated to morse code 🙂 .NET binary AES + XOR encrypted shellcode APC Process Injection (explorer.exe) Random function names Random generated AES key and iv Final Shellcode, Key, and IV are translated to morse code 🙂 [hide][Hidden Content]]
  19. HatVenom HatSploit native powerful payload generation and shellcode injection tool that provides support for common platforms and architectures. Features Support for most common executable formats like elf, macho, pe. Support for most common architectures like x64, x86, aarch64, armle, mipsle, mipsbe. Ability to modify shellcode by changing pre-defined offsets. Basic functions There are all HatVenom basic functions that can be used to generate a payload, covert data, or inject shellcode. ip_bytes(ip) – Converts IP address to bytes allowed by the shellcode. port_bytes(port) – Converts numeric port to bytes allowed by the shellcode. string_bytes(string) – Converts a string to bytes allowed by the shellcode. generate(file_format, arch, shellcode, offsets={}) – Generates payload for specified target and with specified shellcode. generate_to(file_format, arch, shellcode, offsets={}, filename=’a.out’) – Generates payload for specified target and with specified shellcode and saves it to the specified file. [hide][Hidden Content]]
  20. Converts PE so that it can be then injected just like a normal shellcode. (At the same time, the output file remains to be a valid PE). Supports both 32 and 64-bit PEs Objective: The goal of this project is to provide a possibility to generate PE files that can be injected with minimal effort. It is inspired by Stephen Fewer’s ReflectiveDLLInjection – but the difference is that with pe2shc you can add the reflective loading stub post-compilation. Also, the header of the PE file is modified in such a way, that you can start executing the injected buffer from the very beginning – just like you would do with a shellcode. It will automatically find the stub and continue loading the full PE. [hide][Hidden Content]]
  21. Cobalt Strike Shellcode Generator Adds Shellcode – Shellcode Generator to the Cobalt Strike top menu bar CSSG is an aggressor and python script used to more easily generate and format beacon shellcode Generates beacon stageless shellcode with exposed exit method, additional formatting, encryption, encoding, compression, multiline output, etc shellcode transforms are generally performed in descending menu order Options for the shellcode generator are: Listener: Select a valid listener with the “…” button. Shellcode will be generated form this listener selection Delivery: Stageless (Staged not supported for the shellcode generator) Exit Method: process – exits the entire process that beacon is present in when the beacon is closed thread – exits only the thread in which beacon is running when the beacon is closed Local Shellcode Checkbox: May use if you are going to execute the shellcode from an existing Beacon Generates a Beacon shellcode payload that inherits key function pointers from a same-arch parent Beacon Existing Session: The parent Beacon session where the shellcode will pull session metadata Shellcode should be run from within this Beacon session x86 Checkbox: Check to generate x86 shellcode, x64 is generated by default Or Use Shellcode File: Use an externally generated raw shellcode file in lieu of generating Beacon shellcode This allows you to use previously exported shellcode files or output from other tools (Donut, msfvenom, etc) Formatting: raw – raw binary shellcode output, no formatting applied hex – hex formatted shellcode output 0x90,0x90,0x90 – shellcode formatted into a C# style byte array \x90\x90\x90 – shellcode formatted into a C\C++ style byte array b64 – option to base64 encode the shellcode early in the generation process (before any encryption) XOR Encrypt Shellcode Checkbox: Check to XOR encrypt the shellcode (only one encryption type can be selected at a time) XOR Key(s): Randomly generated and editable XOR key character(s) to use for encryption Multiple characters will result in multiple rounds of XOR encryption (i.e. ABCD) AES Encrypt Shellcode Checkbox: Check to AES encrypt the shellcode (only one encryption type can be selected at a time) Uses a python script to perform AES Block Cipher AES-CBC encryption Shellcode is padded with \0 values to reach block size requirements A randomly generated IV is prepended to the encrypted shellcode data AES Key: Randomly generated and editable AES key to use for encryption 32byte key is generated and preferred for 256bit encryption strength Encryption key byte lengths accepted are 16, 24, and 32 Encoding/Compression: none – No additional encoding or compression is done to the shellcode b64 – base64 encode the shellcode gzip then b64 – gzip compress then base64 the shellcode gzip – gzip compress the shellcode b64 then gzip – base64 then gzip compress the shellcode Multiline Output: Can be used for non-raw/binary output formats none – no multiline formatting, shellcode is one long string quoted – Shellcode is broken up into lines surround by quotation marks chunks.push_back – Shellcode is broken up into lines surrounded by chunks.push_back(” and “); Multiline Length: Number of shellcode characters in each line if a multiline output option is selected Generate Button: Select directory for shellcode output Defalut filename will be beacon but can be changed Any encryption key used will be displayed in a popup and also written the Cobalt Strike Script Console The byte size of the raw beacon shellcode and final formatted beacon shellcode will be displayed in a popup and also written to the Script Console Location of files used to generate/build the shellcode are set the .cs file [hide][Hidden Content]]
  22. What is encryption? In cryptography, encryption is the process of encoding information. This process converts the original representation of the information, known as plaintext, into an alternative form known as ciphertext. Only authorized parties can decipher a ciphertext back to plaintext and access the original information. What is shellcode? Shellcode is a set of instructions that executes a command in the software to take control of or exploit the program. Shellcode can be used to directly manipulate registers and the functionality of an exploited program. Shellcode is commonly written in machine code. What is Obfuscation? Obfuscation is the practice of making something difficult to understand or unintelligible. It is an act to deliberately avoid the attacker/defender to reveal the actual source code. Overview Obfuscator is designed to obfuscate the shellcode. The tool can be used to encrypt the shellcode in XOR or AES encryption. To encrypt the shellcode we can pass the file path argument or the URL from which the tool will download and encrypt the shellcode with specifying encryption format. The tool will use the default key ‘SuperStrongKey’ in case the /key parameter is not specified. The tool accepts the shellcode in 4 formats. 1) C 2) HEX 3) BASE64 4) RAW This tool can be helpful for the operators who want to encrypt the shellcode before using them with the process injection tool. [hide][Hidden Content]]
  23. Version release : v1.0.16 Author : pedro ubuntu [ r00t-3xp10it ] Codename: Aconite (Aconitum napellus) Distros Supported : Linux Ubuntu, Kali, Mint, Parrot OS Suspicious-Shell-Activity (SSA) RedTeam develop [hide][Hidden Content]]
  24. Shellter Shellter is a dynamic shellcode injection tool, and the first truly dynamic PE infector ever created. It can be used in order to inject shellcode into native Windows applications (currently 32-bit applications only). The shellcode can be something yours or something generated through a framework, such as Metasploit. Shellter takes advantage of the original structure of the PE file and doesn’t apply any modification such as changing memory access permissions in sections (unless the user wants), adding an extra section with RWE access, and whatever would look dodgy under an AV scan. Shellter uses a unique dynamic approach which is based on the execution flow of the target application, and this is just the tip of the iceberg. Shellter is not just an EPO infector that tries to find a location to insert an instruction to redirect execution to the payload. Unlike any other infector, Shellter’s advanced infection engine never transfers the execution flow to a code cave or to an added section in the infected PE file. Main Features Compatible with Windows x86/x64 (XP SP3 and above) & Wine/CrossOver for Linux/Mac. Portable – No setup is required. Doesn’t require extra dependencies (python, .net, etc…). No static PE templates, framework wrappers etc… Supports any 32-bit payload (generated either by metasploit or custom ones by the user). Compatible with all types of encoding by metasploit. Compatible with custom encoding created by the user. Stealth Mode – Preserves Original Functionality. Multi-Payload PE infection. Proprietary Encoding + User Defined Encoding Sequence. Dynamic Thread Context Keys. Supports Reflective DLL loaders. Embedded Metasploit Payloads. Junk code Polymorphic engine. Thread context aware Polymorphic engine. User can use custom Polymorphic code of his own. Takes advantage of Dynamic Thread Context information for anti-static analysis. Detects self-modifying code. Traces single and multi-thread applications. Fully dynamic injection locations based on the execution flow. Disassembles and shows to the user available injection points. User chooses what to inject, when, and where. Command Line support. Free Most info: [Hidden Content] Download: [Hidden Content] Source: [Hidden Content]
  25. 0x1

    OWASP ZSC

    OWASP ZSC Tool Project OWASP ZSC is an open source software in Python language which lets you generate customized shellcodes and convert scripts to an obfuscated script. This software can be run on Windows/Linux/OSX under Python. Watch the video to learn how generate shellcode with ZCR Shellcoder. [hide][Hidden Content]] Usage of shellcodes Shellcodes are small codes in Assembly language which could be used as the payload in software exploitation. Other usages are in malwares, bypassing antiviruses, obfuscated codes and etc. DISCLAIMER This tool is related to IT, Hacking, Programming and Computer|Network|Software Security. The word “Hack”, "Pen testing",“Hacking” that is used on these project pages shall be regarded as “Ethical Hack” or “Ethical Hacking” respectively. This is not a tool that provides any illegal information.We do not promote hacking or software cracking. All the information provided on these pages is for educational purposes only. The authors of this tool are not responsible for any misuse of the information.You shall not misuse the information to gain unauthorized access and/or write malicious programs.This information shall only be used to expand knowledge and not for causing malicious or damaging attacks.You may try all of these techniques on your own computer at your own risk.Performing any hack attempts/tests without written permission from the owner of the computer system is illegal. IN NO EVENT SHALL THE CREATORS, OWNER, OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. Usage of Obfuscate Codes Can be used for bypassing antiviruses, code protections, same stuff etc … Why use OWASP ZSC ? Another good reason for obfuscating files or generating shellcode with ZSC is that it can be used during your pen-testing. Malicious hackers use these techniques to bypass anti-virus and load malicious files in systems they have hacked using customized shellcode generators. Anti-virus work with signatures in order to identify harmful files. When using very well known encoders such as msfvenom, files generated by this program might be already flagged by Anti-virus programs. Our purpose is not to provide a way to bypass anti-virus with malicious intentions, instead, we want to provide pen-testers a way to challenge the security provided by Anti-virus programs and Intrusion Detection systems during a pen test.In this way, they can verify the security just as a black-hat will do. According to other shellcode generators same as Metasploit tools and etc, OWASP ZSC using new encodes and methods which antiviruses won't detect. OWASP ZSC encoders are able to generate shell codes with random encodes and that allows you to generate thousands of new dynamic shellcodes with the same job in just a second, that means, you will not get the same code if you use random encodes with same commands, And that make OWASP ZSC one of the best! During the Google Summer of Code we are working on to generate Windows Shellcode and new obfuscation methods. We are working on the next version that will allow you to generate OSX. Video ACSII of the OWASP ZSC tool in action! This video shows: Generating shellcode through the menu interface Generating shellcode from the command-line Using shellcode from the shell-storm web repository Obfuscating a python script Download && more info [hide][Hidden Content]]
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.