# You are not allowed
#### Category : Reverse engineering#### Points : 100 (242 solves)
## ChallengeCan you reverse this program and get us the flag?
Flag format: flag{string}
Attachment : program
## SolutionUsing file command on this binary, we see that it is a stripped binary.
Opening this binary in ghidra and going to the `entry` function, the first parameter of `__libc_start_main` is the main function. 
![](https://github.com/p1xxxel/ctf-writeups/blob/main/2021/RCTS%20CERT%202021/You%20are%20not%20allowed/finding_main.png)
Double clicking it, we get the main function.
![](https://github.com/p1xxxel/ctf-writeups/blob/main/2021/RCTS%20CERT%202021/You%20are%20not%20allowed/main_func.png)
So it is taking input from the user and then comparing it with a secret key generated by `FUN_00401242`.
Taking a look at this function,
![](https://github.com/p1xxxel/ctf-writeups/blob/main/2021/RCTS%20CERT%202021/You%20are%20not%20allowed/key_gen.png)
So we just need to convert the integer into char and we will get the secret key which we can then enter to get the flag.
The key obtained from this is `Sup3rS3cr3tK3y#`
Entering this, we get the flag
![](https://github.com/p1xxxel/ctf-writeups/blob/main/2021/RCTS%20CERT%202021/You%20are%20not%20allowed/getting_flag.png)
So the flag is `flag{1ntr0_t0_r3v3rs3_3ng1n33r1ng}`