Reverse Engineering of The Application. Part 2 (Advanced) ENG
Reverse Engineering of The Application. Part 2 (Advanced) ENG
Reverse engineering of
the application. Part 2
–
Encryption Hashing
Transformations
(The data in the file may be encrypted. (it is possible that the virus uses hash
(data may be changed with XOR or
We need to understand which functions - for example, SHA256 - to
other mathematical operations)
algorithm) verify passwords)
• XOR encryption: data is converted using a key, and the correct input is
compared to the encryption result.
• Hashing: the program can generate a hash of the entered data and
compare it with a previously known hash (e.g. SHA256).
• Multiple checks: in complex cases, checking the flag may involve
multiple stages of data processing and data conversion.
1. Input analysis: first of all, it is necessary to find out how the program
processes user input.
2. Understanding logic: study what functions are called during data
processing and how they interact.
3. Data modification: based on the identified algorithms, reconstruct the
flag or develop a program to generate it.