On this page, the changelog of Gemini is displayed. To avoid confusion: each change is based on the previous released version.
Beta 0.3 [27th of June 2018]
- Rewrote the code-base of Gemini to a plug-in architecture
- Increased usability and support for new languages at a later stage
- Increased stability and code management as things are properly managed
- Function handling
- Increased the required information to output a function to the necessities that are required for any given language
- This more verbose approach will improve the way the function handling works when more modules are added
- Module C
- Added support for shellcode execution on Linux
Beta 0.2 [2nd of May 2017]
- Multi-platform support
- Fixed a bug in which the file separator would be assigned wrongly
- Documentation
- Javadoc has been updated to include the latest changes
- Added inline comments to the code to give an in-depth insight in each function
- Optimised the Java code to prevent the passing of unnecessary variables
- Removed redundant code
- Removed multiple bugs
- Added extra variable names in the sandbox methods
- Improved the algorithm to generate final variable names in the sandbox methods
- Corrected license information in the source code of Gemini
Initial beta release – Beta 0.1 [15th of April 2017]
List of features
- ModuleC
- In the constructor all the necessary variables are initialised
- Every module* file should have a ‘build’ function which accepts a string-array as an argument, this will initiate the creation of the output file
- Generator
- All the instructions that are provided are saved here for later use
- In this file, the headers, shellcode execution and main functions are created
- Anti-virus evasion
- The assembly of the buffers is managed here
- The evasive techniques that are used are managed here
- Sandbox evasion
- All the sandbox checks are managed here
- Virtualisation evasion
- All the virtualisation checks are managed here